Skip to content

Commit 2017391

Browse files
authored
ECS Support (#47)
* Small tweak in docker-start * Changing for and * Set package architecture * Initial ECS commit * Adding missing ecs additional tags * small tweaks * more fixes * ecs-enable and module wrapper * Adding ECS Enable * Fixing bitops-config * Typo ;; * Enable missing * changed null for empty * Debugging ports * Removed ELB name * Name fix * Fixing ports * Adding testing role arn * Changing container name to resource identifier * Fix name v2 * Making resources unique * Fixing name * Fix name v3 * Fixes in ECS * Fixes * Fixes in vars * Making ecs task cw dependant * typo * Commenting out code * debug * Testing changes * typo * Missing comma * Changes * fixes * fixes 2 * Fixing role * Fixing role * Cleanup and bump * Cleanup, rearrange, add R53 option * Adding call for ecs to r53 * Fixing ssl-cert deps * Adding fe/be to ECS * wrong dupe * Small index fixes * Fixing outputs * Small local vars values fix * Adding dependency * Fixing dep * fix code for sgs * Fixing sg ports rules if dupe ports are found * changing ssl logic * Making ECS more flexible * Fix json input * Small typo * Cleanup aws_ecs_task_er * Rollback distinct * Removing default from vars * Testing data source repeat * ECS Change in role * Fixing vars indexes * Fixing name * Fixes in container defn * Debugging * Re-defining vars * Var testing * Testing empty json * Fixing default * Fixing missing comma * Var fix * Removing s3 logs block * ECS without env * Testing task definition different approach * Fixing length * Fixing missing indexes * Fixing index in some name * var to local * Trying to add envs * Fixing envs v2 * Testing v3 * Don't think it'll work * Testing with a var * Testing with env empty * Testing incoming ENV to Terra * Typo * Testing with file_list * Testing envs * Adding env-vars files * Playing sensibly * Fixing vars * Fixing how we call env-vars variable * Add listeners and fix vars inputs * Removing env_vars * Fixing conditional * Removing S3 logs * Changing some order and fixing bucket logs * Typo * Fixing ECS bucket arn * last chance for s3 logging * Last chance v2 * Fixing to OVERRIDE and small logging details * Adding autoscaling * Changing some * Cleanup * Name typo * Typo in index * v2 * Var typos * Debugging lb redirects * Debugging ALB * Debugging redirect v3 * Fixing acition.yaml * Changing type * Another debug * Changing conditional order * How about now * Testing forward for HTTPS * Playing with ALB * Adding target for listeners * Debugging env-vars * Removing debug * Debugging files locations * Debugging files * Getting file content * Debug cleanup + sensitive json * Adding json file inputs * Task definition list merge * typo * Reading file directly * Typo in path * Adding jsondecode * v2 * Testing cleaner approach * v3 * debugging loading container def'ns * v2 * v3 * v4 * V5 * v6 * V7 * v8 * v9 * v10 * v11 * v12 * Making incoming files sensible * Fixing task_count * Fixing names * Fix * Typo in bucket policy * Removing bucket policy * Removing s3 bucket logging from ecs * Cosmetic typo fix * Typo in cloudwatch defn * Adding option for task/container cpu-mem Making path optional, based on input * Typo & reorder * Typo in var_name * Typo in var name * Lentgh fix * Debugging for_each * v2 * v3 * Fixing redirects for main listener * Fixing redirect listeners creation when no redirect is enabled * Cleanup * Missing [count.index] * More missing indexes * Adding network mode option * Var mapping fix * Fixing app image count * Huge finishing bump for ECS * Fixing index * Cosmetic changes * Fixes for lb paths naming * Cosmetics v2
1 parent 76b13d4 commit 2017391

File tree

15 files changed

+1014
-10
lines changed

15 files changed

+1014
-10
lines changed

.gitignore

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
local.sh
2-
*.env
32

43
# Terraform
54
*.terraform.lock*
@@ -16,5 +15,4 @@ terraform-*
1615
operations/deployment/terraform/inventory.yaml
1716

1817
*.pem
19-
20-
.vscode/
18+
.vscode/

README.md

Lines changed: 84 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ jobs:
6161
1. [RDS](#rds-inputs)
6262
1. [Amazon Aurora Inputs](#aurora-inputs)
6363
1. [Docker](#docker-inputs)
64+
1. [ECS](#ecs-inputs)
6465
1. [ECR](#ecr-inputs)
6566
1. [EKS](#eks-inputs)
6667
@@ -234,7 +235,7 @@ The following inputs can be used as `step.with` keys
234235
| `aws_rds_db_instance_class`| String | DB instance server type. Defaults to `db.t3.micro`. |
235236
| `aws_rds_db_user`| String | Username for the db. Defaults to `dbuser`. |
236237
| `aws_rds_cloudwatch_logs_exports`| String | Set of log types to enable for exporting to CloudWatch logs. Defaults to `postgresql`. MySQL and MariaDB: `audit, error, general, slowquery`. PostgreSQL: `postgresql, upgrade`. MSSQL: `agent , error`. Oracle: `alert, audit, listener, trace`. |
237-
| `aws_rds_additional_tags` | JSON | Add additional tags to the terraform [default tags](https://www.hashicorp.com/blog/default-tags-in-the-terraform-aws-provider), any tags put here will be added to efs provisioned resources.|
238+
| `aws_rds_additional_tags` | JSON | Add additional tags to the terraform [default tags](https://www.hashicorp.com/blog/default-tags-in-the-terraform-aws-provider), any tags put here will be added to RDS provisioned resources.|
238239
<hr/>
239240
<br/>
240241

@@ -276,6 +277,43 @@ The following inputs can be used as `step.with` keys
276277
<hr/>
277278
<br/>
278279

280+
#### **ECS Inputs***
281+
| Name | Type | Description |
282+
|------------------|---------|------------------------------------|
283+
| `aws_ecs_enable`| Boolean | Toggle ECS Creation. Defaults to `false`. |
284+
| `aws_ecs_service_name`| String | Elastic Container Service name. |
285+
| `aws_ecs_cluster_name`| String | Elastic Container Service cluster name. |
286+
| `aws_ecs_service_launch_type`| String | Configuration type. Could be `EC2`, `FARGATE` or `EXTERNAL`. Defaults to `FARGATE`. |
287+
| `aws_ecs_task_type`| String | Configuration type. Could be `EC2`, `FARGATE` or empty. Will default to `aws_ecs_service_launch_type` if none defined. (Blank if `EXTERNAL`). |
288+
| `aws_ecs_task_name`| String | Elastic Container Service task name. If task is defined with a JSON file, should be the same as the container name. |
289+
| `aws_ecs_task_execution_role`| String | Elastic Container Service task execution role name from IAM. Defaults to `ecsTaskExecutionRole`. |
290+
| `aws_ecs_task_json_definition_file`| String | Name of the json file containing task definition. Overrides every other input. |
291+
| `aws_ecs_task_network_mode`| String | Network type to use in task definition. One of `none`, `bridge`, `awsvpc`, and `host`. |
292+
| `aws_ecs_task_cpu`| String | Task CPU Amount. |
293+
| `aws_ecs_task_mem`| String | Task Mem Amount. |
294+
| `aws_ecs_container_cpu`| String | Container CPU Amount. |
295+
| `aws_ecs_container_mem`| String | Container Mem Amount. |
296+
| `aws_ecs_node_count`| String | Node count for ECS Cluster. |
297+
| `aws_ecs_app_image`| String | Name of the container image to be used. |
298+
| `aws_ecs_security_group_name`| String | ECS Secruity group name. |
299+
| `aws_ecs_assign_public_ip`| Boolean | Assign public IP to node. |
300+
| `aws_ecs_container_port`| String | Comma separated list of container ports. One for each. |
301+
| `aws_ecs_lb_port`| String | Comma serparated list of ports exposed by the load balancer. One for each. |
302+
| `aws_ecs_lb_redirect_enable`| String | Toggle redirect from HTTP and/or HTTPS to the main port. |
303+
| `aws_ecs_lb_container_path`| String | Comma separated list of paths for subsequent deployed containers. Need `aws_ecs_lb_redirect_enable` to be true. eg. api. (For http://bitovi.com/api/). If you have multiple, set them to `api,monitor,prom,,` (This example is for 6 containers) |
304+
| `aws_ecs_autoscaling_enable`| Boolean | Toggle ecs autoscaling policy. |
305+
| `aws_ecs_autoscaling_max_nodes`| String | Max ammount of nodes to scale up to. |
306+
| `aws_ecs_autoscaling_min_nodes`| String | Min ammount of nodes to scale down to. |
307+
| `aws_ecs_autoscaling_max_mem`| String | Define autoscaling max mem. |
308+
| `aws_ecs_autoscaling_max_cpu`| String | Define autoscaling max cpu. |
309+
| `aws_ecs_cloudwatch_enable`| Boolean | Toggle cloudwatch for ECS. Default `false`. |
310+
| `aws_ecs_cloudwatch_lg_name`| String | Log group name. Will default to `aws_identifier` if none. |
311+
| `aws_ecs_cloudwatch_skip_destroy`| Boolean | Toggle deletion or not when destroying the stack. |
312+
| `aws_ecs_cloudwatch_retention_days`| String | Number of days to retain logs. 0 to never expire. Defaults to `14`. |
313+
| `aws_ecs_additional_tags`| JSON | Add additional tags to the terraform [default tags](https://www.hashicorp.com/blog/default-tags-in-the-terraform-aws-provider), any tags put here will be added to ECS provisioned resources.|
314+
<hr/>
315+
<br/>
316+
279317
#### **ECR Inputs**
280318
| Name | Type | Description |
281319
|------------------|---------|------------------------------------|
@@ -300,7 +338,7 @@ The following inputs can be used as `step.with` keys
300338
| `aws_ecr_lifecycle_policy_input` | String | The policy document. This is a JSON formatted string. See more details about [Policy Parameters](http://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html#lifecycle_policy_parameters) in the official AWS docs' |
301339
| `aws_ecr_public_repo_catalog` | String | Catalog data configuration for the repository. Defaults to `{}`.' |
302340
| `aws_ecr_registry_policy_input` | String | The policy document. This is a JSON formatted string' |
303-
| `aws_ecr_additional_tags ` | JSON | Add additional tags to the terraform [default tags](https://www.hashicorp.com/blog/default-tags-in-the-terraform-aws-provider), any tags put here will be added to aurora provisioned resources.|
341+
| `aws_ecr_additional_tags ` | JSON | Add additional tags to the terraform [default tags](https://www.hashicorp.com/blog/default-tags-in-the-terraform-aws-provider), any tags put here will be added to ECR provisioned resources.|
304342
<hr/>
305343
<br/>
306344

@@ -489,6 +527,50 @@ Additional details about the cluster that's created:
489527

490528
> _**For more details**, see [link-to-be-updated](operations/deployment/terraform/postgres.tf)_
491529
530+
531+
## ECS Deployment example
532+
Say you have a frontend and backend deployment. Backend will live and listen on bitovi.com/api/
533+
534+
535+
### Basic example
536+
```yaml
537+
name: Basic deploy
538+
on:
539+
push:
540+
branches: [ main ]
541+
542+
jobs:
543+
EC2-Deploy:
544+
runs-on: ubuntu-latest
545+
steps:
546+
- id: deploy
547+
uses: bitovi/github-actions-deploy-commons@main # <--- Check version to use, main for now.
548+
with:
549+
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID_SANDBOX }}
550+
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY_SANDBOX }}
551+
aws_default_region: us-east-1
552+
553+
stack_destroy:
554+
tf_state_bucket: ecs-leo-testing
555+
tf_state_bucket_destroy:
556+
557+
aws_ecs_enable: true
558+
aws_ecs_task_name: frontend,backend
559+
aws_ecs_task_network_mode: awsvpc
560+
aws_ecs_task_cpu: 1024,2048
561+
aws_ecs_task_mem: 2048,6144
562+
aws_ecs_app_image: 123.dkr.ecr.us-east-1.amazonaws.com/testing-repo:fe,123.dkr.ecr.us-east-1.amazonaws.com/testing-repo-leo:be
563+
aws_ecs_assign_public_ip: true
564+
aws_ecs_container_port: 3000,3001
565+
aws_ecs_lb_port: 3000,3001
566+
aws_ecs_lb_redirect_enable: true
567+
aws_ecs_lb_container_path: 'api'
568+
aws_ecs_cloudwatch_enable: true
569+
aws_r53_enable: true
570+
domain_name: bitovi.com
571+
aws_ecs_additional_tags: '{\"key\":\"value\",\"key2\":\"value2\"}'
572+
```
573+
492574
## Made with BitOps
493575
[BitOps](https://bitops.sh) allows you to define Infrastructure-as-Code for multiple tools in a central place. This action uses a BitOps [Operations Repository](https://bitops.sh/operations-repo-structure/) to set up the necessary Terraform and Ansible to create infrastructure and deploy to it.
494576

action.yaml

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -427,6 +427,101 @@ inputs:
427427
description: 'Number of days to retain logs. 0 to never expire.'
428428
required: false
429429

430+
# AWS_ECS
431+
aws_ecs_enable:
432+
description: 'Toggle ECS Creation'
433+
required: false
434+
aws_ecs_service_name:
435+
description: 'Elastic Container Service name'
436+
required: false
437+
aws_ecs_cluster_name:
438+
description: 'Elastic Container Service cluster name'
439+
required: false
440+
aws_ecs_service_launch_type:
441+
description: 'Configuration type. Could be EC2, FARGATE or EXTERNAL'
442+
required: false
443+
aws_ecs_task_type:
444+
description: 'Configuration type. Could be EC2, FARGATE or empty. Will default to aws_ecs_service_launch_type if none defined. (Blank if EXTERNAL)'
445+
required: false
446+
aws_ecs_task_name:
447+
description: 'Elastic Container Service task name'
448+
required: false
449+
aws_ecs_task_execution_role:
450+
description: 'Elastic Container Service task execution role name from IAM. Defaults to "ecsTaskExecutionRole"'
451+
required: false
452+
aws_ecs_task_json_definition_file:
453+
description: 'Name of the json file containing task definition. Overrides every other input.'
454+
required: false
455+
aws_ecs_task_network_mode:
456+
description: 'Network type to use in task definition'
457+
required: false
458+
aws_ecs_task_cpu:
459+
description: 'Task CPU Amount'
460+
required: false
461+
aws_ecs_task_mem:
462+
description: 'Task Mem Amount'
463+
required: false
464+
aws_ecs_container_cpu:
465+
description: 'Container CPU Amount'
466+
required: false
467+
aws_ecs_container_mem:
468+
description: 'Container Mem Amount'
469+
required: false
470+
aws_ecs_node_count:
471+
description: 'Node count for ECS Cluster'
472+
required: false
473+
aws_ecs_app_image:
474+
description: 'Name of the image to be used'
475+
required: false
476+
aws_ecs_security_group_name:
477+
description: 'ECS Secruity group name'
478+
required: false
479+
aws_ecs_assign_public_ip:
480+
description: 'Assign public IP to node'
481+
required: false
482+
aws_ecs_container_port:
483+
description: 'Comma separated list of container ports'
484+
required: false
485+
aws_ecs_lb_port:
486+
description: 'Comma serparated list of ports exposed by the load balancer'
487+
required: false
488+
aws_ecs_lb_redirect_enable:
489+
description: 'Toggle redirect from HTTP and/or HTTPS to the main port.'
490+
required: false
491+
aws_ecs_lb_container_path:
492+
description: 'Path for subsequent deployed images. eg. api.'
493+
required: false
494+
aws_ecs_autoscaling_enable:
495+
description: 'Toggle ecs autoscaling policy'
496+
required: false
497+
aws_ecs_autoscaling_max_nodes:
498+
description: 'Max ammount of nodes to scale up to.'
499+
required: false
500+
aws_ecs_autoscaling_min_nodes:
501+
description: 'Min ammount of nodes to scale down to.'
502+
required: false
503+
aws_ecs_autoscaling_max_mem:
504+
description: 'Some'
505+
required: false
506+
aws_ecs_autoscaling_max_cpu:
507+
description: 'Some'
508+
required: false
509+
aws_ecs_cloudwatch_enable:
510+
description: "Toggle cloudwatch for ECS. Default 'false'"
511+
reuired: false
512+
aws_ecs_cloudwatch_lg_name:
513+
description: "Log group name. Will default to aws_identifier if none."
514+
reuired: false
515+
aws_ecs_cloudwatch_skip_destroy:
516+
description: "Toggle deletion or not when destroying the stack."
517+
reuired: false
518+
aws_ecs_cloudwatch_retention_days:
519+
description: "Number of days to retain logs. 0 to never expire. Default '14'"
520+
reuired: false
521+
aws_ecs_additional_tags:
522+
description: 'A list of strings that will be added to created resources'
523+
required: false
524+
430525
# AWS ECR
431526
aws_ecr_repo_create:
432527
description: 'Determines whether a repository will be created'
@@ -753,6 +848,39 @@ runs:
753848
DOCKER_CLOUDWATCH_SKIP_DESTROY: ${{ inputs.docker_cloudwatch_skip_destroy }}
754849
DOCKER_CLOUDWATCH_RETENTION_DAYS: ${{ inputs.docker_cloudwatch_retention_days }}
755850

851+
# ECS
852+
AWS_ECS_ENABLE: ${{ inputs.aws_ecs_enable }}
853+
AWS_ECS_SERVICE_NAME: ${{ inputs.aws_ecs_service_name }}
854+
AWS_ECS_CLUSTER_NAME: ${{ inputs.aws_ecs_cluster_name }}
855+
AWS_ECS_SERVICE_LAUNCH_TYPE : ${{ inputs.aws_ecs_service_launch_type }}
856+
AWS_ECS_TASK_TYPE : ${{ inputs.aws_ecs_task_type }}
857+
AWS_ECS_TASK_NAME: ${{ inputs.aws_ecs_task_name }}
858+
AWS_ECS_TASK_EXECUTION_ROLE: ${{ inputs.aws_ecs_task_execution_role }}
859+
AWS_ECS_TASK_JSON_DEFINITION_FILE: ${{ inputs.aws_ecs_task_json_definition_file }}
860+
AWS_ECS_TASK_NETWORK_MODE: ${{ inputs.aws_ecs_task_network_mode }}
861+
AWS_ECS_TASK_CPU: ${{ inputs.aws_ecs_task_cpu }}
862+
AWS_ECS_TASK_MEM: ${{ inputs.aws_ecs_task_mem }}
863+
AWS_ECS_CONTAINER_CPU: ${{ inputs.aws_ecs_container_cpu }}
864+
AWS_ECS_CONTAINER_MEM: ${{ inputs.aws_ecs_container_cpu }}
865+
AWS_ECS_NODE_COUNT: ${{ inputs.aws_ecs_node_count }}
866+
AWS_ECS_APP_IMAGE: ${{ inputs.aws_ecs_app_image }}
867+
AWS_ECS_SECURITY_GROUP_NAME: ${{ inputs.aws_ecs_security_group_name }}
868+
AWS_ECS_ASSIGN_PUBLIC_IP: ${{ inputs.aws_ecs_assign_public_ip }}
869+
AWS_ECS_CONTAINER_PORT: ${{ inputs.aws_ecs_container_port }}
870+
AWS_ECS_LB_PORT: ${{ inputs.aws_ecs_lb_port }}
871+
AWS_ECS_LB_REDIRECT_ENABLE: ${{ inputs.aws_ecs_lb_redirect_enable }}
872+
AWS_ECS_LB_CONTAINER_PATH : ${{ inputs.aws_ecs_lb_container_path }}
873+
AWS_ECS_AUTOSCALING_ENABLE: ${{ inputs.aws_ecs_autoscaling_enable }}
874+
AWS_ECS_AUTOSCALING_MAX_NODES: ${{ inputs.aws_ecs_autoscaling_max_nodes }}
875+
AWS_ECS_AUTOSCALING_MIN_NODES: ${{ inputs.aws_ecs_autoscaling_min_nodes }}
876+
AWS_ECS_AUTOSCALING_MAX_MEM: ${{ inputs.aws_ecs_autoscaling_max_mem }}
877+
AWS_ECS_AUTOSCALING_MIN_MEM: ${{ inputs.aws_ecs_autoscaling_max_cpu }}
878+
AWS_ECS_CLOUDWATCH_ENABLE : ${{ inputs.aws_ecs_cloudwatch_enable }}
879+
AWS_ECS_CLOUDWATCH_LG_NAME : ${{ inputs.aws_ecs_cloudwatch_lg_name }}
880+
AWS_ECS_CLOUDWATCH_SKIP_DESTROY : ${{ inputs.aws_ecs_cloudwatch_skip_destroy }}
881+
AWS_ECS_CLOUDWATCH_RETENTION_DAYS : ${{ inputs.aws_ecs_cloudwatch_retention_days }}
882+
AWS_ECS_ADDITIONAL_TAGS: ${{ inputs.aws_ecs_additional_tags }}
883+
756884
# ECR
757885
AWS_ECR_REPO_CREATE: ${{ inputs.aws_ecr_repo_create }}
758886
AWS_ECR_REPO_TYPE: ${{ inputs.aws_ecr_repo_type }}

operations/_scripts/deploy/deploy.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ if [[ $(alpha_only "$TF_STATE_BUCKET_DESTROY") == true ]] && ! [[ $(alpha_only "
7878
[[ $(alpha_only "$AWS_RDS_ENABLE") == true ]] ||
7979
[[ $(alpha_only "$AWS_EFS_ENABLE") == true ]] ||
8080
[[ $(alpha_only "$AWS_EC2_INSTANCE_CREATE") == true ]] ||
81+
[[ $(alpha_only "$AWS_ECS_ENABLE") == true ]] ||
8182
[[ $(alpha_only "$AWS_ECR_REPO_CREATE") == true ]] ||
8283
[[ $(alpha_only "$AWS_EKS_CREATE") == true ]]; then
8384
export TF_STATE_BUCKET_DESTROY="false"

operations/_scripts/generate/generate_bitops_config.sh

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ fi
8080
if ([[ $(alpha_only "$AWS_EC2_INSTANCE_CREATE") == true ]] ||
8181
[[ $(alpha_only "$AWS_EFS_ENABLE") == true ]] ||
8282
[[ $(alpha_only "$AWS_AURORA_ENABLE") == true ]] ||
83-
[[ $(alpha_only "$AWS_RDS_DB_ENABLE") == true ]]) &&
83+
[[ $(alpha_only "$AWS_RDS_DB_ENABLE") == true ]] ||
84+
[[ $(alpha_only "$AWS_ECS_ENABLE") == true ]]) &&
8485
[[ "$(alpha_only $TF_STACK_DESTROY)" != "true" ]]; then
8586
# random_integer.az_select needs to be created before the "full stack" to avoid a potential state dependency locks
8687
targets="$targets
@@ -129,7 +130,7 @@ bitops:
129130
create_bitops_terraform_config aws false targets
130131
fi
131132
else
132-
if [[ $(alpha_only "$AWS_EC2_INSTANCE_CREATE") != "" ]] || [[ $(alpha_only "$AWS_EFS_CREATE") != "" ]] || [[ "$AWS_AURORA_ENABLE" != "" ]] || [[ "$AWS_RDS_DB_ENABLE" != "" ]]; then
133+
if [[ $(alpha_only "$AWS_EC2_INSTANCE_CREATE") != "" ]] || [[ $(alpha_only "$AWS_EFS_ENABLE") != "" ]] || [[ "$AWS_AURORA_ENABLE" != "" ]] || [[ "$AWS_RDS_DB_ENABLE" != "" ]] || [[ "$AWS_ECS_ENABLE" != "" ]]; then
133134
add_terraform_module aws
134135
create_bitops_terraform_config aws true targets
135136
fi
@@ -171,7 +172,8 @@ bitops:
171172
# Ansible - Fetch repo
172173
add_ansible_module clone_repo
173174
# Ansible - Install EFS
174-
if [[ $(alpha_only "$AWS_EFS_CREATE") == true ]] || [[ $(alpha_only "$AWS_EFS_CREATE_HA") == true ]] || [[ "$AWS_EFS_FS_ID" != "" ]]; then
175+
#if [[ $(alpha_only "$AWS_EFS_CREATE") == true ]] || [[ $(alpha_only "$AWS_EFS_CREATE_HA") == true ]] || [[ "$AWS_EFS_FS_ID" != "" ]]; then
176+
if [[ $(alpha_only "AWS_EFS_ENABLE") == true ]]; then
175177
add_ansible_module efs
176178
fi
177179
# Ansible - Install CloudWatch

operations/_scripts/generate/generate_provider.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,10 @@ provider \"aws\" {
6666
done
6767
}
6868

69-
generate_provider_aws aws ec2,r53,elb,efs,vpc,rds,aurora
69+
generate_provider_aws aws ec2,r53,elb,efs,vpc,rds,aurora,ecs
7070
generate_provider_aws ecr ecr
7171
generate_provider_aws eks
7272

73+
cat "${GITHUB_ACTION_PATH}/operations/deployment/terraform/aws/bitovi_provider.tf"
74+
7375
echo "Done with generate_provider.sh"

0 commit comments

Comments
 (0)