From 281c5087e707ac85fe77201bcda4fe0e2faa60b2 Mon Sep 17 00:00:00 2001 From: shenlan Date: Fri, 26 Sep 2025 15:22:24 +0800 Subject: [PATCH] Add multi-cloud landing zone module (#316) --- ui/homepage/lib/iac/catalog.ts | 48 ++++++++++++++++++++++++++++++++++ ui/homepage/lib/iac/types.ts | 1 + 2 files changed, 49 insertions(+) diff --git a/ui/homepage/lib/iac/catalog.ts b/ui/homepage/lib/iac/catalog.ts index c4e1219..1d0f8f8 100644 --- a/ui/homepage/lib/iac/catalog.ts +++ b/ui/homepage/lib/iac/catalog.ts @@ -1,6 +1,54 @@ import type { CatalogItem, ProviderDefinition } from './types' export const CATALOG: CatalogItem[] = [ + { + key: 'landing_zone', + title: '多云 Landing Zone 基线', + subtitle: 'Multi-Cloud Landing Zone', + description: + '统一构建账号与权限边界、日志审计、安全基线、网络隔离及成本告警的多云 Landing Zone 模块,支撑 IaC 自动化与合规运营。', + highlights: [ + '主账号安全、MFA、RAM / IAM 用户组模板与最小权限策略', + 'ActionTrail / CloudTrail 日志、Cloud Config / Config 规则与安全中心告警', + 'Pulumi / Terraform 编排,GitHub CI / GitLab CI 触发多环境部署', + ], + products: { + aws: 'AWS Control Tower Landing Zone', + gcp: 'Google Cloud Foundation Toolkit', + azure: 'Azure Enterprise-Scale Landing Zone', + aliyun: '阿里云 Landing Zone 基线(MVP)', + }, + iac: { + aws: { + detailSlug: 'control-tower-landing-zone', + githubWorkflow: 'landing-zone.yml', + githubInputs: { provider: 'aws', stack: 'landing-zone' }, + gitlabPipeline: 'landing-zone', + gitlabVariables: { PROVIDER: 'AWS', STACK: 'LANDING_ZONE' }, + }, + gcp: { + detailSlug: 'gcp-landing-zone', + githubWorkflow: 'landing-zone.yml', + githubInputs: { provider: 'gcp', stack: 'landing-zone' }, + gitlabPipeline: 'landing-zone', + gitlabVariables: { PROVIDER: 'GCP', STACK: 'LANDING_ZONE' }, + }, + azure: { + detailSlug: 'azure-landing-zone', + githubWorkflow: 'landing-zone.yml', + githubInputs: { provider: 'azure', stack: 'landing-zone' }, + gitlabPipeline: 'landing-zone', + gitlabVariables: { PROVIDER: 'AZURE', STACK: 'LANDING_ZONE' }, + }, + aliyun: { + detailSlug: 'aliyun-landing-zone', + githubWorkflow: 'landing-zone.yml', + githubInputs: { provider: 'aliyun', stack: 'landing-zone-mvp' }, + gitlabPipeline: 'landing-zone', + gitlabVariables: { PROVIDER: 'ALIYUN', STACK: 'LANDING_ZONE_MVP' }, + }, + }, + }, { key: 'compute', title: '计算', diff --git a/ui/homepage/lib/iac/types.ts b/ui/homepage/lib/iac/types.ts index 13dca2e..d99c791 100644 --- a/ui/homepage/lib/iac/types.ts +++ b/ui/homepage/lib/iac/types.ts @@ -1,4 +1,5 @@ export type CategoryKey = + | 'landing_zone' | 'compute' | 'network' | 'load_balancer'