Commit Graph

21 Commits

Author SHA1 Message Date
google-labs-jules[bot]
a2c2b95558 Standardize cloud bootstrap destroy process
- Added bootstrap destroy module structure for aws, ali, azure, gcp, and vultr.
- Moved AWS force destroy script to `terraform-hcl-standard/aws-cloud/modules/bootstrap-destroy/destroy.sh`.
- Updated `iac-pipeline-mutli-cloud-bootstrap..yaml` to dynamically invoke the destroy script based on the cloud provider.
- Added placeholders for other cloud providers.
2026-01-02 02:14:20 +00:00
e2a5cdd356 Fix workflow paths for terraform-hcl-standard layout 2025-12-24 11:37:14 +08:00
86084426be Refactor bootstrap destroy cleanup script 2025-12-11 01:32:40 +08:00
Haitao Pan
9ae1d2bf84 ci(terraform): update bootstrap & landingzone pipelines and add validation/notification scripts 2025-11-17 20:34:11 +08:00
shenlan
771ec0635f Enhance landing zone pipelines with validation stages 2025-10-03 18:47:20 +08:00
shenlan
ffb5510382 Refactor workflow steps into reusable scripts 2025-09-29 19:53:11 +08:00
Haitao Pan
d8367ba012 feat(vpn-overlay): dynamic Endpoint switching and WireGuard keys generation
- Support dynamic AllowedIPs and Endpoint based on enable_vless
- Fix wg1 -> wg0 in iptables rules
- Update config files
- Support dynamic WireGuard keys generation in gen_wireguard_keys.sh
2025-04-27 15:28:16 +08:00
Haitao Pan
43a4758a93 feat(k3s): add ansible role and playbook for K3s cluster setup 2025-04-07 21:26:06 +08:00
Haitao Pan
5be8955ff5 feat: enhance WireGuard VPN Overlay deployment and DNAT support
Changes:
- Fixed wg0.conf.j2 template variables
- Refactored wireguard/site logic to support dynamic peer/key selection
- Updated defaults, playbook entry, and install script for consistency

Tested:
 NodePort 443 + DNAT verified from master/slave nodes and external curl
2025-04-06 17:50:32 +08:00
Haitao Pan
cb8dda4fed feat(ansible): improve Linux OS setup role (vhosts/common) 2025-04-05 17:50:43 +08:00
Haitao Pan
d7871dc331 feat(ansible): add Linux OS setup role (vhosts/common) 2025-04-05 17:46:23 +08:00
Haitao Pan
7a1b15416f add scripts/auto-fix-gitleaks.sh 2025-04-05 13:57:43 +08:00
Haitao Pan
98a115b96f feat(ansible): add dynamic inventory and ansible.cfg
- Add ansible.cfg for plugin config
- Enabled Pulumi passphrase auto-load in run.sh
- Add scripts/dynamic_inventory.py with --list, --host, --export-static
- Cleanup: remove legacy inventory.py
2025-04-05 12:38:31 +08:00
Haitao Pan
fe99e929de Simplify Pulumi passphrase and teardown process
- Auto-load ~/.pulumi-passphrase if available
- Improve 'down' command: destroy → refresh → stack rm
- Default EC2 instances to associate public IP
- Cleaned up help menu and removed old 'delete' logic
2025-03-31 10:09:30 +08:00
Haitao Pan
ceef428b07 feat(script): async destroy with auto refresh 2025-03-30 20:45:28 +08:00
Haitao Pan
af8a848faa feat(iac): 完善 EC2/VPC/SG 模块,支持 AMI 自动解析与资源依赖控制
- 💡 支持 config/ 中通过关键词定义 EC2 实例的 AMI(如 'Ubuntu 22.04')
- ⚙️ 安全组规则支持 source_ranges/egress_ranges 配置化控制
-  增强 create_instances 函数,支持 user_data、spot/ondemand、TTL、owner 等标签
- 🔗 自动构建依赖关系,确保 VPC/Subnet/SG 完成后再部署 EC2
- ☁️ 使用 boto3 检查 AWS credentials,有效支持 ~/.aws/config profile 管理
- 🛠️ 支持 config 中动态启用/禁用模块(vpc/security_group/ec2)
- 🌐 完整验证 pulumi up/destroy/refresh 流程,确保干净状态

This commit enables modular, dynamic provisioning of AWS VPC, EC2 and Security Groups with Pulumi.
Supports keyword-based AMI resolution, secure profile-based credential loading, and full lifecycle control.
2025-03-30 20:30:08 +08:00
Haitao Pan
30779f819d feat(run.sh): add pip config for using Tsinghua PyPI mirror 2025-03-29 13:18:45 +08:00
Haitao Pan
81410d56bc fix(run.sh): ensure Pulumi uses virtualenv Python and auto-install SDK if missing 2025-03-29 13:13:43 +08:00
Haitao Pan
892302a5b5 feat: add venv support and restructure Pulumi config for non-interactive IaC workflow
- Use PROJECT_ROOT for all module paths (Pulumi, Terraform, Ansible)
- Move requirements.txt to project root and auto-create .venv if missing
- Setup pip dependencies before pulumi up
- Add non-interactive pulumi stack select/init
- Clean up old pulumi/requirements.txt
- Update .gitignore to exclude .venv, Pulumi and Terraform state files
2025-03-29 12:58:44 +08:00
Haitao Pan
c2020da184 feat(iac): Refactor structure and support multi-environment config loading
- Add config/sit and other environment-specific config directories
- Refactor deploy.py to support CONFIG_PATH environment variable
- Enable automatic merging of config/*/*.yaml files
- Enhance run.sh with Pulumi/Ansible/Terraform initialization checks
- Add inventory.py to dynamically generate Ansible hosts
- Improve ec2_instance.py with modular instance creation
- Organize base.yaml, vpc.yaml and related config files"
2025-03-29 11:09:24 +08:00
Haitao Pan
cb57cb6782 add scripts/clean_git_binaries_fixed.sh 2025-03-28 20:12:48 +08:00