在 Juju 中,使用什么命令来从钩子脚本中访问环境设置?

在 Juju 中,使用什么命令来从钩子脚本中访问环境设置?

我的具体情况是获取存储在 environment.yaml 中的 amazon EC2 身份验证信息。
我知道最近的 Juju 版本中提供了 get-constraints 命令。可以使用它来访问此信息吗?

答案1

尝试将您需要的信息作为 charm 的配置参数传递。

为此,您需要:

  • 在 charm 的 config.yaml 文件中添加参数名称

  • 可以将键作为--config命令的一部分传递juju deploy,或者使用juju set命令

  • config-get使用命令从 charm hooks 读取密钥

答案2

目前您无法访问环境变量。如果您的 charm 需要身份验证信息,您需要将其添加为该 Charm 的配置选项(Charms 应设计为部署在所有堆栈上,因此并非每个提供商都会有类似 ec2-authentication 密钥的东西)。如果您的 charm 需要 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_changed 钩子获取config-get

相关内容