web-dev-qa-db-ja.com

Jujuでは、フックスクリプト内から環境設定にアクセスするためにどのコマンドを使用しますか?

私の特定のケースは、environments.yamlに保存されているAmazonEC2認証情報を取得するためのものです。
最近のJujuビルドで使用できるget-constraintsコマンドを知っています。これを使用してこの情報にアクセスできますか?

2
Antojk

チャームの構成パラメーターとして必要な情報を渡してみてください。

これを行うには、次のようにします。

  • チャームのconfig.yamlファイルにパラメーター名を追加します

  • キーを--configコマンドのjuju deploy部分として渡すか、またはjuju setコマンドを使用して渡します。

  • config-getコマンドを使用してチャームフックからキーを読み取ります

2
m_3

現時点では、環境変数にアクセスすることはできません。チャームに認証情報が必要な場合は、そのチャームの構成オプションとして追加する必要があります(チャームはすべてのスタックにデプロイするように設計する必要があるため、すべてのプロバイダーがec2-authenticationキーのようなものを持っているわけではありません)。魅力的なAWSサービスが必要な場合は、次のような構成でAWSサービスを公開することを検討してください。

options:
  aws-public-key:
    type: string
    default: ""
    description: Amazon Public Key for S3
  aws-secret-key:
    type: string
    default: ""
    description: Amazon Secret Key for S3
  s3-bucket:
    type: string
    default: ""
    description: Amazon S3 Bucket

したがって、これらはjuju setコマンドを使用して設定され、config-getを介してconfig_changedフックで使用できます。

1
Marco Ceppi