diff options
Diffstat (limited to 'fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version')
10 files changed, 134 insertions, 0 deletions
diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/README.md b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/README.md new file mode 100644 index 0000000000..0ab18bdbb8 --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/README.md @@ -0,0 +1,38 @@ +<!-- BEGIN_TF_DOCS --> +## Requirements + +| Name | Version | +|------|---------| +| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.1.4 | +| <a name="requirement_aws"></a> [aws](#requirement\_aws) | ~> 4.3.0 | + +## Providers + +| Name | Version | +|------|---------| +| <a name="provider_aws"></a> [aws](#provider\_aws) | ~> 4.3.0 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [aws_elastic_beanstalk_application_version.application_version](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/elastic_beanstalk_application_version) | resource | +| [aws_s3_bucket.bucket](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/s3_bucket) | resource | +| [aws_s3_object.object](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/s3_object) | resource | + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| <a name="input_application_description"></a> [application\_description](#input\_application\_description) | Short description of the Application Version. | `string` | `"Beanstalk Application"` | no | +| <a name="input_application_name"></a> [application\_name](#input\_application\_name) | Name of the Beanstalk Application the version is associated. | `string` | `"Beanstalk"` | no | +| <a name="input_application_version_name"></a> [application\_version\_name](#input\_application\_version\_name) | Unique name for the this Application Version. | `string` | `"Beanstalk Version"` | no | + +## Outputs + +No outputs. +<!-- END_TF_DOCS -->
\ No newline at end of file diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/main.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/main.tf new file mode 100644 index 0000000000..652509225f --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/main.tf @@ -0,0 +1,4 @@ +module "elastic_beanstalk_application_version" { + source = "../" + application_description = var.application_description +} diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/output.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/output.tf new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/output.tf diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/providers.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/providers.tf new file mode 100644 index 0000000000..5ff54f0d65 --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/providers.tf @@ -0,0 +1,3 @@ +provider "aws" { + region = var.region +}
\ No newline at end of file diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/variables.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/variables.tf new file mode 100644 index 0000000000..12af1d64c6 --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/variables.tf @@ -0,0 +1,11 @@ +variable "region" { + description = "AWS Region." + type = string + default = "us-east-1" +} + +variable "application_description" { + description = "Short description of the application." + type = string + default = "Beanstalk Application" +} diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/versions.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/versions.tf new file mode 100644 index 0000000000..af1be4a4e1 --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/example/versions.tf @@ -0,0 +1,9 @@ +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = ">= 4.3.0" + } + } + required_version = ">= 1.1.4" +} diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/main.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/main.tf new file mode 100644 index 0000000000..ace3aebbbc --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/main.tf @@ -0,0 +1,28 @@ +locals { + key = "${var.application_name_version}-${uuid()}.zip" + tags = { + "Name" = "${var.application_name}" + "Environment" = "${var.application_name}" + } +} + +# Create elastic beanstalk Application Version +# resource "aws_s3_bucket" "bucket" { +# bucket = var.application_bucket +# tags = local.tags +# } +resource "aws_s3_object" "object" { + bucket = var.application_bucket + key = local.key + source = var.application_source + tags = local.tags +} + +resource "aws_elastic_beanstalk_application_version" "application_version" { + application = var.application_name + description = var.application_description + bucket = var.application_bucket + key = aws_s3_object.object.id + name = var.application_name_version + tags = local.tags +} diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/output.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/output.tf new file mode 100644 index 0000000000..4262bbe6cf --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/output.tf @@ -0,0 +1,3 @@ +output "application_version" { + value = aws_elastic_beanstalk_application_version.application_version.name +} diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/variables.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/variables.tf new file mode 100644 index 0000000000..8d7dd45755 --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/variables.tf @@ -0,0 +1,29 @@ +variable "application_bucket" { + description = "The name of the bucket." + type = string + default = "elasticbeanstalk-eu-central-1" +} + +variable "application_description" { + description = "Short description of the Application Version." + type = string + default = "Beanstalk Application" +} + +variable "application_name" { + description = "Name of the Beanstalk Application." + type = string + default = "beanstalk" +} + +variable "application_name_version" { + description = "Version of the Beanstalk Application." + type = string + default = "beanstalk-1" +} + +variable "application_source" { + description = "The source file with application code." + type = string + default = "app.zip" +} diff --git a/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/versions.tf b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/versions.tf new file mode 100644 index 0000000000..1c82745471 --- /dev/null +++ b/fdio.infra.terraform/terraform-aws-elastic-beanstalk-application-version/versions.tf @@ -0,0 +1,9 @@ +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = ">= 5.7.0" + } + } + required_version = ">= 1.4.2" +} |