Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/schubergphilis/terraform-aws-mcaf-ipam
Terraform module to manage AWS VPC IPAM.
https://github.com/schubergphilis/terraform-aws-mcaf-ipam
aws terraform terraform-module
Last synced: 1 day ago
JSON representation
Terraform module to manage AWS VPC IPAM.
- Host: GitHub
- URL: https://github.com/schubergphilis/terraform-aws-mcaf-ipam
- Owner: schubergphilis
- License: apache-2.0
- Created: 2024-07-15T08:45:47.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-07-15T09:41:55.000Z (2 months ago)
- Last Synced: 2024-09-18T04:36:13.606Z (10 days ago)
- Topics: aws, terraform, terraform-module
- Language: HCL
- Homepage: https://registry.terraform.io/modules/schubergphilis/mcaf-ipam/aws/latest
- Size: 16.6 KB
- Stars: 0
- Watchers: 16
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# terraform-aws-mcaf-ipam
Terraform module to manage AWS VPC IPAM.
## Usage
```
module "ipam" {
source = "github.com/schubergphilis/terraform-aws-mcaf-ipam?ref=VERSION"aws_ipam_pool = ["10.64.0.0/12", "10.80.0.0/16"]
pools = {
sandbox = {
cidr = ["10.64.0.0/16", "10.65.0.0/16"]
shared_principal = ["arn:aws:organizations::123456789123:ou/o-a1a1a1a1a1/ou-1a1a-1a1a1a1a"]
}
}
}
```**NOTE**: Review the documentation for the permissions needed to integrate with [AWS Organizations](https://docs.aws.amazon.com/vpc/latest/ipam/choose-single-user-or-orgs-ipam.html): The following Terraform resources need to be deployed prior to deploying this module in the AWS Organizations admin account:
```
resource "aws_ram_sharing_with_organization" "default" {}resource "aws_vpc_ipam_organization_admin_account" "default" {
delegated_admin_account_id = "123456789123"
}
```## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
| [aws](#requirement\_aws) | >= 5.24.0 |## Providers
| Name | Version |
|------|---------|
| [aws](#provider\_aws) | >= 5.24.0 |## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [aws_ram_principal_association.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ram_principal_association) | resource |
| [aws_ram_resource_association.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ram_resource_association) | resource |
| [aws_ram_resource_share.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ram_resource_share) | resource |
| [aws_vpc_ipam.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_ipam) | resource |
| [aws_vpc_ipam_pool.aws_pool](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_ipam_pool) | resource |
| [aws_vpc_ipam_pool.environment](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_ipam_pool) | resource |
| [aws_vpc_ipam_pool_cidr.aws_pool_cidr](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_ipam_pool_cidr) | resource |
| [aws_vpc_ipam_pool_cidr.environment](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_ipam_pool_cidr) | resource |
| [aws_region.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [aws\_ipam\_pool](#input\_aws\_ipam\_pool) | The top level CIDR(s) available for usage on AWS | `list(string)` | n/a | yes |
| [pools](#input\_pools) | n/a |map(object({| n/a | yes |
cidr = list(string)
shared_principal = optional(list(string))
tags = optional(map(string))
}))
| [ipam\_description](#input\_ipam\_description) | A description for the IPAM | `string` | `"Organization IPAM"` | no |
| [tags](#input\_tags) | Map of tags to set on Terraform created resources | `map(string)` | `{}` | no |## Outputs
| Name | Description |
|------|-------------|
| [ipam\_pool\_id](#output\_ipam\_pool\_id) | The ID of the AWS IPAM pool |
| [ipam\_sub\_pools\_ids](#output\_ipam\_sub\_pools\_ids) | The IDs of the sub pools of the AWS IPAM pool |## Licensing
100% Open Source and licensed under the Apache License Version 2.0. See [LICENSE](https://github.com/schubergphilis/terraform-aws-mcaf-ipam/blob/main/LICENSE) for full details.