LoginSignup
2
2

More than 5 years have passed since last update.

Gradleでbowerを利用したフロントエンドのビルドまでを行う方法 (4/6)

Last updated at Posted at 2016-03-31

はじめに

Java/SparkプロジェクトのGradleを利用したビルド/デプロイについて、私が試したことをまとめたものです。
(ここで言うSparkは、分散処理ライブラリのApache Sparkではなく、JavaのSinatraライクなMicroframeworkのSparkのことです)

目次

  1. Hello Worldアプリ
  2. jadeテンプレートエンジン
  3. Grunt/bowerによるWebパッケージのビルド
  4. 付録A. TravisCIによるビルド
  5. 付録B. Gradleでdocker build
  6. 付録C. TravisCIからDockerHubへ docker push

各章でのソースコードは Commits · kaakaa/gradle-frontend-boilerplate から確認できます。

環境

  • Java 1.8.0_74
  • Gradle 2.12
  • spark-core 2.3
  • spark-template-jade 2.3
  • node.js 4.4.0

付録A. TravisCIによるビルド

概要

GithubへのPushを契機にTravis CIでビルドを実行し、実行バイナリのzip/tarファイルをGithubページへリリースする。

準備

下記を実施しておく。

  • TravisCIのアカウントを作成する
    • Githubのアカウントでサインインできる
  • Profileページから、ビルドを実行するリポジトリを選択しておく
  • travis-ci/travis.rbをインストールする(要Ruby環境)
    • 無くても.travis.ymlを書けば良いのですが、Githubの認証情報などの秘密情報を暗号化するのが楽になります

ビルドスクリプト

プロジェクトのルートで下記travisコマンドを実行し、.travis.ymlというTravis CIのビルド設定ファイルを作成する。

> travis init
> travis setup releases

対話的にプロジェクトの情報を入力していくだけで、.travis.ymlがほぼできあがります。
(自分で.travis.ymlを書いても問題無いです)

.travis.yml
language: java  // (1) - Javaビルドの設定
jdk:
- oraclejdk8
script: "./gradlew build"  // (2) - ビルドコマンド
deploy:  // (3) - デプロイ設定
  provider: releases
  api_key:
    secure: ${GITHUB_TOKEN}
  file:  // (4) - GithubのReleaseページにPushするファイル
    - "./build/distributions/gradle-frontend-boilerplate-1.0-SNAPSHOT.tar"
    - "./build/distributions/gradle-frontend-boilerplate-1.0-SNAPSHOT.zip"
  on:
    repo: kaakaa/gradle-frontend-boilerplate
    tags: true  // (5) - tag付きのコミットのみデプロイが行われるようにする

(1) Javaビルドの設定

travis initコマンドでJavaプロジェクトを選択すると、このように生成される。
デフォルトではJavaのバーージョンにJDK6,7が指定されているのでoraclejdk8にしておく。

(2) ビルドコマンド

Travisで実行するビルドタスク指定する。

(3) デプロイ設定

travis setup releasesコマンドで作成される。

(4) GithubのReleaseページにPushするファイル

ここで指定したファイルが、Githubのリリースページにダウンロードできる形で公開される。
今回は、gradle assembleDistの成果物であるzip/tarファイルがリリースされるようにした。

(5) tag付きのコミットのみデプロイが行われるようにする

Pushするたびにリリースされるのも辛いので、タグ付きコミットのみデプロイが行われるようにする

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2