Idem的GCP云提供商
项目描述
GCP Cloud Provider for Idem.
关于
idem-gcp帮助管理GCP和idem。
什么是POP?
本项目使用pop构建,它是Python实现的面向插件编程(POP)。POP旨在以新的方式结合计算机历史中的概念和智慧来解决现代计算机问题。
更多信息
什么是Idem?
本项目使用idem构建,idem是一种用Python编写的幂等、命令执行、声明式编程语言。本项目扩展了idem!
更多信息
入门
先决条件
Python 3.8+
git (如果从源安装,或为项目做出贡献)
Idem
安装
从 PyPI 安装
您可以从 PyPI、源仓库或本地目录安装 idem-gcp。
在安装 idem-gcp 之前,请确保您与 pyproject.toml 文件位于同一目录下。您可以使用 --directory=DIRECTORY (-C) 选项指定包含 pyproject.toml 文件的目录。
从 PyPI 安装
要从 PyPI 安装 idem-gcp,请运行以下命令
poetry add idem-gcp
从源安装
您还可以直接从源仓库安装 idem-gcp。
poetry add git+https://gitlab.com/vmware/idem/idem-gcp.git
如果您未指定分支,Poetry 将使用 master 分支的最新提交。
从本地目录安装
克隆 idem-gcp 仓库。然后运行以下命令从克隆的目录安装
poetry add ~/path/to/idem-gcp
设置
安装完成后,GCP Idem 提供器和状态模块将对 pop hub 可用。为了使用它们,我们需要设置我们的凭据。
创建一个名为 credentials.yaml 的新文件,并用您的凭据配置文件填充它。
要在文件中提供您的 GCP 凭据,请使用“gcp”提供者密钥。在该密钥下,根据需要添加不同的配置文件。配置文件指定了 GCP 的身份验证参数。默认配置文件将由 idem 自动使用,但其他配置文件可以在每次运行或 SLS 文件中明确指定。这是通过 idem 的 –acct-profile 命令行标志或 acct_profile SLS 属性完成的。
idem-gcp 支持的当前 GCP 身份验证机制是提供服务帐户密钥。以下示例给出了期望的身份验证参数格式的总体结构。
credentials.yaml
gcp:
default:
type: service_account
project_id: “<project>”
private_key_id: “<key_id>”
private_key: "-----BEGIN PRIVATE KEY-----\n<private_key>\n-----END PRIVATE KEY-----\n"
client_email: “<service_account_email>“
client_id: “<client_id>”
auth_uri: https://#/o/oauth2/auth
token_uri: https://oauth2.googleapis.com/token
auth_provider_x509_cert_url: https://www.googleapis.com/oauth2/v1/certs
client_x509_cert_url: “<certificate_url>“
universe_domain: googleapis.com
<other_profile_name>:
...
这些参数的值可以在创建服务帐户并在 GCP 控制台中生成 JSON 格式的服务帐户密钥后获得。请确保为服务帐户分配适当的角色,以便它有权访问和管理所需资源。为了更好的安全性,遵循最小权限原则,不要使用拥有过多权限的服务帐户。有关使用的身份验证参数的更多信息,请参阅凭据文档。
加密创建的凭据文件
acct encrypt credentials.yaml
此命令的输出是需要安全存储的 ACCT_KEY。工作目录中还将创建一个加密的 credentials.yaml.fernet 文件,其路径应用作 ACCT_FILE。这些可以通过环境变量或直接作为 idem 运行参数提供给 idem。
设置环境变量
export ACCT_KEY="<ACCT_KEY>"
export ACCT_FILE=$PWD/credentials.yaml.fernet
向 idem 运行提供 acct 参数
idem <subcommand> --acct-key "<ACCT_KEY>" --acct-file "$PWD/credentials.yaml.fernet" --acct-profile "<profile_name>"
在 SLS 文件中指定帐户配置文件
ensure_resource:
gcp.<service>.<resource>.present:
- acct_profile: <profile_name>
- name: resource_name
- kwarg1: val1
有关 Idem ACCT 身份验证管理子系统的更多信息,请参阅以下资源
项目详细信息
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
构建分发
idem_gcp-2.2.4.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0e5571aa73b8ec386e98ce281d88aa7a63831e8d0f34f2b9933a1ab8c8c3f868 |
|
MD5 | 314deda1b31d51be47a5030914e51570 |
|
BLAKE2b-256 | 1270a1d7730f3aa5f1d66898674b6d0021f2882b70fbe210f0ea34a0f027ca02 |
idem_gcp-2.2.4-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ebe7e9f3045f167d27a5cad1f40a076b3fcc8c0c42b8eb8b59d7b0c74324eaca |
|
MD5 | 2bad42464d36f90273ec14ddd044e644 |
|
BLAKE2b-256 | 84cea4844a821b5d51bf133b0c96b8ce5d3506b9aa0bad393d08648f9b77a877 |