andock.build
andock-build
andock-buildは、あなたのブランチの最新のコミットをチェックアウトし、依存関係を含めるための全ビルドフックを実行し、テストを行い、ビルドしたアーティファクトをGitアーティファクトリポジトリにプッシュするAnsibleロールです。
要件
Andockでアプリをビルドするには、次のものが必要です:
- デプロイマシンにAnsible
- Composerなどのビルドツール
- 両方のマシンにGit
ロール変数
vars:
git_source_repository_path: [email protected]:andock/drupal-8-demo.git # ソースリポジトリ
git_target_repository_path: [email protected]:andock/drupal-8-demo-build.git # タゲットリポジトリ。ソースリポジトリと同じでも可
build_path: ~/ansible # ビルドが行われるパス
branch: "master" # ソースブランチ。ターゲットブランチはmaster-build
hook_build_tasks: "hooks/build_tasks.yml" # ビルドタスクフックファイルへのパス
インストール
Andockは、Ansible Galaxyを利用してグローバルに配布されるAnsibleロールです。Andockロールをインストールするには、次のコマンドを使用します。
$ ansible-galaxy install andock.build
更新
ロールを更新する場合、インストール時に**--force**パラメータを指定する必要があります。以下のコマンドを確認してください:
$ ansible-galaxy install --force andock.build
例プレイブック
役割の使用例を示すのは、ユーザーにとって親切です(変数がパラメータとして渡される場合を含む):
- name: ビルドリポジトリへのリポジトリデプロイ
hosts: localhost
roles:
- role: build
git_source_repository_path: [email protected]:andock/drupal-8-demo.git
build_path: ~/ansible
branch: "master"
hook_build_tasks: "hooks/build_tasks.yml"
.gitignoreの扱い
.gitignoreファイル内の部分を "BEGIN REMOVE ANDOCK" --- "END REMOVE ANDOCK-CI" でマークできます。andockは、ターゲットリポジトリにコミットされる前にそのブロックを削除します。
# Drupal 8 Composerプロジェクト用のサンプル.gitignoreファイル
.idea
#### BEGIN REMOVE ANDOCK-CI ###
docroot/core
docroot/modules/contrib
docroot/themes/contrib
docroot/profiles/contrib
vendor
#### END REMOVE ANDOCK-CI ###
.build.ymlの下のビルドフック
- name: composer install
command: fin rc -T composer install
args:
chdir: "{{ build_path }}"
ライセンス
GPL
著者情報
クリスチャン・ヴィーダマン (christian.wiedemann@key-tec.de)