1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

concourse-ciでよく使うコマンド(fly)

Posted at

#concourse-ciでよく使うコマンド(fly)

はじめに

concourse-ciで用意されているflyコマンドを使ってパイプラインを操作する方法を纏めています。
構築の記事はこちらです。

環境

  • Mac os x HighSierra
  • fly 5.0.1

前準備

以下のコマンドとブラウザでログインする。

$ fly -t tutorial login -c http://localhost:8080
logging in to team 'main'

navigate to the following URL in your browser:

  http://localhost:8080/login?fly_port=59005

or enter token manually: 
target saved

tutorialは任意のターゲット名を指定しています。
これ以降の作業は、上記でログインしていることが前提となります。

設定ファイル

以下の設定ファイルをベースにします。
dockerイメージを使用して、uname -aを実行するだけの処理です。

tutorial_pipeline.yml
jobs:
- name: job-tutorial
  plan:
  - task: uname_show
    config:
      platform: linux
      image_resource:
        type: docker-image
        source: {repository: busybox}
      run:
        path: sh
        args:
        - -c
        - |
          uname -a

各項目の説明はこちらにあります。
https://concourse-ci.org/jobs.html

登録の基本

以下のコマンドが基本となります。

$ fly -t tutorial set-pipeline --pipeline tutorial_pipeline --config tutorial_pipeline.yml
jobs:
  job job-tutorial has been added:
+ name: job-tutorial
+ plan:
+ - task: uname_show
+   config:
+     platform: linux
+     image_resource:
+       type: docker-image
+       source:
+         repository: busybox
+     run:
+       path: sh
+       args:
+       - -c
+       - uname -a
  
apply configuration? [yN]: y
pipeline created!
you can view your pipeline here: http://localhost:8080/teams/main/pipelines/tutorial_pipeline

the pipeline is currently paused. to unpause, either:
  - run the unpause-pipeline command
  - click play next to the pipeline in the web ui
引数名 説明
-t ログイン時に決めたターゲット名を指定
set-pipeline パイプラインを登録する時のコマンド名
--pipeline パイプライン名を指定します。
--config 設定ファイルのパスを指定します。

スクリーンショット 2019-03-28 15.29.15.png

変数がある場合の登録

ログイン情報など設定ファイルに直接書き込む事が憚れる場合に、変数を設定して登録時に渡す方法があります。
下記サンプルは、変数に指定された文字をechoする処理です。

jobs:
- name: job-var-tutorial
  public: true
  plan:
  - task: echo_var_show
    params:
      VAR_HOGE: ((var_hoge))
    config:
      platform: linux
      image_resource:
        type: docker-image
        source: {repository: busybox}
      run:
        path: sh
        args:
        - -c
        - |
          echo "${VAR_HOGE}"
$ fly -t tutorial set-pipeline --pipeline var_pipeline --config var_pipeline.yml \
    --var "var_hoge=hogehoge"
引数名 説明
--var 変数名と値を指定します。複数指定できます。

スクリーンショット 2019-03-28 16.11.25.png

更新方法

登録方法と同じコマンドを実行すれば更新されます。

$ fly -t tutorial set-pipeline --pipeline var_pipeline --config var_pipeline.yml \
--var "var_hoge=hogehoge"
jobs:
  job job-var-tutorial has changed:
  name: job-var-tutorial
  public: true
  plan:
  - task: echo_var_show
    config:
      platform: linux
      image_resource:
        type: docker-image
        source:
          repository: busybox
      run:
        path: sh
        args:
        - -c
-       - echo "${VAR_HOGE}"
+       - |-
+         echo "${VAR_HOGE}"
+         echo "${VAR_HOGE}"
    params:
      VAR_HOGE: hogehoge
  
apply configuration? [yN]: y
configuration updated

削除方法

下記コマンドを実行さすれば、削除されます。

$ fly -t tutorial destroy-pipeline --pipeline var_pipeline
!!! this will remove all data for pipeline `var_pipeline`

are you sure? [yN]: y
`var_pipeline` deleted
引数名 説明
-t ログイン時に決めたターゲット名を指定
destroy-pipeline パイプラインを削除する時のコマンド名
--pipeline パイプライン名を指定します。

##参考

1
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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?