Shell/Bash スクリプト
Semaphore は /bin/bash を使用してシェルスクリプトを実行できます。そのためには、Bash Script タスクテンプレートを作成します。
Bash テンプレートの作成
- タスクテンプレートセクションに移動し、新しいテンプレートボタンをクリックします。
- アプリの種類として Bash を選択します。
- テンプレートを設定します:
| フィールド | 説明 |
|---|---|
| 名前 | テンプレートのわかりやすい名前 |
| リポジトリ | シェルスクリプトを含むリポジトリ |
| Playbook / スクリプト | スクリプトへの相対パス (例: scripts/deploy.sh) |
| 変数グループ | 値が環境変数として注入される変数グループ |
- 作成をクリックします。
- 実行をクリックしてテンプレートを実行します。
スクリプトへの変数の受け渡し
選択した変数グループの変数は、環境変数として注入されます。スクリプト内では $VARIABLE_NAME でアクセスします。
#!/bin/bash
echo "Deploying to $TARGET_HOST"
注意事項
- スクリプトに実行権限を付与する (
chmod +x) か、有効なシバン (#!/bin/bash) で始まるようにしてください。 - スクリプトは非対話的に実行されます。ユーザー入力を待つプロンプトは避けてください。
- 終了コード
0は成功を意味し、0 以外の終了コードはタスクを失敗としてマークします。 - 非常に短いスクリプトでログ出力が表示されない場合は、トラブルシューティングガイドの Bash スクリプトの出力が欠落または不完全を参照してください。
- リモートホストでコマンドを実行するには、代わりに Ansible を使用してください。