gcloudコマンドがcronで実行できないときにチェックすること

カテゴリ: gcp

gcpの操作をcliのgcloudコマンドで行いたい場合、Linuxのシェルから実行すると成功するのに、cronで自動実行させると失敗する場合があります。

例えば、cronのスクリプトからgcloudを実行で下記のエラーが発生する場合ですが...

ERROR: (gcloud.source.repos.create) You do not currently have an active account selected.
Please run:
  $ gcloud auth login

to obtain new credentials, or if you have already logged in with a
different account:
  $ gcloud config set account ACCOUNT

to select an already authenticated account to use.

この場合、gcpへアクセスするための認証情報のパス指定が誤っている場合があります。確認はcronで実行するスクリプト内に下記の1行を入れておけばよいです。

> gcloud info | grep "User Config Directory" > /tmp/gcloud_config.txt

> cat /tmp/gcloud_config.txt
User Config Directory: [/.config/gcloud]

Configのパスは、CLOUDSDK_CONFIG環境変数で指定できるため、下記のように設定を追加すればよいです。

# gcloudコマンのconfigディレクトリを指定
CLOUDSDK_CONFIG=/root/.config/gcloud


Amazonでおトクに買い物する方法
AmazonチャージでポイントGET


Amazonは買いもの前にAmazonギフト券をチャージしてポイントをゲットしないと損!

こちらもおススメ
カテゴリ: gcp

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です