34 lines
1.7 KiB
Markdown
34 lines
1.7 KiB
Markdown
---
|
||
title: "Jenkins"
|
||
type: entity
|
||
tags: ["CI/CD", "Automation", "DevOps"]
|
||
sources: ["learning-sessions-standard-amis-updates-20231205-160324-meeting-recording-2", "ctp-topic-26-standard-ami-build-publish-share-processes", "ctp-topic-1-gruntwork-landing-zone-architecture", "ctp-topic-7-saas-landing-zone-design"]
|
||
last_updated: 2026-05-08
|
||
---
|
||
|
||
## Overview
|
||
Jenkins 是开源的 CI/CD 自动化服务器,在 Micro Focus AWS Landing Zone 中承担基础设施即代码(IaC)部署和 AMI 构建的双重角色。每个 Landing Zone 配置独立的 Jenkins 服务器,通过多分支流水线(Multi-Branch Pipeline)管理 Terraform/TerraGrunt 模块的 plan 和 apply 流程,以及标准 AMI 的构建和测试。
|
||
|
||
## Aliases
|
||
- Jenkins CI
|
||
- Jenkins Master
|
||
- Jenkins Slave
|
||
- Jenkins Multi-Branch Pipeline
|
||
|
||
## Role in AWS Landing Zone
|
||
- **Shared 账户**:托管 Jenkins 主节点(Master),通过 Lambda 触发各账户 Jenkins 从节点
|
||
- **AMI 构建**:Jenkins 多分支流水线驱动 Packer 镜像构建,包含脚本化测试和 AWS Inspector 安全扫描
|
||
- **IaC 部署**:扫描 GitHub 仓库变更,触发 Terraform Plan/Apply 流水线
|
||
- **每个 LZ 独立**:Gruntwork 参考架构中每个 Landing Zone 有自己的 Jenkins 服务器
|
||
|
||
## Key Processes
|
||
- Feature Branch Pipeline:功能分支开发 → 合并到集成分支 → 构建测试 → 发布
|
||
- Jenkinsfile 定义构建、测试、发布各阶段
|
||
- 与 GitHub 集成实现自动化触发
|
||
|
||
## Connections
|
||
- [[AWS-Landing-Zone]] — Jenkins 是核心自动化基础设施
|
||
- [[Terraform-IaC]] — Jenkins 流水线编排 Terraform 部署
|
||
- [[Terragrunt]] — 与 Jenkins 配合的 IaC 工具
|
||
- [[Gruntwork]] — Gruntwork 参考架构中的 Jenkins 配置模式
|