LoginSignup
0
0

More than 5 years have passed since last update.

semaphore usage

Last updated at Posted at 2016-08-03

usage

手順

1.ログイン
2.Projectの作成
3.公開鍵の登録
4.ansible-playbook リポジトリの登録
5.inventoryの登録
6.environment 登録
7.task template の登録
8.実行

login

ログインはsemaphoreのinitialize時に登録したアカウントでまずログインします。
userの追加はログイン後の画面から可能です

Projectの作成

画像を参考に新規Project作成画面を開く
名前を入力し作成

Projectの詳細設定

作成したProjectをクリックしProjectの詳細に遷移しくてださい。
Projectの詳細ではProjectのactivityが表示され、使用するansible-playbookの設定、inventoryの設定などが可能です。

ここを正しく設定しないとansibleが正常に動作しません

公開鍵の登録

Projectの詳細メニューからkey storeを選択
ここに登録した鍵は ssh ログインや git clone などに使われます。

  • create kye を選択
  • Key Name の入力
  • Key type の選択

    通常ではSSH Keyを選択します。awsなどの際はaws credentialを選択、各環境にあったものを選択してください。

  • Public Key の入力

  • Private Key の入力

以上で公開鍵の登録は完了です。

playbookリポジトリの登録

Projectの詳細メニューからPlaybook Repositoriesを選択
ここでは作成したansible-playbookのリポジトリの登録を行います

  • create epositoryを選択
  • Name を入力(なんでもOKです)
  • RepositoryのURLを入力
  • SSH Keyを選択 > SSH Keyは事前に登録したssh keyの中から選択します

Inventoryの登録

Inventoryとは対象ホストを記述したものになります。
hostsファイルのDSL形式で記述します。

ex.test
[server]
192.168.33.10

keyの部分は実行するタスクなどを定義したconfファイル(ここではplaybook.ymlとしています)のhostsという項目と一致している必要があります。

playbook.yml
- hosts: server
  become: yes
  user: hogehoge
  vars_files:
    - vars/package.yml
  roles:
    - git
    - common
    - nginx
    - php
    - composer
    - mysql
    - redis
    - rbenv
    - td-agent

Projectの詳細メニューから Inventoryを選択
create Inventoryを選択後

  • Name を入力(なんでもOKです)
  • Type を選択(ここでは事前に登録した公開鍵と紐づくのでStaticを選択します)
  • SSH Key を選択

これで使用するInventoryは登録完了です。
Inventoryに関しては別途値を入力する必要があります

Inventory の値設定

Inventoryから edit inventory contentを選択
画像のようにhosts形式で入力します。

save changesを選択し完了です

environment 登録

environmentは環境ごとに使う変数の定義が可能です。
変数はjson形式で記述します。ここで定義した変数は
ansible-playbook実行時にplaybookに渡されます。

environmentは不要であれば登録しなくても問題ありません

  • user変数の定義 userという変数をplaybook内で定義しているとした場合
user.json
{user: hogehoge}
  • Environment Nameを入力
  • Environment jsonで定義

これでenvironmentの登録完了です。

task template の登録

task templateでは実行するansible-playbookの設定をします
task templateは複数登録することができます

  • Playbook Nameの入力

タスクなどを定義したconfファイルの名前を入力します

  • SSH Keyの選択

登録したsshログイン時に使用するssh keyを選択

  • Inventoryの選択

登録したInventoryを選択

  • Playbook Repositoryの選択(複数ある場合は実行したいタスクがあるplaybookを選択してください)

登録したPlaybook Repositoryを選択

  • Environmentの選択(事前にenvironmentを入力していない場合は未選択でOKです)

  • Extra CLI Arguments(未入力でOKです)

引数として渡したい値がある場合にjson配列形式で設定してください

以上でタスクを実行する準備が整いました。

実行

登録したtask templateの横にあるrunボタンを押すと実行画面に移ります。

実行時にoverrideしたい値などがある場合runボタン押下後に表示されるwindowに
overrideしたい値をjson形式で入力し実行してください。またDebug(-vvv)にチェックを入れると ansible-playbook実行時にDebugメッセージが出力されます。

これでansible-playbookが実行されます。
エラーなどがなければ対象サーバに対してtaskが実行されます。

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