app
Boilerplate for an application running on ECS.
Example
In vars-common.yml:
In vars-app-rain.yml:
StackName: "app-rain"
AppName: "rain"
WithExampleImage: true
WithDailyShutdown: false
WithAlbHostRouting: true
WithOpenTelemetrySidecar: false
WithVPCEndpoints: false
Render the template:
boilerplate \
--template-url . \
--var-file vars-common.yml \
--var-file vars-app-rain.yml \
--output-folder app-rain \
--non-interactive
Variables
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
IncludeLockFile |
Include a Terraform lock file. | bool |
false |
no |
AppName |
Application name | string |
n/a |
yes |
AppReadOnlyRootFileSystem |
Enable read-only root filesystem. | bool |
false |
no |
AppEcsExec |
Enable ECS Exec. | bool |
false |
no |
ExampleImage |
Use Nginx example image. | map |
{"Enable": false} |
no |
AlbHostRouting |
Add ALB host routing. See: - https://github.com/oslokommune/golden-path-iac/tree/main/terraform/modules/alb-tg-host-routing - https://github.com/oslokommune/golden-path-iac/tree/main/terraform/modules/alb-tg-host-routing-apex | map |
{"Enable": false, "Internal": true, "Subdomain": {"Enable": false, "TargetGroupTargetStickiness": false}, "ApexDomain": {"Enable": false, "TargetGroupTargetStickiness": false}} |
no |
DatabaseConnectivity |
Add database. | map |
{"Enable": false} |
no |
OpenTelemetrySidecar |
Add OpenTelemetry sidecar to collect Prometheus metrics. | map |
{"Enable": false} |
no |
DeploymentPipelineV2 |
Enable the next-generation deployment pipeline. Replaces IamForCicd. | map |
{"Enable": false} |
no |
TelemetryCollection |
Configure telemetry collection including OpenTelemetry collector for logs/traces/metrics, Java auto-instrumentation, and Datadog agent for container monitoring. | map |
{"Enable": false, "AutoInstrumentation": {"Enable": false, "Runtime": "java"}, "DatadogAgent": {"Enable": false}} |
no |
Xray |
Enable AWS X-Ray tracing. | map |
{"Enable": false} |
no |
VpcEndpoints |
Enable VPC endpoints. | map |
{"Enable": false} |
no |
ServiceConnect |
Enable Amazon ECS Service Connect for service discovery. Enable this if you want to easily discover and connect to other services in your ECS cluster. | map |
{"Enable": false} |
no |
DailyShutdown |
Enable daily shutdown of the ECS service. | map |
{"Enable": false} |
no |
IamForCicd |
Enable IAM roles for CI/CD. | map |
{"Enable": false, "AppGitHubRepo": null, "IacGitHubRepo": null, "AssumableCdRole": false, "EcsDeployFromAppRepo": false} |
no |
DeploymentCircuitBreaker |
Enable deployment circuit breaker for ECS service. | map |
{"Enable": false} |
no |
Ecr |
Enable ECR | map |
{"Enable": true} |
no |