5

こんにちはスタックオーバーフローコミュニティ!初めての質問者、長年のユーザー。

Cloud Build Local コンポーネントと Secret Manager を使用してローカルで cloudbuild.yaml ファイルをテストしていますが、「availableSecrets」で失敗しています。

エラー メッセージ: 構成ファイルの読み込み中にエラーが発生しました: cloudbuild.Build の不明なフィールド "availableSecrets"

  • OS プラットフォーム: Windows 10/WSL2/Ubuntu 18.04
  • クラウドビルドローカル: v0.5.2
  • Docker エンジン: v20.10.2
  • Nodejs バージョン: v14.15.3
  • NPM バージョン: 6.14.9
  • gcloud バージョン: 326.0.0
  • インストールされているコンポーネント: [BigQuery コマンドライン ツール、Cloud Datastore エミュレータ、Cloud SDK コア ライブラリ、Cloud Storage コマンドライン ツール、Google Cloud Build Local Builder、gcloud ベータ コマンド]

Cloud Build ビルド ファイルに関するドキュメント: https://cloud.google.com/cloud-build/docs/build-configクラウド ビルド でシークレットを構成するためのドキュメント: https://cloud.google.com/cloud-build/docs/ secure-builds/use-secrets クラウド ビルド ローカルのドキュメント: https://cloud.google.com/cloud-build/docs/build-debug-locally

実行した手順:

  1. Secret Manager に追加されたシークレット
  2. Cloud Build と Secrets Manager 間の有効な API
  3. 各シークレット パスワードのメンバーとして cloudbuild サービス アカウントを追加しました。
  4. cloudbuild ユーザーに IAM 権限 Secret Manager Secrets Accessor を追加しました。この情報をどこから入手したかはわかりませんが、この時点では、Secret Manager を cloudbuild で使用しようとする他の試みから残っています。ここでアクセスを適用することと、Secret Manager シークレットに適用することの違いがよくわかりません。

指示:cloud-build-local --config=cloudbuild.staging.yaml --dryrun=false .

cloudbuild.staging.yaml:

- name: gcr.io/cloud-builders/npm
  entrypoint: 'npm'
  args: [ 'install' ]
- name: 'gcr.io/cloud-builders/gcloud'
  args: ["app", "deploy"]
  env:
  - 'DAO_FACTORY=datastore'
  - 'POLL_INTERVAL=15'
  - 'PROMPT=staging>'
  - 'ENVIRONMENT=staging'
  - 'NAMESPACE=staging'
  - 'RESET_DATASTORE=false'
  secretEnv: ['ADMIN_USER', 'SUPER_ADMINS', 'BOT_TOKEN']
availableSecrets:
  secretManager:
  - versionName: projects/{project token}/secrets/SYSTEM_USER/versions/1
    env: 'ADMIN_USER'
  - versionName: projects/{project token}/secrets/SUPER_ADMINS/versions/1
    env: 'SUPER_ADMINS'
  - versionName: projects/{project token}/secrets/BOT_TOKEN/versions/2
    env: 'BOT_TOKEN'```


Tag: cloud-build-local. I guess without reputation a meaningful tag cannot be created. Maybe an esteemed community member will create this as this may be specific to cloud-build-local only.
4

2 に答える 2