Commit Graph

4 Commits

Author SHA1 Message Date
shenlan
c71a76c0d4 feat: add Vultr landing zone baseline 2025-09-29 18:50:37 +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
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
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