前提・実現したいこと
Golang で実装したアプリケーションを GitHub へ push したら
CircleCI で自動テスト、デプロイをするように設定をしたいと考えています。
公式ドキュメントやその他インターネットのサイトを参照しながら、実践中です。
CircleCI で使用する Docker image はカスタムイメージとなります。
Go の実行環境と Cloud SDK をインストールした image を作成し、Docker Hub に push しています。
ローカルでこの Docker image 内で gcloud コマンドを使用できることは確認済みです。
config.yml で使用する環境変数は CircleCI のコンソールで設定しています。
CircleCI を初めて使用するため、config.yml の設定内容等をあまり理解できていない部分もあります。
また、知識不足のため質問内容等に不足がございましたら、追記いたしますので、ご指摘いただきたく。
発生している問題・エラーメッセージ
Circle CI のログで gcloud コマンドがないとのメッセージが出力されます。
#!/bin/bash -eo pipefail gcloud --quiet components update /bin/bash: gcloud: command not found Exited with code exit status 127
該当のソースコード
# Golang CircleCI 2.0 configuration file # # Check https://circleci.com/docs/2.0/language-go/ for more details version: 2 jobs: build: docker: # specify the version - image: xxxxxx/circlecigo:20200424 # 個人名が記載されているため、伏せています name: circleci auth: username: $DOCKER_USERNAME password: $DOCKER_PASSWORD # Specify service dependencies here if necessary # CircleCI maintains a library of pre-built images # documented at https://circleci.com/docs/2.0/circleci-images/ # - image: circleci/postgres:9.4 #### TEMPLATE_NOTE: go expects specific checkout path representing url #### expecting it in the form of #### /go/src/github.com/circleci/go-tool #### /go/src/bitbucket.org/circleci/go-tool working_directory: /go/src/gae_sample steps: - checkout # specify any bash command here prefixed with `run: ` - run: go get -v -t -d ./... - run: go test -v ./... - run: name: update gcloud command: | gcloud --quiet components update - run: name: google auth command: | echo $GCLOUD_SERVICE_KEY | base64 --decode | gcloud auth activate-service-account --key-file=- gcloud --quiet config set project ${GOOGLE_PROJECT_ID} gcloud --quiet config set compute/zone ${GOOGLE_COMPUTE_ZONE} - run: name: deploy production command: | sh script/deploy.sh #スクリプトを使用してデプロイします。CircleCI を使用せず、ローカルからはデプロイできます。
試したこと
ここに問題に対して試したことを記載してください。
- sudo をつけて実行 (同様のエラーとなる)
- Docker image 内で circleci ユーザであれば、gcloud コマンドを実行できることを確認済みのため username を circleci とした(同様のエラーとなる)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。