未提供项目描述
项目描述
Idem插件,用于管理Azure云资源
关于
idem-azure 帮助使用 idem 管理 Azure。
什么是 POP?
该项目使用 pop 构建,它是 Python 的一个实现,用于实现 插件面向编程 (POP)。POP 试图以新的方式结合计算机历史中的概念和智慧,以解决现代计算问题。
更多信息
什么是 Idem?
该项目使用 idem 构建,idem 是用 Python 编写的幂等、命令式执行的声明式编程语言。该项目扩展了 idem!
更多信息
入门
先决条件
Python 3.8+
git (如果从源安装,或为项目做贡献)
Idem
安装
从 PyPI 安装
您可以从 PyPI、源仓库或本地目录安装 idem-azure。
在安装 idem-azure 之前,请确保您位于与您的 pyproject.toml 文件相同的目录中。您还可以通过使用 --directory=DIRECTORY (-C) 选项来指定包含您的 pyproject.toml 文件的目录。
从 PyPI 安装
要从 PyPI 安装 idem-azure,请运行以下命令
poetry add idem-azure
从源安装
您还可以直接从源仓库安装 idem-azure。
poetry add git+https://gitlab.com/vmware/idem/idem-azure.git
如果您没有指定分支,Poetry 将使用 master 分支上的最新提交。
从本地目录安装
克隆 idem-zure 仓库。然后运行以下命令从克隆的目录安装
poetry add ~/path/to/idem-azure
使用方法
凭证设置
安装后,Azure Idem 的执行和状态模块将对弹出 hub 可用。为了使用它们,我们需要设置我们的凭证。
创建一个名为 credentials.yaml 的新文件,并用凭证填充它。default 配置文件将被 idem 自动选中。
idem-azure 有多个身份验证后端,每个后端都有自己的唯一参数集。以下示例显示了可以用来定义凭证配置文件的参数。
credentials.yaml
azure:
default:
client_id: "12345678-1234-1234-1234-aaabc1234aaa"
secret: "76543210-4321-4321-4321-bbbb3333aaaa"
subscription_id: "ZzxxxXXXX11xx-aaaaabbbb-k3xxxxxx"
tenant: "bbbbbca-3333-4444-aaaa-cddddddd6666"
下一步是加密凭证文件,并将加密密钥和加密文件路径添加到 ENVIRONMENT。
加密凭证文件
Idem encrypt credentials.yaml
这将生成一个 credentials.yaml.fernet 文件和命令行输出令牌
-AXFSEFSSEjsfdG_lb333kVhCVSCDyOFH4eABCDEFNwI=
将这些添加到您的环境中
export ACCT_KEY="-AXFSEFSSEjsfdG_lb333kVhCVSCDyOFH4eABCDEFNwI="
export ACCT_FILE=$PWD/credentials.yaml.fernet
您现在可以使用 idem-azure 了!!!
状态
Idem 状态用于确保资源处于所需状态。资源所需状态可以在 sls 文件中指定。在 Idem-azure 中,支持三种状态:存在、不存在、描述。
存在状态
存在 状态确保资源处于所需状态。如果资源不存在,运行 存在 将在提供者上创建资源。如果资源存在,运行 存在 将更新提供者上的资源。(只能更新 Azure REST api 支持的值。)
不存在状态
不存在 状态确保资源不存在。如果资源存在,运行 不存在 将删除资源。如果资源不存在,运行 不存在 是无操作的。
描述状态
描述 状态列出在凭证配置文件中指定的订阅 ID 下相同资源类型下的所有当前资源。
状态可以通过在 idem-azure/idem_azure/states 中的相对位置访问。例如,在下面的状态 sls yaml 文件中,可以使用 存在 函数创建 Azure 资源组状态。
my_resource_group_state.sls
my-azure-resource-group:
azure.resource_management.resource_groups.present:
- resource_group_name: my-azure-resource-group
- location: eastus
可以使用以下命令执行状态 sls 文件
idem state $PWD/my_resource_group_state.sls
创建 Azure 虚拟网络的示例
my-virtual-network:
azure.network.virtual_networks.present:
- resource_group_name: my-azure-resource-group
- virtual_network_name: my-virtual-network
- location: eastus
- address_space:
- 10.0.0.0/16
sls yaml 文件中的资源参数结构与Azure REST api 文档中的结构完全相同。URI 参数应指定为蛇形,并以“-”开头。所有 API 请求体参数应与 Azure REST api 中的方式完全相同。
当前支持的资源状态
资源管理
resource_groups
策略
策略定义,策略分配
管理组
管理组
订阅
订阅
网络
防火墙,防火墙策略,网络接口,网络安全组,公共IP地址,路由表,路由,安全规则,子网,虚拟网络
计算
虚拟机,日志分析工作区
存储资源提供者
存储帐户
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
构建分布
idem-azure-2.5.0.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 7f4236893da9fbea5e0e5df93faa7fd4b91fdb886f742ef1664d6e07a4196d30 |
|
MD5 | 520b32cdebbdc27724e344641185d525 |
|
BLAKE2b-256 | 3c4dca19fdea67c46c563f38710f6f4121e6fef1cb1b08889253f138032ce5e0 |
idem_azure-2.5.0-py3-none-any.whl的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | db29a72f9f41dcd56cf11bf4cc73f8551b4d92efd7c24939a16e348129e756ca |
|
MD5 | b3d6b106afa53f7eee7653cf8b5fc8ab |
|
BLAKE2b-256 | 87fcbb110a7ec368855a903e987bb411c00f513b5cfca55b3596b2cfac773c67 |