配置应用环境
为配置目录和工作区创建模板。通过变量组提供环境输入。
共享预先准备的作业代码在 Git 中,但工作区、变量和凭据可能因终端会话而异。下一位工程师需要相同的起点。
模板选择仓库、配置目录和 Terraform 工作区,变量组提供运行输入。
运行 Plan 审查拟议的基础设施变更,保持破坏性选项关闭。Apply 仍是独立操作。
Terraform 步骤成功后会自动发布基础设施输出。将这些值映射到 Ansible 任务的输入,再使用 Python 验证已配置的服务。Workflows 将任务、数据以及成功或失败路径连接起来。
选择 Plan,查看拟议变更而不执行应用。Apply 是独立的一次执行,后续 Apply 不会自动使用先前 Plan 任务保存的输出。
通过模板的 Inventory 字段选择 Terraform 工作区。使用带 TF_VAR_ 名称的变量组提供输入。选择工作区不会自动切换变量或凭据。
继续使用 Terraform 代码中的后端。Pro 可将其覆盖为 Semaphore 的 HTTP 后端,提供锁定、状态版本和 UI 管理。
Semaphore 在执行之前运行 init。请在执行作业的服务器或运行器上准备 Terraform 版本、提供程序、私有模块凭据和 API 访问。
可以。创建指向仓库与配置目录的 Terraform 任务模板。选择工作区,通过变量组提供输入,并准备所需 Terraform 运行时。Semaphore 执行配置,并保留任务输出和执行状态。
不需要。Terraform 可以继续使用代码中配置的后端。在 Pro 中,可以选择 Semaphore HTTP 后端,提供状态锁定、版本历史和 UI 管理。请选择符合现有访问和恢复流程的后端。
不会。选择工作区只会选择状态工作区,作业所需的变量和凭据应单独配置。对于输入不同的环境,请有意识地组合任务模板与变量组,并在模板名称中明确预期范围。
后续 Apply 不会自动使用先前 Plan 任务保存的输出,两者是独立执行。使用 Plan 审查拟议变更,再选择所需的 Apply 操作。任务历史会保留每次运行的输出和结果。
可以。为仅执行 Plan 的模板设置计划,查看输出中的配置与基础设施差异。每次运行都有记录。它提供的是供定期审查的计划,并不会自动对计划中发现的每项漂移发出告警。
可以。在工作流中将 Terraform 任务模板放在 Ansible 模板之前,再添加 Python 就绪检查等验证步骤。配置各步骤的启动条件。Terraform 计划和状态与工作流协调仍分别管理。
将变量组关联到模板。Terraform 输入变量使用 TF_VAR_ 名称,认证则使用提供程序所要求的环境变量。将敏感值保存在密钥条目中,并在执行环境中准备模块和后端访问。
不是。这项集成将基础设施 Terraform 配置作为 Semaphore 任务执行。Semaphore Terraform 提供程序则反向工作,通过 Terraform 管理受支持的 Semaphore 资源。两种方式可以独立使用,也可以在配置中结合使用。