2 minutes
[Jenkins] Jenkinsからaws-cliを使えるようにするメモ
お世話になっております。
しゃまとんです。
macでJenkinsを使う際のちょっとしたメモです。Jenkinsでawsの操作を実行したいなぁと思い、 macにaws-cliをインストールしました。そこでJenkinsにジョブを作成し、シェルの実行タスクからawsコマンドを利用してみると
/var/folders/zh/k0xxxxxxxxxxxxxxxxxxxxx/T/hudsonxxxxxxxxxxxxx.sh: line **: aws: command not found
となり、awsコマンドが使えませんでした。
通常のターミナルからは使えるのになぜだろうと思い調べていたら、案の定パスが通っていなかったのが原因でした。
aws-cliはインストールすると、/usr/local/bin
にコマンドが配置されています。
ls /usr/local/bin/aws*
/usr/local/bin/aws /usr/local/bin/aws.cmd /usr/local/bin/aws_completer /usr/local/bin/aws_zsh_completer.sh
ということで、Jenkins側の設定を変えてやります。
[Jenkinsの管理] → [システムの設定] を選択し、グローバルプロパティにPATHを追加しました。

これで、再度確認してみると

実行することができました。Jenkinsからシェルを実行すると環境変数が違っていたりするのでちょっと配慮が必要ですね。
あとシェルの実行で頭に#!/bin/shを書くとエラーが発生したときに 途中でexitしないみたいなのでコピペする際は注意したほうが良さそうですね。
以上です。