[PATCH v4 0/8] aws: add dynamic kconfig support
Luis Chamberlain <[email protected]>
| Newsgroups | dev.linux.lists.kdevops |
|---|---|
| Message-ID | <[email protected]> |
Chuck, in hopes to help move forward faster, I've taken your scripts and tried to base the idea on it instead. Changes on this v4: - Adopt Chuck's script - Make AWS ssh keys unique to avoid clashes - Use a ~/.cache/ for json data - Uber optimize for speed This shaves down generation by *a lot*. If you want to test: https://github.com/linux-kdevops/kdevops/tree/mcgrof/aws-dynamic-cloud-config-v4 If you agree to it, please just merge :) Chuck Lever (1): terraform/aws: Add scripts to gather provider resource information Luis Chamberlain (7): aws: prevent SSH key conflicts across multiple kdevops directories aws: add optimized Kconfig generator using Chuck's scripts aws: integrate dynamic Kconfig generation with make targets aws: add cloud billing support with make cloud-bill aws: replace static Kconfig files with dynamically generated ones aws: add GPU instance defconfigs for AI/ML workloads docs: add documentation for dynamic cloud configuration defconfigs/aws-gpu-g5-xlarge | 36 + defconfigs/aws-gpu-p5-48xlarge | 36 + docs/cloud-dynamic-config.md | 272 ++++++ playbooks/roles/gen_tfvars/defaults/main.yml | 2 + .../templates/aws/terraform.tfvars.j2 | 3 +- scripts/aws-costs.sh | 39 + scripts/aws-parse-costs.py | 98 +++ scripts/aws_ssh_key_name.py | 165 ++++ scripts/dynamic-cloud-kconfig.Makefile | 60 +- scripts/generate_cloud_configs.py | 78 +- terraform/Kconfig.ssh | 14 +- terraform/aws/Kconfig | 5 +- terraform/aws/kconfigs/Kconfig.compute | 118 --- terraform/aws/kconfigs/Kconfig.location | 679 --------------- terraform/aws/kconfigs/Kconfig.ssh | 79 ++ .../aws/kconfigs/instance-types/Kconfig.c7a | 28 - .../aws/kconfigs/instance-types/Kconfig.i4i | 33 - .../aws/kconfigs/instance-types/Kconfig.im4gn | 25 - .../kconfigs/instance-types/Kconfig.is4gen | 25 - .../aws/kconfigs/instance-types/Kconfig.m5 | 48 -- .../aws/kconfigs/instance-types/Kconfig.m7a | 57 -- terraform/aws/scripts/aws_ami_info.py | 771 ++++++++++++++++++ terraform/aws/scripts/aws_regions_info.py | 371 +++++++++ terraform/aws/scripts/ec2_instance_info.py | 540 ++++++++++++ terraform/aws/scripts/generate_aws_kconfig.py | 474 +++++++++++ 25 files changed, 3027 insertions(+), 1029 deletions(-) create mode 100644 defconfigs/aws-gpu-g5-xlarge create mode 100644 defconfigs/aws-gpu-p5-48xlarge create mode 100644 docs/cloud-dynamic-config.md create mode 100755 scripts/aws-costs.sh create mode 100755 scripts/aws-parse-costs.py create mode 100755 scripts/aws_ssh_key_name.py delete mode 100644 terraform/aws/kconfigs/Kconfig.compute delete mode 100644 terraform/aws/kconfigs/Kconfig.location create mode 100644 terraform/aws/kconfigs/Kconfig.ssh delete mode 100644 terraform/aws/kconfigs/instance-types/Kconfig.c7a delete mode 100644 terraform/aws/kconfigs/instance-types/Kconfig.i4i delete mode 100644 terraform/aws/kconfigs/instance-types/Kconfig.im4gn delete mode 100644 terraform/aws/kconfigs/instance-types/Kconfig.is4gen delete mode 100644 terraform/aws/kconfigs/instance-types/Kconfig.m5 delete mode 100644 terraform/aws/kconfigs/instance-types/Kconfig.m7a create mode 100755 terraform/aws/scripts/aws_ami_info.py create mode 100755 terraform/aws/scripts/aws_regions_info.py create mode 100755 terraform/aws/scripts/ec2_instance_info.py create mode 100755 terraform/aws/scripts/generate_aws_kconfig.py -- 2.51.0