LoginSignup
12
12

More than 5 years have passed since last update.

OSS版droneを一発で試せるfig.yml書いた

Last updated at Posted at 2014-12-18

概要

Docker流行ってるので勉強も兼ねてdroneのイメージを作ってみた。CIツールといえばJenkinsなイメージが強いけど、コンテナ内に環境を閉じ込めてテストとか色々出来るdroneはクリーンで大変に気持ちいいね。

で、せっかくDockerなのでその強みを活かして、手元にdrone+GitLabの環境をfig up一発で構築できるfig.ymlのサンプルも作ってみた。

Dockerとfigが使える環境ならなんでも動くはず。boot2dockerでも試せる。

手順

  1. 上記ファイルをfig.ymlにして適当なディレクトリに保存
  2. GITLAB_HOSTをDockerホストのIPアドレスに書き換える
    • boot2dockerならboot2docker ipで表示されるやつ
  3. fig up
  4. GitLabのセットアップ
    1. DockerホストIP:20080にアクセスしてGitLabを開く
    2. root / 5iveL!fe でログイン
    3. 適当にパスワード変更して再ログイン
    4. SSH公開鍵登録
    5. 適当な名前でレポジトリを作る
  5. droneのセットアップ
    1. DockerホストIP:10080にアクセスしてdroneを開く
    2. 先ほどGitLabで変更したパスワードでログイン
    3. Syncing your Account...のあと、先ほどGitLabで作ったレポジトリが表示されるので、選択してActivateする
      • こうするとGitLab側のWeb HooksにdroneのビルドをキックするURLが登録される
  6. 先ほど作ったレポジトリをクローンしてきて.drone.ymlをcommitしpush
  7. droneでビルドがうごく

.drone.ymlはとりあえずこんな感じのものでもよい。

.drone.yml
image: "bradrydzewski/ruby:2.0.0"
script:
  - echo "Hello"

最初にビルド用のイメージをpullしてくるのに時間がかかるが、最初の一回だけなのでそれ以降は比較的速い。scriptのところにコマンドを並べると色々試せる。imageには公開されている物なら何でも指定できるが/usr/local/bin/gitが無いと、そのビルド対象のレポジトリをクローンするところでコケて止まるので、自分でビルド用のイメージを作る際は要注意。

droneは設定がシンプルで少なくて分かりやすいし、テストやビルド環境はイメージさえ用意してしまえばどんなものでも出来ちゃうところがいい。あと何より自分でホスト出来るってのは大きい。

12
12
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
12
12