community.digitalocean.digital_ocean_project 模块 – 管理 DigitalOcean 项目

注意

此模块是 community.digitalocean 集合 (版本 1.27.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install community.digitalocean

要在剧本中使用它,请指定:community.digitalocean.digital_ocean_project

community.digitalocean 1.6.0 中的新增功能

概要

  • 管理 DigitalOcean 中的项目

参数

参数

注释

description

字符串

项目的描述。最大长度为 255 个字符。

environment

字符串

项目资源的环境。

选项

  • "开发"

  • "登台"

  • "生产"

id

字符串

项目的 UUID

is_default

布尔值

如果为 true,则如果未指定项目,所有资源都将添加到此项目。

选项

  • false ← (默认)

  • true

name

字符串

项目的易于理解的名称。最大长度为 175 个字符,并且名称必须唯一。

oauth_token

别名:API_TOKEN

字符串 / 必需

DigitalOcean OAuth 令牌。可以在 DO_API_KEYDO_API_TOKENDO_OAUTH_TOKEN 环境变量中指定

purpose

字符串

项目的用途。最大长度为 255 个字符

如果 state 为 present,则为必需

如果不是 DO 提供的用途之一,则会在其前缀添加 Other

DO 提供的用途如下所示

只是 尝试 DigitalOcean

课堂 项目/教育 用途

网站 博客

Web 应用程序

服务 API

移动 应用程序

机器 学习/AI/数据 处理

物联网

运营/开发 工具

state

字符串

指示目标的所需状态。

present 将创建项目

absent 将删除项目(如果存在)。

选项

  • "present" ← (默认)

  • "absent"

示例

# Creates a new project
- community.digitalocean.digital_ocean_project:
    name: "TestProj"
    state: "present"
    description: "This is a test project"
    purpose: "IoT"
    environment: "Development"

# Updates the existing project with the new environment
- community.digitalocean.digital_ocean_project:
    name: "TestProj"
    state: "present"
    description: "This is a test project"
    purpose: "IoT"
    environment: "Production"

# This renames an existing project by utilizing the id of the project
- community.digitalocean.digital_ocean_project:
    name: "TestProj2"
    id: "12312312-abcd-efgh-ijkl-123123123123"
    state: "present"
    description: "This is a test project"
    purpose: "IoT"
    environment: "Development"

# This creates a project that results with a purpose of "Other: My Prod App"
- community.digitalocean.digital_ocean_project:
    name: "ProdProj"
    state: "present"
    description: "This is a prod app"
    purpose: "My Prod App"
    environment: "Production"

# This removes a project
- community.digitalocean.digital_ocean_project:
    name: "ProdProj"
    state: "absent"

返回值

常见的返回值已在 此处 记录,以下是此模块特有的字段

描述

data

字典

一个 DigitalOcean 项目

返回:changed

示例:{"project": {"created_at": "2021-05-28T00:00:00Z", "description": "This is a test description", "environment": "Development", "id": "12312312-abcd-efgh-1234-abcdefgh123", "is_default": false, "name": "Test123", "owner_id": 1234567, "owner_uuid": "12312312-1234-5678-abcdefghijklm", "purpose": "IoT", "updated_at": "2021-05-29T00:00:00Z"}}

作者

  • Tyler Auerbeck (@tylerauerbeck)