Skip to content

Conversation

@spaenleh
Copy link
Member

@spaenleh spaenleh commented Jan 31, 2025

TLDR: In this PR I add support for defining spot instance preferences.

Context

Spot instances are an AWS feature that allows to run you workloads on spare capacity (understand servers that are currently not in use). In order to utilise this idling capacity, AWS makes it available under the FARGATE_SPOT capacity provider. You can reduce costs by up to 70% by using spare capacity.

There are however some caveats to be aware of:

  • spare capacity can be reclaimed by AWS anytime with a 2 min notice, after that notice the container is killed
  • the capacity is not guaranteed, so your container might not start immediately

Knowing this, we can however take advantage of this opportunity for workloads that are stateless and fault tolerant since after making a reclaim notice, fargate will try to find a new capacity to launch your workload. In ideal cases your workload can run without interruption.

It is not recommended to use spot instances for your core application in Production. However it is fine to use it in stage or development environments.

What this PR does

In this PR I add a way to define spot preference for each container and depending on the environnement.

The basic plan is that in Production only iframely is deployed using exclusively spot capacity. Since other services are either stateful (meilisearch), or only deployed as a single task (etherpad, redis, umami, etc) they need to be reliable. the backend uses an alternative strategy: it is always deployed with a base container on the "classic" on-demand target and additional tasks are deployed using spot capacity. This provides a cost effective service while being able to absorb trafic in cases of spikes.

In Stating we use a similar strategy to prod.

In dev all containers are deployed using spot strategy, excluding meilisearch and redis.

@github-actions
Copy link

❌ Error planning Terraform CDK Stack 'graasp-dev'

Error: The process '/opt/hostedtoolcache/node/20.18.2/x64/bin/npx' failed with exit code 1
[2025-01-31T14:47:02.676] [ERROR] default - /home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859
    return new TSError(diagnosticText, diagnosticCodes, diagnostics);
           ^

[2025-01-31T14:47:02.678] [ERROR] default - TSError: ⨯ Unable to compile TypeScript:
constructs/cluster.ts(7,1): error TS6133: 'EcsCapacityProvider' is declared but its value is never read.

    at createTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859:12)
    at reportTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:863:19)
    at getOutput (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1077:36)
    at Object.compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1433:41)
    at Module.m._compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1617:30)
    at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
    at Object.require.extensions.<computed> [as .ts] (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1621:12)
    at Module.load (node:internal/modules/cjs/loader:1288:32)
    at Function.Module._load (node:internal/modules/cjs/loader:1104:12)
    at Module.require (node:internal/modules/cjs/loader:1311:19) {
  diagnosticCodes: [ 6133 ]
}

ERROR: cdktf encountered an error while synthesizing

Synth command: npx ts-node main.ts
Error:         non-zero exit code 1

Command output on stderr:

    /home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859
        return new TSError(diagnosticText, diagnosticCodes, diagnostics);
               ^
    TSError: ⨯ Unable to compile TypeScript:
    constructs/cluster.ts(7,1): error TS6133: 'EcsCapacityProvider' is declared but its value is never read.

        at createTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859:12)
        at reportTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:863:19)
        at getOutput (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1077:36)
        at Object.compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1433:41)
        at Module.m._compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1617:30)
        at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
        at Object.require.extensions.<computed> [as .ts] (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1621:12)
        at Module.load (node:internal/modules/cjs/loader:1288:32)
        at Function.Module._load (node:internal/modules/cjs/loader:1104:12)
        at Module.require (node:internal/modules/cjs/loader:1311:19) {
      diagnosticCodes: [ 6133 ]
    }




⠼  Synthesizing

@github-actions
Copy link

✅ Successfully planned Terraform CDK Stack 'graasp-dev'

Show Plan
graasp-dev  Initializing the backend...
graasp-dev  Successfully configured the backend "s3"! Terraform will automatically
            use this backend unless the backend configuration changes.
graasp-dev  Initializing modules...
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/rds/aws 6.10.0 for graasp-dev-postgres_db_F1D5DB7A...
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance_role_association in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance_role_association
            - graasp-dev-postgres_db_F1D5DB7A.db_option_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_option_group
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_parameter_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_parameter_group
            - graasp-dev-postgres_db_F1D5DB7A.db_subnet_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_subnet_group
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/vpc/aws 5.18.1 for vpc...
graasp-dev  - vpc in .terraform/modules/vpc
graasp-dev  Initializing provider plugins...
graasp-dev  - Finding hashicorp/aws versions matching ">= 5.46.0, >= 5.59.0, >= 5.62.0, 5.83.1"...
graasp-dev  - Finding hashicorp/random versions matching ">= 3.1.0"...
graasp-dev  - Installing hashicorp/aws v5.83.1...
graasp-dev  - Installed hashicorp/aws v5.83.1 (signed by HashiCorp)
graasp-dev  - Installing hashicorp/random v3.6.3...
graasp-dev  - Installed hashicorp/random v3.6.3 (signed by HashiCorp)
            Terraform has created a lock file .terraform.lock.hcl to record the provider
            selections it made above. Include this file in your version control repository
            so that Terraform can guarantee to make the same selections by default when
            you run "terraform init" in the future.
graasp-dev  Terraform has been successfully initialized!

            You may now begin working with Terraform. Try running "terraform plan" to see
            any changes that are required for your infrastructure. All Terraform commands
            should now work.

            If you ever set or change modules or backend configuration for Terraform,
            rerun this command to reinitialize your working directory. If you forget, other
            commands will detect it and remind you to do so if necessary.
graasp-dev  - Fetching hashicorp/random 3.6.3 for linux_amd64...
graasp-dev  - Retrieved hashicorp/random 3.6.3 for linux_amd64 (signed by HashiCorp)
graasp-dev  - Fetching hashicorp/aws 5.83.1 for linux_amd64...
graasp-dev  - Retrieved hashicorp/aws 5.83.1 for linux_amd64 (signed by HashiCorp)
            - Obtained hashicorp/aws checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
            - Obtained hashicorp/random checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
graasp-dev  Success! Terraform has validated the lock file and found no need for changes.
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.random_id.snapshot_identifier[0]: Refreshing state... [id=SHBibw]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Reading...
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Read complete after 0s [id=arn:aws:acm:us-east-1:299720865162:certificate/46cb9d1f-aea8-42de-8232-a5b83f1cc7e2]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_iframely-loggroup_105420D9 (graasp-dev/iframely-loggroup): Refreshing state... [id=/ecs/iframely]
            aws_cloudwatch_log_group.graasp-dev_meilisearch-loggroup_F1AD2775 (graasp-dev/meilisearch-loggroup): Refreshing state... [id=/ecs/meilisearch]
            aws_cloudwatch_log_group.graasp-dev_umami-loggroup_544115BF (graasp-dev/umami-loggroup): Refreshing state... [id=/ecs/umami]
            data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Reading...
            aws_ecs_cluster.cluster (cluster): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Reading...
            data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Reading...
            aws_s3_bucket.graasp-dev-assets_bucket_8930785E (graasp-dev-assets/bucket): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_graasp-loggroup_44ECC8C2 (graasp-dev/graasp-loggroup): Refreshing state... [id=/ecs/graasp]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Read complete after 0s [id=aws]
            aws_s3_bucket.graasp-dev-maintenance_bucket_46B8FAD7 (graasp-dev-maintenance/bucket): Refreshing state... [id=graasp-dev-maintenance]
            aws_cloudwatch_log_group.graasp-dev_redis-loggroup_AFE7CB87 (graasp-dev/redis-loggroup): Refreshing state... [id=/ecs/redis]
graasp-dev  aws_s3_bucket.graasp-dev-file-items_bucket_12606B30 (graasp-dev-file-items/bucket): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Reading...
graasp-dev  aws_s3_bucket.graasp-dev-client_bucket_076446C5 (graasp-dev-client/bucket): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_service_discovery_http_namespace.graasp-dev_namespace_B6F7BA2C (graasp-dev/namespace): Refreshing state... [id=ns-us3rov3ukfoth5ox]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_parameter_group.aws_db_parameter_group.this[0]: Refreshing state... [id=graasp-postgres15-20231009123434812500000001]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Reading...
graasp-dev  data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Read complete after 1s [id=graasp/etherpad]
graasp-dev  module.vpc.aws_vpc.this[0]: Refreshing state... [id=vpc-0b312f17d2e08cb6e]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Read complete after 1s [id=graasp]
graasp-dev  aws_s3_bucket.graasp-dev-h5p_bucket_B545A43B (graasp-dev-h5p/bucket): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket.graasp-dev-apps_bucket_F4170225 (graasp-dev-apps/bucket): Refreshing state... [id=graasp-dev-apps]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Read complete after 0s [id=graasp/explore]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_graasp-library-loggroup_FD22B99E (graasp-dev/graasp-library-loggroup): Refreshing state... [id=/ecs/graasp-library]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_etherpad-loggroup_200385B4 (graasp-dev/etherpad-loggroup): Refreshing state... [id=/ecs/etherpad]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Read complete after 1s [id=arn:aws:acm:eu-central-1:299720865162:certificate/af9d071d-3aa1-4583-905d-ec1efd5515d3]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Read complete after 0s [id=76086537]
graasp-dev  aws_iam_role.graasp-dev_ecs-execution-role_A4D135E8 (graasp-dev/ecs-execution-role): Refreshing state... [id=graasp-dev-ecs-execution-role]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role_policy_attachment.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role-20231009123438644600000004]
graasp-dev  aws_iam_role_policy.graasp-dev_graasp-dev-ecs-execution-role-policies_D65DB830 (graasp-dev/graasp-dev-ecs-execution-role-policies): Refreshing state... [id=graasp-dev-ecs-execution-role:allow-ecr-pull]
graasp-dev  aws_ecs_task_definition.graasp-dev_iframely_4C5E8E3D (graasp-dev/iframely): Refreshing state... [id=iframely]
graasp-dev  aws_ecs_task_definition.graasp-dev_meilisearch_38A3D0B6 (graasp-dev/meilisearch): Refreshing state... [id=meilisearch]
graasp-dev  aws_ecs_task_definition.graasp-dev_redis_E9CE963D (graasp-dev/redis): Refreshing state... [id=redis]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp-library_B38B90C0 (graasp-dev/graasp-library): Refreshing state... [id=graasp-library]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp_54E40EB5 (graasp-dev/graasp): Refreshing state... [id=graasp]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-maintenance_s3-block-public-access_C8FD87F8 (graasp-dev-maintenance/s3-block-public-access): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-maintenance_s3-website-configuration_50149944 (graasp-dev-maintenance/s3-website-configuration): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Read complete after 0s [id=2448502661]
            aws_s3_bucket_ownership_controls.graasp-dev-maintenance_s3-bucket-ownership_1588A828 (graasp-dev-maintenance/s3-bucket-ownership): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-assets_s3-block-public-access_D15DF7EF (graasp-dev-assets/s3-block-public-access): Refreshing state... [id=graasp-dev-assets]
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Reading...
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-assets_s3-website-configuration_6D1735B5 (graasp-dev-assets/s3-website-configuration): Refreshing state... [id=graasp-dev-assets]
            data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Read complete after 0s [id=661570887]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-assets_s3-bucket-ownership_1BE1C46A (graasp-dev-assets/s3-bucket-ownership): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_policy.graasp-dev-maintenance_s3-policy_DA8583B1 (graasp-dev-maintenance/s3-policy): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_policy.graasp-dev-assets_s3-policy_B5DD3F7D (graasp-dev-assets/s3-policy): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-file-items_s3-bucket-ownership_9BB45BB8 (graasp-dev-file-items/s3-bucket-ownership): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-file-items_s3-cors-config_531774F3 (graasp-dev-file-items/s3-cors-config): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-file-items_s3-block-public-access_DD6519C0 (graasp-dev-file-items/s3-block-public-access): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-client_s3-block-public-access_A8DD5DF0 (graasp-dev-client/s3-block-public-access): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-client_s3-website-configuration_A6D7BA4D (graasp-dev-client/s3-website-configuration): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-client_s3-bucket-ownership_7FA8E504 (graasp-dev-client/s3-bucket-ownership): Refreshing state... [id=graasp-dev-client]
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Read complete after 0s [id=3742575001]
graasp-dev  aws_cloudfront_distribution.graasp-dev-maintenance-cloudfront (graasp-dev-maintenance-cloudfront): Refreshing state... [id=EGBVR5KHBTMNX]
graasp-dev  aws_s3_bucket_policy.graasp-dev-client_s3-policy_71B89D07 (graasp-dev-client/s3-policy): Refreshing state... [id=graasp-dev-client]
graasp-dev  module.vpc.aws_default_route_table.default[0]: Refreshing state... [id=rtb-0de0872c207e953b3]
graasp-dev  module.vpc.aws_default_network_acl.this[0]: Refreshing state... [id=acl-06ce6a79ac9494ac3]
graasp-dev  module.vpc.aws_default_security_group.this[0]: Refreshing state... [id=sg-0fd249cba5ab4c742]
graasp-dev  aws_cloudfront_distribution.graasp-dev-assets-cloudfront (graasp-dev-assets-cloudfront): Refreshing state... [id=E1TTPMNH8QPMJP]
graasp-dev  aws_security_group.graasp-dev-postgres_graasp-dev-db-security-group_6A637215 (graasp-dev-postgres/graasp-dev-db-security-group): Refreshing state... [id=sg-009f5a0d494264c65]
graasp-dev  aws_security_group.graasp-dev-redis-security-group (graasp-dev-redis-security-group): Refreshing state... [id=sg-0a7ebce0ecabcd895]
graasp-dev  aws_security_group.graasp-dev-etherpad-security-group (graasp-dev-etherpad-security-group): Refreshing state... [id=sg-0ffb7f564703627af]
graasp-dev  aws_security_group.graasp-dev-lb-security-group (graasp-dev-lb-security-group): Refreshing state... [id=sg-0f07f40e7da03b966]
graasp-dev  aws_security_group.graasp-dev-iframely-security-group (graasp-dev-iframely-security-group): Refreshing state... [id=sg-0ca4813c62c9d17a3]
graasp-dev  aws_security_group.graasp-dev-gatekeeper_graasp-dev-gatekeeper-security-group_92E8E7CC (graasp-dev-gatekeeper/graasp-dev-gatekeeper-security-group): Refreshing state... [id=sg-036836715bbca8a32]
graasp-dev  aws_security_group.graasp-dev-meilisearch-security-group (graasp-dev-meilisearch-security-group): Refreshing state... [id=sg-0b3ce2813b8775eba]
graasp-dev  aws_security_group.graasp-dev-library-security-group (graasp-dev-library-security-group): Refreshing state... [id=sg-07bae39853af00427]
graasp-dev  aws_security_group.graasp-dev-umami-security-group (graasp-dev-umami-security-group): Refreshing state... [id=sg-03d98ff7f2eb798fa]
graasp-dev  aws_security_group.graasp-dev-backend-security-group (graasp-dev-backend-security-group): Refreshing state... [id=sg-014f1fd084973fd06]
graasp-dev  module.vpc.aws_route_table.public[0]: Refreshing state... [id=rtb-09991359fa2a53c1c]
graasp-dev  module.vpc.aws_subnet.public[1]: Refreshing state... [id=subnet-055a0124ce88123b2]
graasp-dev  module.vpc.aws_subnet.public[0]: Refreshing state... [id=subnet-0596b784e2da6e5c6]
graasp-dev  module.vpc.aws_subnet.public[2]: Refreshing state... [id=subnet-01f44d93731acccb7]
graasp-dev  module.vpc.aws_internet_gateway.this[0]: Refreshing state... [id=igw-01955c8cc5f6d5181]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-h5p_s3-website-configuration_5FB93898 (graasp-dev-h5p/s3-website-configuration): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Read complete after 0s [id=1897348743]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-h5p_s3-block-public-access_2D472005 (graasp-dev-h5p/s3-block-public-access): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-h5p_s3-bucket-ownership_418B795B (graasp-dev-h5p/s3-bucket-ownership): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-h5p_s3-cors-config_EC778FA8 (graasp-dev-h5p/s3-cors-config): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_cloudfront_distribution.graasp-dev-client-cloudfront (graasp-dev-client-cloudfront): Refreshing state... [id=E1ZTGZST8787TH]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-apps_s3-website-configuration_7E3F72D4 (graasp-dev-apps/s3-website-configuration): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-apps_s3-block-public-access_05DA1D21 (graasp-dev-apps/s3-block-public-access): Refreshing state... [id=graasp-dev-apps]
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Reading...
            data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Read complete after 0s [id=4070198440]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-apps_s3-bucket-ownership_699CAAD9 (graasp-dev-apps/s3-bucket-ownership): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-postgres_graasp-dev-db-allow-all_0D9DEE53 (graasp-dev-postgres/graasp-dev-db-allow-all): Refreshing state... [id=sgr-0199bcbb086d17111]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-redis-allow-all (graasp-dev-redis-allow-all): Refreshing state... [id=sgr-03673e2379ee73580]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-etherpad-allow-all (graasp-dev-etherpad-allow-all): Refreshing state... [id=sgr-06470ffe6a0df1219]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-etherpad_A95D382C (graasp-dev-postgres/graasp-dev-db-allow-etherpad): Refreshing state... [id=sgr-0ded857153724c35d]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-load-balancer_graasp-dev-allow-all_001EC5EB (graasp-dev-load-balancer/graasp-dev-allow-all): Refreshing state... [id=sgr-08d13e43e33fd5b5a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https_0223BC47 (graasp-dev-load-balancer/allow-https): Refreshing state... [id=sgr-0d7110664852fbdc7]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http-ipv6_91743348 (graasp-dev-load-balancer/allow-http-ipv6): Refreshing state... [id=sgr-084bba5f4b221f189]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https-ipv6_DC496355 (graasp-dev-load-balancer/allow-https-ipv6): Refreshing state... [id=sgr-023719db02da6a2a8]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http_0E987E63 (graasp-dev-load-balancer/allow-http): Refreshing state... [id=sgr-0dbd5cad25b6a1a87]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-etherpad-allow-load-balancer (graasp-dev-etherpad-allow-load-balancer): Refreshing state... [id=sgr-06e2e5786d9ade6fb]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-all_B66B414C (graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-all): Refreshing state... [id=sgr-042fe01dcb13dead6]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-postgres (graasp-dev-allow-gatekeeper-on-postgres): Refreshing state... [id=sgr-0058c3745753e6995]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-iframely-allow-all (graasp-dev-iframely-allow-all): Refreshing state... [id=sgr-03b6e652d0d98bb05]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-inbound-ssh_1B8A7117 (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-inbound-ssh): Refreshing state... [id=sgr-0a51d11a638800750]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-library-allow-all (graasp-dev-library-allow-all): Refreshing state... [id=sgr-03cd64d6e8521413a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-library-allow-load-balancer (graasp-dev-library-allow-load-balancer): Refreshing state... [id=sgr-04e219db366df9a40]
graasp-dev  aws_s3_bucket_policy.graasp-dev-h5p_s3-policy_9DB0282E (graasp-dev-h5p/s3-policy): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-meilisearch (graasp-dev-allow-gatekeeper-on-meilisearch): Refreshing state... [id=sgr-0959c46cb81a9c68e]
            aws_vpc_security_group_egress_rule.graasp-dev-meilisearch-allow-all (graasp-dev-meilisearch-allow-all): Refreshing state... [id=sgr-0418d7a3309cc5d5e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-graasp-backend_E8883EF3 (graasp-dev-postgres/graasp-dev-db-allow-graasp-backend): Refreshing state... [id=sgr-007f1bb79fc0de776]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-iframely-allow-graasp-backend (graasp-dev-iframely-allow-graasp-backend): Refreshing state... [id=sgr-0d4d4b4ffd0b49a87]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-umami-allow-all (graasp-dev-umami-allow-all): Refreshing state... [id=sgr-026fb931c3d9a2d33]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-umami-allow-load-balancer (graasp-dev-umami-allow-load-balancer): Refreshing state... [id=sgr-05a39a274de98821a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-meilisearch-allow-graasp-backend (graasp-dev-meilisearch-allow-graasp-backend): Refreshing state... [id=sgr-0d502c3895f05dc26]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-redis-allow-graasp-backend (graasp-dev-redis-allow-graasp-backend): Refreshing state... [id=sgr-08d29290d8638ef8f]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-backend-allow-load-balancer (graasp-dev-backend-allow-load-balancer): Refreshing state... [id=sgr-0f1f4d5674dff4695]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-umami_425B5740 (graasp-dev-postgres/graasp-dev-db-allow-umami): Refreshing state... [id=sgr-063ed5e713152b283]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-backend-allow-all (graasp-dev-backend-allow-all): Refreshing state... [id=sgr-0f70a895b80fd309e]
graasp-dev  aws_s3_bucket_policy.graasp-dev-apps_s3-policy_708B7B00 (graasp-dev-apps/s3-policy): Refreshing state... [id=graasp-dev-apps]
graasp-dev  module.vpc.aws_route.public_internet_gateway[0]: Refreshing state... [id=r-rtb-09991359fa2a53c1c1080289494]
graasp-dev  module.vpc.aws_route_table_association.public[2]: Refreshing state... [id=rtbassoc-0953114662597b70b]
graasp-dev  module.vpc.aws_route_table_association.public[0]: Refreshing state... [id=rtbassoc-0ba3fbc906b89068b]
graasp-dev  module.vpc.aws_route_table_association.public[1]: Refreshing state... [id=rtbassoc-065b7c3d10a5adb5f]
graasp-dev  aws_cloudfront_distribution.graasp-dev-h5p-cloudfront (graasp-dev-h5p-cloudfront): Refreshing state... [id=E3B7XJV46O4VB4]
graasp-dev  aws_cloudfront_distribution.graasp-dev-apps-cloudfront (graasp-dev-apps-cloudfront): Refreshing state... [id=E354WPS1CZ652D]
graasp-dev  aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/iframely]
graasp-dev  aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis]
graasp-dev  aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch]
graasp-dev  aws_lb.graasp-dev-load-balancer_lb_9A06B77C (graasp-dev-load-balancer/lb): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:loadbalancer/app/graasp-dev/2d9df8ffedc22275]
graasp-dev  aws_instance.graasp-dev-gatekeeper_graasp-dev-gatekeeper-ec2_A55DD5DA (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-ec2): Refreshing state... [id=i-0fd04870b794c75b3]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_subnet_group.aws_db_subnet_group.this[0]: Refreshing state... [id=graasp-dev-20231009123833192500000015]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_db_instance.this[0]: Refreshing state... [id=db-3CNANXEZMD2SUYDRIDBIHT6F2M]
graasp-dev  aws_ecs_task_definition.graasp-dev_umami_88984772 (graasp-dev/umami): Refreshing state... [id=umami]
graasp-dev  aws_ecs_task_definition.graasp-dev_etherpad_D664EB2D (graasp-dev/etherpad): Refreshing state... [id=etherpad]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-http-redirect_309E2C64 (graasp-dev-load-balancer/lb-listener-http-redirect): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/9cc00852f3f90d6a]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-https_E069C227 (graasp-dev-load-balancer/lb-listener-https): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4]
graasp-dev  aws_lb_target_group.graasp-dev_umami-target-group_02AC6A93 (graasp-dev/umami-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/umami/eb6d060fc17e2e52]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-builder_4D040462 (graasp-dev-load-balancer/graasp-dev-builder): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/6a7e5d40fbbc59d7]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-analytics_431AD7A3 (graasp-dev-load-balancer/graasp-dev-analytics): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/753c902cdec8ab13]
            aws_lb_target_group.graasp-dev_etherpad-target-group_94F8091C (graasp-dev/etherpad-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-target-group_7E05BC31 (graasp-dev/graasp-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-player_6D261351 (graasp-dev-load-balancer/graasp-dev-player): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/18102830b42e109e]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-shortener_2A4B0FBC (graasp-dev-load-balancer/graasp-dev-shortener): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/a0a229972dcce063]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-auth_E1CC888F (graasp-dev-load-balancer/graasp-dev-auth): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/ac24f176bd35c164]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-account_E8E1BF85 (graasp-dev-load-balancer/graasp-dev-account): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185f084d6839808c]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-library-target-group_47035354 (graasp-dev/graasp-library-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0]
graasp-dev  aws_lb_listener_rule.graasp-dev_etherpad-rule_74CA3679 (graasp-dev/etherpad-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/d95b5f32dc661338]
graasp-dev  aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-rule_8589AD50 (graasp-dev/graasp-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/5bba1be112990e2f]
graasp-dev  aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp]
graasp-dev  aws_lb_listener_rule.graasp-dev_umami-rule_139819E3 (graasp-dev/umami-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185c679fb423b689]
graasp-dev  aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-library-rule_AC381C09 (graasp-dev/graasp-library-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/47b6511ce97bab5a]
graasp-dev  aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp-library]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-service-autoscaling-policy_70C429DA (graasp-dev/graasp-service-autoscaling-policy): Refreshing state... [id=graasp]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-library-service-autoscaling-policy_E718A88F (graasp-dev/graasp-library-service-autoscaling-policy): Refreshing state... [id=graasp-library]
graasp-dev  Terraform used the selected providers to generate the following execution
            plan. Resource actions are indicated with the following symbols:
              + create
            -/+ destroy and then create replacement

            Terraform will perform the following actions:
graasp-dev  # aws_ecs_cluster_capacity_providers.graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE (graasp-dev/graasp-dev-ecs-capacity-providers) will be created
              + resource "aws_ecs_cluster_capacity_providers" "graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE" {
                  + capacity_providers = [
                      + "FARGATE",
                      + "FARGATE_SPOT",
                    ]
                  + cluster_name       = "graasp-dev"
                  + id                 = (known after apply)

                  + default_capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }
                }

              # aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_etherpad-service_366B5CFC" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad" -> (known after apply)
                    name                               = "etherpad"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (12 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                    }
                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-library-service_35621E15" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library" -> (known after apply)
                    name                               = "graasp-library"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:181" -> "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:154"
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                    }
                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-service_BD538BD2" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp" -> (known after apply)
                    name                               = "graasp"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:744" -> "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:584"
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                    }
                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_iframely-service_8F7B5C1F" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/iframely" -> (known after apply)
                    name                               = "iframely"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (12 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_meilisearch-service_3A736F80" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch" -> (known after apply)
                    name                               = "meilisearch"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (12 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_redis-service_1DBE7C83" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis" -> (known after apply)
                    name                               = "redis"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (12 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_umami-service_6A875906" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami" -> (known after apply)
                    name                               = "umami"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (12 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (2 unchanged blocks hidden)
                }

            Plan: 8 to add, 0 to change, 7 to destroy.

            ─────────────────────────────────────────────────────────────────────────────

            Saved the plan to: plan

            To perform exactly these actions, run the following command to apply:
                terraform apply "plan"

@github-actions
Copy link

✅ Successfully planned Terraform CDK Stack 'graasp-dev'

Show Plan
graasp-dev  Initializing the backend...
graasp-dev  Successfully configured the backend "s3"! Terraform will automatically
            use this backend unless the backend configuration changes.
graasp-dev  Initializing modules...
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/rds/aws 6.10.0 for graasp-dev-postgres_db_F1D5DB7A...
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance_role_association in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance_role_association
            - graasp-dev-postgres_db_F1D5DB7A.db_option_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_option_group
            - graasp-dev-postgres_db_F1D5DB7A.db_parameter_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_parameter_group
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_subnet_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_subnet_group
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/vpc/aws 5.18.1 for vpc...
graasp-dev  - vpc in .terraform/modules/vpc
graasp-dev  Initializing provider plugins...
graasp-dev  - Finding hashicorp/aws versions matching ">= 5.46.0, >= 5.59.0, >= 5.62.0, 5.83.1"...
graasp-dev  - Finding hashicorp/random versions matching ">= 3.1.0"...
graasp-dev  - Installing hashicorp/aws v5.83.1...
graasp-dev  - Installed hashicorp/aws v5.83.1 (signed by HashiCorp)
graasp-dev  - Installing hashicorp/random v3.6.3...
graasp-dev  - Installed hashicorp/random v3.6.3 (signed by HashiCorp)
            Terraform has created a lock file .terraform.lock.hcl to record the provider
            selections it made above. Include this file in your version control repository
            so that Terraform can guarantee to make the same selections by default when
            you run "terraform init" in the future.
graasp-dev  Terraform has been successfully initialized!

            You may now begin working with Terraform. Try running "terraform plan" to see
            any changes that are required for your infrastructure. All Terraform commands
            should now work.

            If you ever set or change modules or backend configuration for Terraform,
            rerun this command to reinitialize your working directory. If you forget, other
            commands will detect it and remind you to do so if necessary.
graasp-dev  - Fetching hashicorp/random 3.6.3 for linux_amd64...
graasp-dev  - Retrieved hashicorp/random 3.6.3 for linux_amd64 (signed by HashiCorp)
graasp-dev  - Fetching hashicorp/aws 5.83.1 for linux_amd64...
graasp-dev  - Retrieved hashicorp/aws 5.83.1 for linux_amd64 (signed by HashiCorp)
            - Obtained hashicorp/aws checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
            - Obtained hashicorp/random checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
graasp-dev  Success! Terraform has validated the lock file and found no need for changes.
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.random_id.snapshot_identifier[0]: Refreshing state... [id=SHBibw]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Reading...
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Read complete after 1s [id=arn:aws:acm:us-east-1:299720865162:certificate/46cb9d1f-aea8-42de-8232-a5b83f1cc7e2]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Reading...
            data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Reading...
            aws_cloudwatch_log_group.graasp-dev_umami-loggroup_544115BF (graasp-dev/umami-loggroup): Refreshing state... [id=/ecs/umami]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_graasp-loggroup_44ECC8C2 (graasp-dev/graasp-loggroup): Refreshing state... [id=/ecs/graasp]
            aws_cloudwatch_log_group.graasp-dev_redis-loggroup_AFE7CB87 (graasp-dev/redis-loggroup): Refreshing state... [id=/ecs/redis]
            aws_s3_bucket.graasp-dev-file-items_bucket_12606B30 (graasp-dev-file-items/bucket): Refreshing state... [id=graasp-dev-file-items]
            aws_cloudwatch_log_group.graasp-dev_graasp-library-loggroup_FD22B99E (graasp-dev/graasp-library-loggroup): Refreshing state... [id=/ecs/graasp-library]
graasp-dev  aws_s3_bucket.graasp-dev-maintenance_bucket_46B8FAD7 (graasp-dev-maintenance/bucket): Refreshing state... [id=graasp-dev-maintenance]
            aws_s3_bucket.graasp-dev-h5p_bucket_B545A43B (graasp-dev-h5p/bucket): Refreshing state... [id=graasp-dev-h5p]
            aws_s3_bucket.graasp-dev-client_bucket_076446C5 (graasp-dev-client/bucket): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_service_discovery_http_namespace.graasp-dev_namespace_B6F7BA2C (graasp-dev/namespace): Refreshing state... [id=ns-us3rov3ukfoth5ox]
graasp-dev  aws_s3_bucket.graasp-dev-assets_bucket_8930785E (graasp-dev-assets/bucket): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_etherpad-loggroup_200385B4 (graasp-dev/etherpad-loggroup): Refreshing state... [id=/ecs/etherpad]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_iframely-loggroup_105420D9 (graasp-dev/iframely-loggroup): Refreshing state... [id=/ecs/iframely]
graasp-dev  data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Read complete after 1s [id=graasp/etherpad]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_parameter_group.aws_db_parameter_group.this[0]: Refreshing state... [id=graasp-postgres15-20231009123434812500000001]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Reading...
graasp-dev  module.vpc.aws_vpc.this[0]: Refreshing state... [id=vpc-0b312f17d2e08cb6e]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Read complete after 1s [id=graasp/explore]
graasp-dev  aws_s3_bucket.graasp-dev-apps_bucket_F4170225 (graasp-dev-apps/bucket): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_meilisearch-loggroup_F1AD2775 (graasp-dev/meilisearch-loggroup): Refreshing state... [id=/ecs/meilisearch]
graasp-dev  aws_iam_role.graasp-dev_ecs-execution-role_A4D135E8 (graasp-dev/ecs-execution-role): Refreshing state... [id=graasp-dev-ecs-execution-role]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Read complete after 1s [id=arn:aws:acm:eu-central-1:299720865162:certificate/af9d071d-3aa1-4583-905d-ec1efd5515d3]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Read complete after 0s [id=76086537]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Read complete after 0s [id=aws]
            aws_ecs_cluster.cluster (cluster): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev]
graasp-dev  aws_iam_role_policy.graasp-dev_graasp-dev-ecs-execution-role-policies_D65DB830 (graasp-dev/graasp-dev-ecs-execution-role-policies): Refreshing state... [id=graasp-dev-ecs-execution-role:allow-ecr-pull]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp_54E40EB5 (graasp-dev/graasp): Refreshing state... [id=graasp]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp-library_B38B90C0 (graasp-dev/graasp-library): Refreshing state... [id=graasp-library]
graasp-dev  aws_ecs_task_definition.graasp-dev_meilisearch_38A3D0B6 (graasp-dev/meilisearch): Refreshing state... [id=meilisearch]
graasp-dev  aws_ecs_task_definition.graasp-dev_iframely_4C5E8E3D (graasp-dev/iframely): Refreshing state... [id=iframely]
graasp-dev  aws_ecs_task_definition.graasp-dev_redis_E9CE963D (graasp-dev/redis): Refreshing state... [id=redis]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Read complete after 1s [id=graasp]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-file-items_s3-bucket-ownership_9BB45BB8 (graasp-dev-file-items/s3-bucket-ownership): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-file-items_s3-block-public-access_DD6519C0 (graasp-dev-file-items/s3-block-public-access): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-file-items_s3-cors-config_531774F3 (graasp-dev-file-items/s3-cors-config): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-client_s3-website-configuration_A6D7BA4D (graasp-dev-client/s3-website-configuration): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-client_s3-block-public-access_A8DD5DF0 (graasp-dev-client/s3-block-public-access): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-client_s3-bucket-ownership_7FA8E504 (graasp-dev-client/s3-bucket-ownership): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-maintenance_s3-block-public-access_C8FD87F8 (graasp-dev-maintenance/s3-block-public-access): Refreshing state... [id=graasp-dev-maintenance]
            data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Read complete after 0s [id=3742575001]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-maintenance_s3-bucket-ownership_1588A828 (graasp-dev-maintenance/s3-bucket-ownership): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Read complete after 0s [id=2448502661]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-maintenance_s3-website-configuration_50149944 (graasp-dev-maintenance/s3-website-configuration): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-h5p_s3-website-configuration_5FB93898 (graasp-dev-h5p/s3-website-configuration): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-h5p_s3-cors-config_EC778FA8 (graasp-dev-h5p/s3-cors-config): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-h5p_s3-bucket-ownership_418B795B (graasp-dev-h5p/s3-bucket-ownership): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Read complete after 0s [id=1897348743]
            aws_s3_bucket_public_access_block.graasp-dev-h5p_s3-block-public-access_2D472005 (graasp-dev-h5p/s3-block-public-access): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_ecs_cluster_capacity_providers.graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE (graasp-dev/graasp-dev-ecs-capacity-providers): Refreshing state... [id=graasp-dev]
graasp-dev  module.vpc.aws_default_security_group.this[0]: Refreshing state... [id=sg-0fd249cba5ab4c742]
graasp-dev  module.vpc.aws_default_network_acl.this[0]: Refreshing state... [id=acl-06ce6a79ac9494ac3]
graasp-dev  module.vpc.aws_default_route_table.default[0]: Refreshing state... [id=rtb-0de0872c207e953b3]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role_policy_attachment.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role-20231009123438644600000004]
graasp-dev  aws_s3_bucket_policy.graasp-dev-client_s3-policy_71B89D07 (graasp-dev-client/s3-policy): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_policy.graasp-dev-maintenance_s3-policy_DA8583B1 (graasp-dev-maintenance/s3-policy): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-assets_s3-bucket-ownership_1BE1C46A (graasp-dev-assets/s3-bucket-ownership): Refreshing state... [id=graasp-dev-assets]
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Read complete after 0s [id=661570887]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-assets_s3-block-public-access_D15DF7EF (graasp-dev-assets/s3-block-public-access): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-assets_s3-website-configuration_6D1735B5 (graasp-dev-assets/s3-website-configuration): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_policy.graasp-dev-h5p_s3-policy_9DB0282E (graasp-dev-h5p/s3-policy): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  module.vpc.aws_internet_gateway.this[0]: Refreshing state... [id=igw-01955c8cc5f6d5181]
graasp-dev  aws_security_group.graasp-dev-iframely-security-group (graasp-dev-iframely-security-group): Refreshing state... [id=sg-0ca4813c62c9d17a3]
graasp-dev  aws_security_group.graasp-dev-library-security-group (graasp-dev-library-security-group): Refreshing state... [id=sg-07bae39853af00427]
graasp-dev  module.vpc.aws_route_table.public[0]: Refreshing state... [id=rtb-09991359fa2a53c1c]
graasp-dev  module.vpc.aws_subnet.public[0]: Refreshing state... [id=subnet-0596b784e2da6e5c6]
graasp-dev  module.vpc.aws_subnet.public[2]: Refreshing state... [id=subnet-01f44d93731acccb7]
graasp-dev  module.vpc.aws_subnet.public[1]: Refreshing state... [id=subnet-055a0124ce88123b2]
graasp-dev  aws_security_group.graasp-dev-meilisearch-security-group (graasp-dev-meilisearch-security-group): Refreshing state... [id=sg-0b3ce2813b8775eba]
graasp-dev  aws_security_group.graasp-dev-gatekeeper_graasp-dev-gatekeeper-security-group_92E8E7CC (graasp-dev-gatekeeper/graasp-dev-gatekeeper-security-group): Refreshing state... [id=sg-036836715bbca8a32]
graasp-dev  aws_security_group.graasp-dev-redis-security-group (graasp-dev-redis-security-group): Refreshing state... [id=sg-0a7ebce0ecabcd895]
graasp-dev  aws_security_group.graasp-dev-lb-security-group (graasp-dev-lb-security-group): Refreshing state... [id=sg-0f07f40e7da03b966]
graasp-dev  aws_security_group.graasp-dev-backend-security-group (graasp-dev-backend-security-group): Refreshing state... [id=sg-014f1fd084973fd06]
graasp-dev  aws_security_group.graasp-dev-umami-security-group (graasp-dev-umami-security-group): Refreshing state... [id=sg-03d98ff7f2eb798fa]
graasp-dev  aws_security_group.graasp-dev-etherpad-security-group (graasp-dev-etherpad-security-group): Refreshing state... [id=sg-0ffb7f564703627af]
graasp-dev  aws_security_group.graasp-dev-postgres_graasp-dev-db-security-group_6A637215 (graasp-dev-postgres/graasp-dev-db-security-group): Refreshing state... [id=sg-009f5a0d494264c65]
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Reading...
            data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Read complete after 0s [id=4070198440]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-apps_s3-block-public-access_05DA1D21 (graasp-dev-apps/s3-block-public-access): Refreshing state... [id=graasp-dev-apps]
            aws_cloudfront_distribution.graasp-dev-client-cloudfront (graasp-dev-client-cloudfront): Refreshing state... [id=E1ZTGZST8787TH]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-apps_s3-website-configuration_7E3F72D4 (graasp-dev-apps/s3-website-configuration): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-apps_s3-bucket-ownership_699CAAD9 (graasp-dev-apps/s3-bucket-ownership): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_policy.graasp-dev-assets_s3-policy_B5DD3F7D (graasp-dev-assets/s3-policy): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_cloudfront_distribution.graasp-dev-h5p-cloudfront (graasp-dev-h5p-cloudfront): Refreshing state... [id=E3B7XJV46O4VB4]
graasp-dev  aws_cloudfront_distribution.graasp-dev-maintenance-cloudfront (graasp-dev-maintenance-cloudfront): Refreshing state... [id=EGBVR5KHBTMNX]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-iframely-allow-all (graasp-dev-iframely-allow-all): Refreshing state... [id=sgr-03b6e652d0d98bb05]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-library-allow-all (graasp-dev-library-allow-all): Refreshing state... [id=sgr-03cd64d6e8521413a]
            aws_cloudfront_distribution.graasp-dev-assets-cloudfront (graasp-dev-assets-cloudfront): Refreshing state... [id=E1TTPMNH8QPMJP]
graasp-dev  module.vpc.aws_route.public_internet_gateway[0]: Refreshing state... [id=r-rtb-09991359fa2a53c1c1080289494]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-all_B66B414C (graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-all): Refreshing state... [id=sgr-042fe01dcb13dead6]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-inbound-ssh_1B8A7117 (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-inbound-ssh): Refreshing state... [id=sgr-0a51d11a638800750]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-meilisearch-allow-all (graasp-dev-meilisearch-allow-all): Refreshing state... [id=sgr-0418d7a3309cc5d5e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-meilisearch (graasp-dev-allow-gatekeeper-on-meilisearch): Refreshing state... [id=sgr-0959c46cb81a9c68e]
graasp-dev  aws_s3_bucket_policy.graasp-dev-apps_s3-policy_708B7B00 (graasp-dev-apps/s3-policy): Refreshing state... [id=graasp-dev-apps]
graasp-dev  module.vpc.aws_route_table_association.public[0]: Refreshing state... [id=rtbassoc-0ba3fbc906b89068b]
graasp-dev  module.vpc.aws_route_table_association.public[1]: Refreshing state... [id=rtbassoc-065b7c3d10a5adb5f]
graasp-dev  module.vpc.aws_route_table_association.public[2]: Refreshing state... [id=rtbassoc-0953114662597b70b]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https_0223BC47 (graasp-dev-load-balancer/allow-https): Refreshing state... [id=sgr-0d7110664852fbdc7]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http_0E987E63 (graasp-dev-load-balancer/allow-http): Refreshing state... [id=sgr-0dbd5cad25b6a1a87]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https-ipv6_DC496355 (graasp-dev-load-balancer/allow-https-ipv6): Refreshing state... [id=sgr-023719db02da6a2a8]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-redis-allow-all (graasp-dev-redis-allow-all): Refreshing state... [id=sgr-03673e2379ee73580]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-load-balancer_graasp-dev-allow-all_001EC5EB (graasp-dev-load-balancer/graasp-dev-allow-all): Refreshing state... [id=sgr-08d13e43e33fd5b5a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-library-allow-load-balancer (graasp-dev-library-allow-load-balancer): Refreshing state... [id=sgr-04e219db366df9a40]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http-ipv6_91743348 (graasp-dev-load-balancer/allow-http-ipv6): Refreshing state... [id=sgr-084bba5f4b221f189]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-redis-allow-graasp-backend (graasp-dev-redis-allow-graasp-backend): Refreshing state... [id=sgr-08d29290d8638ef8f]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-iframely-allow-graasp-backend (graasp-dev-iframely-allow-graasp-backend): Refreshing state... [id=sgr-0d4d4b4ffd0b49a87]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-backend-allow-all (graasp-dev-backend-allow-all): Refreshing state... [id=sgr-0f70a895b80fd309e]
            aws_vpc_security_group_ingress_rule.graasp-dev-backend-allow-load-balancer (graasp-dev-backend-allow-load-balancer): Refreshing state... [id=sgr-0f1f4d5674dff4695]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-umami-allow-load-balancer (graasp-dev-umami-allow-load-balancer): Refreshing state... [id=sgr-05a39a274de98821a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-meilisearch-allow-graasp-backend (graasp-dev-meilisearch-allow-graasp-backend): Refreshing state... [id=sgr-0d502c3895f05dc26]
            aws_vpc_security_group_egress_rule.graasp-dev-umami-allow-all (graasp-dev-umami-allow-all): Refreshing state... [id=sgr-026fb931c3d9a2d33]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-etherpad-allow-load-balancer (graasp-dev-etherpad-allow-load-balancer): Refreshing state... [id=sgr-06e2e5786d9ade6fb]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-etherpad-allow-all (graasp-dev-etherpad-allow-all): Refreshing state... [id=sgr-06470ffe6a0df1219]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-postgres_graasp-dev-db-allow-all_0D9DEE53 (graasp-dev-postgres/graasp-dev-db-allow-all): Refreshing state... [id=sgr-0199bcbb086d17111]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-umami_425B5740 (graasp-dev-postgres/graasp-dev-db-allow-umami): Refreshing state... [id=sgr-063ed5e713152b283]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-postgres (graasp-dev-allow-gatekeeper-on-postgres): Refreshing state... [id=sgr-0058c3745753e6995]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-etherpad_A95D382C (graasp-dev-postgres/graasp-dev-db-allow-etherpad): Refreshing state... [id=sgr-0ded857153724c35d]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-graasp-backend_E8883EF3 (graasp-dev-postgres/graasp-dev-db-allow-graasp-backend): Refreshing state... [id=sgr-007f1bb79fc0de776]
graasp-dev  aws_lb.graasp-dev-load-balancer_lb_9A06B77C (graasp-dev-load-balancer/lb): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:loadbalancer/app/graasp-dev/2d9df8ffedc22275]
graasp-dev  aws_instance.graasp-dev-gatekeeper_graasp-dev-gatekeeper-ec2_A55DD5DA (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-ec2): Refreshing state... [id=i-0fd04870b794c75b3]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_subnet_group.aws_db_subnet_group.this[0]: Refreshing state... [id=graasp-dev-20231009123833192500000015]
graasp-dev  aws_cloudfront_distribution.graasp-dev-apps-cloudfront (graasp-dev-apps-cloudfront): Refreshing state... [id=E354WPS1CZ652D]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_db_instance.this[0]: Refreshing state... [id=db-3CNANXEZMD2SUYDRIDBIHT6F2M]
graasp-dev  aws_ecs_task_definition.graasp-dev_umami_88984772 (graasp-dev/umami): Refreshing state... [id=umami]
graasp-dev  aws_ecs_task_definition.graasp-dev_etherpad_D664EB2D (graasp-dev/etherpad): Refreshing state... [id=etherpad]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-http-redirect_309E2C64 (graasp-dev-load-balancer/lb-listener-http-redirect): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/9cc00852f3f90d6a]
            aws_lb_listener.graasp-dev-load-balancer_lb-listener-https_E069C227 (graasp-dev-load-balancer/lb-listener-https): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-analytics_431AD7A3 (graasp-dev-load-balancer/graasp-dev-analytics): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/753c902cdec8ab13]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-account_E8E1BF85 (graasp-dev-load-balancer/graasp-dev-account): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185f084d6839808c]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-auth_E1CC888F (graasp-dev-load-balancer/graasp-dev-auth): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/ac24f176bd35c164]
graasp-dev  aws_lb_target_group.graasp-dev_umami-target-group_02AC6A93 (graasp-dev/umami-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/umami/eb6d060fc17e2e52]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-shortener_2A4B0FBC (graasp-dev-load-balancer/graasp-dev-shortener): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/a0a229972dcce063]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-builder_4D040462 (graasp-dev-load-balancer/graasp-dev-builder): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/6a7e5d40fbbc59d7]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-target-group_7E05BC31 (graasp-dev/graasp-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-player_6D261351 (graasp-dev-load-balancer/graasp-dev-player): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/18102830b42e109e]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-library-target-group_47035354 (graasp-dev/graasp-library-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0]
graasp-dev  aws_lb_target_group.graasp-dev_etherpad-target-group_94F8091C (graasp-dev/etherpad-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe]
graasp-dev  aws_lb_listener_rule.graasp-dev_umami-rule_139819E3 (graasp-dev/umami-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185c679fb423b689]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-rule_8589AD50 (graasp-dev/graasp-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/5bba1be112990e2f]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-library-rule_AC381C09 (graasp-dev/graasp-library-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/47b6511ce97bab5a]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp-library]
graasp-dev  aws_lb_listener_rule.graasp-dev_etherpad-rule_74CA3679 (graasp-dev/etherpad-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/d95b5f32dc661338]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-service-autoscaling-policy_70C429DA (graasp-dev/graasp-service-autoscaling-policy): Refreshing state... [id=graasp]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-library-service-autoscaling-policy_E718A88F (graasp-dev/graasp-library-service-autoscaling-policy): Refreshing state... [id=graasp-library]
graasp-dev  Note: Objects have changed outside of Terraform

            Terraform detected the following changes made outside of Terraform since the
            last "terraform apply" which may have affected this plan:
graasp-dev  # aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target) has been deleted
              - resource "aws_appautoscaling_target" "graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D" {
                    id                 = "service/graasp-dev/graasp-library"
                  - resource_id        = "service/graasp-dev/graasp-library" -> null
                  - scalable_dimension = "ecs:service:DesiredCount" -> null
                  - service_namespace  = "ecs" -> null
                    tags               = {}
                    # (5 unchanged attributes hidden)

                    # (1 unchanged block hidden)
                }

              # aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target) has been deleted
              - resource "aws_appautoscaling_target" "graasp-dev_graasp-service-autoscaling-target_517CCDCE" {
                    id                 = "service/graasp-dev/graasp"
                  - resource_id        = "service/graasp-dev/graasp" -> null
                  - scalable_dimension = "ecs:service:DesiredCount" -> null
                  - service_namespace  = "ecs" -> null
                    tags               = {}
                    # (5 unchanged attributes hidden)

                    # (1 unchanged block hidden)
                }


            Unless you have made equivalent changes to your configuration, or ignored the
            relevant attributes using ignore_changes, the following plan may include
            actions to undo or respond to these changes.

            ─────────────────────────────────────────────────────────────────────────────

            Terraform used the selected providers to generate the following execution
            plan. Resource actions are indicated with the following symbols:
              + create

            Terraform will perform the following actions:

              # aws_appautoscaling_policy.graasp-dev_graasp-library-service-autoscaling-policy_E718A88F (graasp-dev/graasp-library-service-autoscaling-policy) will be created
              + resource "aws_appautoscaling_policy" "graasp-dev_graasp-library-service-autoscaling-policy_E718A88F" {
                  + alarm_arns         = (known after apply)
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + name               = "graasp-library"
                  + policy_type        = "TargetTrackingScaling"
                  + resource_id        = "service/graasp-dev/graasp-library"
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"

                  + target_tracking_scaling_policy_configuration {
                      + disable_scale_in   = false
                      + scale_in_cooldown  = 10
                      + scale_out_cooldown = 300
                      + target_value       = 80

                      + predefined_metric_specification {
                          + predefined_metric_type = "ECSServiceAverageMemoryUtilization"
                        }
                    }
                }

              # aws_appautoscaling_policy.graasp-dev_graasp-service-autoscaling-policy_70C429DA (graasp-dev/graasp-service-autoscaling-policy) will be created
              + resource "aws_appautoscaling_policy" "graasp-dev_graasp-service-autoscaling-policy_70C429DA" {
                  + alarm_arns         = (known after apply)
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + name               = "graasp"
                  + policy_type        = "TargetTrackingScaling"
                  + resource_id        = "service/graasp-dev/graasp"
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"

                  + target_tracking_scaling_policy_configuration {
                      + disable_scale_in   = false
                      + scale_in_cooldown  = 30
                      + scale_out_cooldown = 300
                      + target_value       = 70

                      + predefined_metric_specification {
                          + predefined_metric_type = "ECSServiceAverageCPUUtilization"
                        }
                    }
                }

              # aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target) will be created
              + resource "aws_appautoscaling_target" "graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D" {
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + max_capacity       = 8
                  + min_capacity       = 1
                  + resource_id        = "service/graasp-dev/graasp-library"
                  + role_arn           = (known after apply)
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"
                  + tags_all           = {
                      + "terraform-managed" = "true"
                    }

                  + suspended_state (known after apply)
                }

              # aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target) will be created
              + resource "aws_appautoscaling_target" "graasp-dev_graasp-service-autoscaling-target_517CCDCE" {
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + max_capacity       = 8
                  + min_capacity       = 1
                  + resource_id        = "service/graasp-dev/graasp"
                  + role_arn           = (known after apply)
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"
                  + tags_all           = {
                      + "terraform-managed" = "true"
                    }

                  + suspended_state (known after apply)
                }

              # aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service) will be created
              + resource "aws_ecs_service" "graasp-dev_etherpad-service_366B5CFC" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "etherpad"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/etherpad:18"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                    }
                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  + load_balancer {
                      + container_name   = "etherpad"
                      + container_port   = 9001
                      + target_group_arn = "arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe"
                        # (1 unchanged attribute hidden)
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-0ffb7f564703627af",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"
                    }
                }

              # aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service) will be created
              + resource "aws_ecs_service" "graasp-dev_graasp-library-service_35621E15" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "graasp-library"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:154"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                    }
                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  + load_balancer {
                      + container_name   = "graasp-library"
                      + container_port   = 3005
                      + target_group_arn = "arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0"
                        # (1 unchanged attribute hidden)
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-07bae39853af00427",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"
                    }
                }

              # aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service) will be created
              + resource "aws_ecs_service" "graasp-dev_graasp-service_BD538BD2" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "graasp"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:584"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                    }
                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  + load_balancer {
                      + container_name   = "graasp"
                      + container_port   = 3111
                      + target_group_arn = "arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909"
                        # (1 unchanged attribute hidden)
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-014f1fd084973fd06",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"
                    }
                }

              # aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service) will be created
              + resource "aws_ecs_service" "graasp-dev_iframely-service_8F7B5C1F" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "iframely"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/iframely:1"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-0ca4813c62c9d17a3",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"

                      + service {
                          + discovery_name = "graasp-iframely"
                          + port_name      = "iframely-8061-tcp"

                          + client_alias {
                              + dns_name = "graasp-iframely"
                              + port     = 8061
                            }
                        }
                    }
                }

              # aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service) will be created
              + resource "aws_ecs_service" "graasp-dev_meilisearch-service_3A736F80" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "meilisearch"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/meilisearch:11"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-0b3ce2813b8775eba",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"

                      + service {
                          + discovery_name = "graasp-meilisearch"
                          + port_name      = "meilisearch-7700-tcp"

                          + client_alias {
                              + dns_name = "graasp-meilisearch"
                              + port     = 7700
                            }
                        }
                    }
                }

              # aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service) will be created
              + resource "aws_ecs_service" "graasp-dev_redis-service_1DBE7C83" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "redis"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/redis:2"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-0a7ebce0ecabcd895",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"

                      + service {
                          + discovery_name = "graasp-redis"
                          + port_name      = "redis-6379-tcp"

                          + client_alias {
                              + dns_name = "graasp-redis"
                              + port     = 6379
                            }
                        }
                    }
                }

              # aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service) will be created
              + resource "aws_ecs_service" "graasp-dev_umami-service_6A875906" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "umami"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/umami:6"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  + load_balancer {
                      + container_name   = "umami"
                      + container_port   = 3000
                      + target_group_arn = "arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/umami/eb6d060fc17e2e52"
                        # (1 unchanged attribute hidden)
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-03d98ff7f2eb798fa",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"

                      + service {
                          + discovery_name = "umami"
                          + port_name      = "umami-3000-tcp"

                          + client_alias {
                              + dns_name = "umami"
                              + port     = 3000
                            }
                        }
                    }
                }

            Plan: 11 to add, 0 to change, 0 to destroy.

            ─────────────────────────────────────────────────────────────────────────────

            Saved the plan to: plan

            To perform exactly these actions, run the following command to apply:
                terraform apply "plan"

@github-actions
Copy link

✅ Successfully planned Terraform CDK Stack 'graasp-dev'

Show Plan
graasp-dev  Initializing the backend...
graasp-dev  Successfully configured the backend "s3"! Terraform will automatically
            use this backend unless the backend configuration changes.
graasp-dev  Initializing modules...
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/rds/aws 6.10.0 for graasp-dev-postgres_db_F1D5DB7A...
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance_role_association in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance_role_association
            - graasp-dev-postgres_db_F1D5DB7A.db_option_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_option_group
            - graasp-dev-postgres_db_F1D5DB7A.db_parameter_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_parameter_group
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_subnet_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_subnet_group
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/vpc/aws 5.18.1 for vpc...
graasp-dev  - vpc in .terraform/modules/vpc
graasp-dev  Initializing provider plugins...
graasp-dev  - Finding hashicorp/aws versions matching ">= 5.46.0, >= 5.59.0, >= 5.62.0, 5.83.1"...
graasp-dev  - Finding hashicorp/random versions matching ">= 3.1.0"...
graasp-dev  - Installing hashicorp/aws v5.83.1...
graasp-dev  - Installed hashicorp/aws v5.83.1 (signed by HashiCorp)
graasp-dev  - Installing hashicorp/random v3.6.3...
graasp-dev  - Installed hashicorp/random v3.6.3 (signed by HashiCorp)
            Terraform has created a lock file .terraform.lock.hcl to record the provider
            selections it made above. Include this file in your version control repository
            so that Terraform can guarantee to make the same selections by default when
            you run "terraform init" in the future.
graasp-dev  Terraform has been successfully initialized!

            You may now begin working with Terraform. Try running "terraform plan" to see
            any changes that are required for your infrastructure. All Terraform commands
            should now work.

            If you ever set or change modules or backend configuration for Terraform,
            rerun this command to reinitialize your working directory. If you forget, other
            commands will detect it and remind you to do so if necessary.
graasp-dev  - Fetching hashicorp/aws 5.83.1 for linux_amd64...
graasp-dev  - Retrieved hashicorp/aws 5.83.1 for linux_amd64 (signed by HashiCorp)
graasp-dev  - Fetching hashicorp/random 3.6.3 for linux_amd64...
graasp-dev  - Retrieved hashicorp/random 3.6.3 for linux_amd64 (signed by HashiCorp)
            - Obtained hashicorp/aws checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
graasp-dev  - Obtained hashicorp/random checksums for linux_amd64; All checksums for this platform were already tracked in the lock file

            Success! Terraform has validated the lock file and found no need for changes.
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.random_id.snapshot_identifier[0]: Refreshing state... [id=SHBibw]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Reading...
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Read complete after 0s [id=arn:aws:acm:us-east-1:299720865162:certificate/46cb9d1f-aea8-42de-8232-a5b83f1cc7e2]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Reading...
            aws_cloudwatch_log_group.graasp-dev_meilisearch-loggroup_F1AD2775 (graasp-dev/meilisearch-loggroup): Refreshing state... [id=/ecs/meilisearch]
            aws_cloudwatch_log_group.graasp-dev_graasp-library-loggroup_FD22B99E (graasp-dev/graasp-library-loggroup): Refreshing state... [id=/ecs/graasp-library]
            aws_cloudwatch_log_group.graasp-dev_umami-loggroup_544115BF (graasp-dev/umami-loggroup): Refreshing state... [id=/ecs/umami]
            aws_ecs_cluster.cluster (cluster): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev]
            module.vpc.aws_vpc.this[0]: Refreshing state... [id=vpc-0b312f17d2e08cb6e]
            data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Reading...
            aws_cloudwatch_log_group.graasp-dev_iframely-loggroup_105420D9 (graasp-dev/iframely-loggroup): Refreshing state... [id=/ecs/iframely]
graasp-dev  aws_service_discovery_http_namespace.graasp-dev_namespace_B6F7BA2C (graasp-dev/namespace): Refreshing state... [id=ns-us3rov3ukfoth5ox]
            aws_s3_bucket.graasp-dev-apps_bucket_F4170225 (graasp-dev-apps/bucket): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket.graasp-dev-file-items_bucket_12606B30 (graasp-dev-file-items/bucket): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_parameter_group.aws_db_parameter_group.this[0]: Refreshing state... [id=graasp-postgres15-20231009123434812500000001]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Reading...
            data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Read complete after 0s [id=76086537]
            data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Reading...
graasp-dev  aws_s3_bucket.graasp-dev-maintenance_bucket_46B8FAD7 (graasp-dev-maintenance/bucket): Refreshing state... [id=graasp-dev-maintenance]
            aws_cloudwatch_log_group.graasp-dev_graasp-loggroup_44ECC8C2 (graasp-dev/graasp-loggroup): Refreshing state... [id=/ecs/graasp]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Read complete after 0s [id=aws]
            aws_cloudwatch_log_group.graasp-dev_etherpad-loggroup_200385B4 (graasp-dev/etherpad-loggroup): Refreshing state... [id=/ecs/etherpad]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Read complete after 1s [id=arn:aws:acm:eu-central-1:299720865162:certificate/af9d071d-3aa1-4583-905d-ec1efd5515d3]
graasp-dev  aws_s3_bucket.graasp-dev-h5p_bucket_B545A43B (graasp-dev-h5p/bucket): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Read complete after 1s [id=graasp/explore]
            aws_cloudwatch_log_group.graasp-dev_redis-loggroup_AFE7CB87 (graasp-dev/redis-loggroup): Refreshing state... [id=/ecs/redis]
graasp-dev  aws_iam_role.graasp-dev_ecs-execution-role_A4D135E8 (graasp-dev/ecs-execution-role): Refreshing state... [id=graasp-dev-ecs-execution-role]
graasp-dev  data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Read complete after 1s [id=graasp/etherpad]
graasp-dev  aws_s3_bucket.graasp-dev-client_bucket_076446C5 (graasp-dev-client/bucket): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket.graasp-dev-assets_bucket_8930785E (graasp-dev-assets/bucket): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_ecs_cluster_capacity_providers.graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE (graasp-dev/graasp-dev-ecs-capacity-providers): Refreshing state... [id=graasp-dev]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Read complete after 1s [id=graasp]
graasp-dev  aws_ecs_task_definition.graasp-dev_redis_E9CE963D (graasp-dev/redis): Refreshing state... [id=redis]
graasp-dev  aws_ecs_task_definition.graasp-dev_meilisearch_38A3D0B6 (graasp-dev/meilisearch): Refreshing state... [id=meilisearch]
graasp-dev  aws_iam_role_policy.graasp-dev_graasp-dev-ecs-execution-role-policies_D65DB830 (graasp-dev/graasp-dev-ecs-execution-role-policies): Refreshing state... [id=graasp-dev-ecs-execution-role:allow-ecr-pull]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp-library_B38B90C0 (graasp-dev/graasp-library): Refreshing state... [id=graasp-library]
graasp-dev  aws_ecs_task_definition.graasp-dev_iframely_4C5E8E3D (graasp-dev/iframely): Refreshing state... [id=iframely]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp_54E40EB5 (graasp-dev/graasp): Refreshing state... [id=graasp]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role_policy_attachment.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role-20231009123438644600000004]
graasp-dev  module.vpc.aws_default_network_acl.this[0]: Refreshing state... [id=acl-06ce6a79ac9494ac3]
graasp-dev  module.vpc.aws_default_route_table.default[0]: Refreshing state... [id=rtb-0de0872c207e953b3]
graasp-dev  module.vpc.aws_default_security_group.this[0]: Refreshing state... [id=sg-0fd249cba5ab4c742]
graasp-dev  aws_security_group.graasp-dev-gatekeeper_graasp-dev-gatekeeper-security-group_92E8E7CC (graasp-dev-gatekeeper/graasp-dev-gatekeeper-security-group): Refreshing state... [id=sg-036836715bbca8a32]
graasp-dev  aws_security_group.graasp-dev-postgres_graasp-dev-db-security-group_6A637215 (graasp-dev-postgres/graasp-dev-db-security-group): Refreshing state... [id=sg-009f5a0d494264c65]
graasp-dev  aws_security_group.graasp-dev-meilisearch-security-group (graasp-dev-meilisearch-security-group): Refreshing state... [id=sg-0b3ce2813b8775eba]
graasp-dev  aws_security_group.graasp-dev-etherpad-security-group (graasp-dev-etherpad-security-group): Refreshing state... [id=sg-0ffb7f564703627af]
graasp-dev  aws_security_group.graasp-dev-lb-security-group (graasp-dev-lb-security-group): Refreshing state... [id=sg-0f07f40e7da03b966]
graasp-dev  aws_security_group.graasp-dev-iframely-security-group (graasp-dev-iframely-security-group): Refreshing state... [id=sg-0ca4813c62c9d17a3]
graasp-dev  aws_security_group.graasp-dev-redis-security-group (graasp-dev-redis-security-group): Refreshing state... [id=sg-0a7ebce0ecabcd895]
graasp-dev  aws_security_group.graasp-dev-library-security-group (graasp-dev-library-security-group): Refreshing state... [id=sg-07bae39853af00427]
graasp-dev  aws_security_group.graasp-dev-backend-security-group (graasp-dev-backend-security-group): Refreshing state... [id=sg-014f1fd084973fd06]
graasp-dev  aws_security_group.graasp-dev-umami-security-group (graasp-dev-umami-security-group): Refreshing state... [id=sg-03d98ff7f2eb798fa]
graasp-dev  module.vpc.aws_subnet.public[0]: Refreshing state... [id=subnet-0596b784e2da6e5c6]
graasp-dev  module.vpc.aws_subnet.public[1]: Refreshing state... [id=subnet-055a0124ce88123b2]
graasp-dev  module.vpc.aws_subnet.public[2]: Refreshing state... [id=subnet-01f44d93731acccb7]
graasp-dev  module.vpc.aws_internet_gateway.this[0]: Refreshing state... [id=igw-01955c8cc5f6d5181]
graasp-dev  module.vpc.aws_route_table.public[0]: Refreshing state... [id=rtb-09991359fa2a53c1c]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-apps_s3-website-configuration_7E3F72D4 (graasp-dev-apps/s3-website-configuration): Refreshing state... [id=graasp-dev-apps]
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Read complete after 0s [id=4070198440]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-apps_s3-bucket-ownership_699CAAD9 (graasp-dev-apps/s3-bucket-ownership): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-apps_s3-block-public-access_05DA1D21 (graasp-dev-apps/s3-block-public-access): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-all_B66B414C (graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-all): Refreshing state... [id=sgr-042fe01dcb13dead6]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-inbound-ssh_1B8A7117 (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-inbound-ssh): Refreshing state... [id=sgr-0a51d11a638800750]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-postgres_graasp-dev-db-allow-all_0D9DEE53 (graasp-dev-postgres/graasp-dev-db-allow-all): Refreshing state... [id=sgr-0199bcbb086d17111]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-postgres (graasp-dev-allow-gatekeeper-on-postgres): Refreshing state... [id=sgr-0058c3745753e6995]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-file-items_s3-block-public-access_DD6519C0 (graasp-dev-file-items/s3-block-public-access): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-file-items_s3-bucket-ownership_9BB45BB8 (graasp-dev-file-items/s3-bucket-ownership): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-file-items_s3-cors-config_531774F3 (graasp-dev-file-items/s3-cors-config): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-load-balancer_graasp-dev-allow-all_001EC5EB (graasp-dev-load-balancer/graasp-dev-allow-all): Refreshing state... [id=sgr-08d13e43e33fd5b5a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http_0E987E63 (graasp-dev-load-balancer/allow-http): Refreshing state... [id=sgr-0dbd5cad25b6a1a87]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https_0223BC47 (graasp-dev-load-balancer/allow-https): Refreshing state... [id=sgr-0d7110664852fbdc7]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http-ipv6_91743348 (graasp-dev-load-balancer/allow-http-ipv6): Refreshing state... [id=sgr-084bba5f4b221f189]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https-ipv6_DC496355 (graasp-dev-load-balancer/allow-https-ipv6): Refreshing state... [id=sgr-023719db02da6a2a8]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-meilisearch-allow-all (graasp-dev-meilisearch-allow-all): Refreshing state... [id=sgr-0418d7a3309cc5d5e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-meilisearch (graasp-dev-allow-gatekeeper-on-meilisearch): Refreshing state... [id=sgr-0959c46cb81a9c68e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-etherpad_A95D382C (graasp-dev-postgres/graasp-dev-db-allow-etherpad): Refreshing state... [id=sgr-0ded857153724c35d]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-etherpad-allow-load-balancer (graasp-dev-etherpad-allow-load-balancer): Refreshing state... [id=sgr-06e2e5786d9ade6fb]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-etherpad-allow-all (graasp-dev-etherpad-allow-all): Refreshing state... [id=sgr-06470ffe6a0df1219]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-maintenance_s3-bucket-ownership_1588A828 (graasp-dev-maintenance/s3-bucket-ownership): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-maintenance_s3-block-public-access_C8FD87F8 (graasp-dev-maintenance/s3-block-public-access): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Read complete after 0s [id=2448502661]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-maintenance_s3-website-configuration_50149944 (graasp-dev-maintenance/s3-website-configuration): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-iframely-allow-all (graasp-dev-iframely-allow-all): Refreshing state... [id=sgr-03b6e652d0d98bb05]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-redis-allow-all (graasp-dev-redis-allow-all): Refreshing state... [id=sgr-03673e2379ee73580]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-library-allow-all (graasp-dev-library-allow-all): Refreshing state... [id=sgr-03cd64d6e8521413a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-library-allow-load-balancer (graasp-dev-library-allow-load-balancer): Refreshing state... [id=sgr-04e219db366df9a40]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-umami-allow-all (graasp-dev-umami-allow-all): Refreshing state... [id=sgr-026fb931c3d9a2d33]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-umami-allow-load-balancer (graasp-dev-umami-allow-load-balancer): Refreshing state... [id=sgr-05a39a274de98821a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-umami_425B5740 (graasp-dev-postgres/graasp-dev-db-allow-umami): Refreshing state... [id=sgr-063ed5e713152b283]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-backend-allow-all (graasp-dev-backend-allow-all): Refreshing state... [id=sgr-0f70a895b80fd309e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-redis-allow-graasp-backend (graasp-dev-redis-allow-graasp-backend): Refreshing state... [id=sgr-08d29290d8638ef8f]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-backend-allow-load-balancer (graasp-dev-backend-allow-load-balancer): Refreshing state... [id=sgr-0f1f4d5674dff4695]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-meilisearch-allow-graasp-backend (graasp-dev-meilisearch-allow-graasp-backend): Refreshing state... [id=sgr-0d502c3895f05dc26]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-graasp-backend_E8883EF3 (graasp-dev-postgres/graasp-dev-db-allow-graasp-backend): Refreshing state... [id=sgr-007f1bb79fc0de776]
graasp-dev  aws_s3_bucket_policy.graasp-dev-apps_s3-policy_708B7B00 (graasp-dev-apps/s3-policy): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-iframely-allow-graasp-backend (graasp-dev-iframely-allow-graasp-backend): Refreshing state... [id=sgr-0d4d4b4ffd0b49a87]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-h5p_s3-block-public-access_2D472005 (graasp-dev-h5p/s3-block-public-access): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-h5p_s3-website-configuration_5FB93898 (graasp-dev-h5p/s3-website-configuration): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-h5p_s3-bucket-ownership_418B795B (graasp-dev-h5p/s3-bucket-ownership): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Read complete after 0s [id=1897348743]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-h5p_s3-cors-config_EC778FA8 (graasp-dev-h5p/s3-cors-config): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  module.vpc.aws_route.public_internet_gateway[0]: Refreshing state... [id=r-rtb-09991359fa2a53c1c1080289494]
graasp-dev  module.vpc.aws_route_table_association.public[2]: Refreshing state... [id=rtbassoc-0953114662597b70b]
graasp-dev  module.vpc.aws_route_table_association.public[0]: Refreshing state... [id=rtbassoc-0ba3fbc906b89068b]
graasp-dev  module.vpc.aws_route_table_association.public[1]: Refreshing state... [id=rtbassoc-065b7c3d10a5adb5f]
graasp-dev  aws_cloudfront_distribution.graasp-dev-apps-cloudfront (graasp-dev-apps-cloudfront): Refreshing state... [id=E354WPS1CZ652D]
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Reading...
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-client_s3-block-public-access_A8DD5DF0 (graasp-dev-client/s3-block-public-access): Refreshing state... [id=graasp-dev-client]
            data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Read complete after 0s [id=3742575001]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-client_s3-bucket-ownership_7FA8E504 (graasp-dev-client/s3-bucket-ownership): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-client_s3-website-configuration_A6D7BA4D (graasp-dev-client/s3-website-configuration): Refreshing state... [id=graasp-dev-client]
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Read complete after 0s [id=661570887]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-assets_s3-bucket-ownership_1BE1C46A (graasp-dev-assets/s3-bucket-ownership): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-assets_s3-block-public-access_D15DF7EF (graasp-dev-assets/s3-block-public-access): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-assets_s3-website-configuration_6D1735B5 (graasp-dev-assets/s3-website-configuration): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_policy.graasp-dev-maintenance_s3-policy_DA8583B1 (graasp-dev-maintenance/s3-policy): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch]
graasp-dev  aws_instance.graasp-dev-gatekeeper_graasp-dev-gatekeeper-ec2_A55DD5DA (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-ec2): Refreshing state... [id=i-0fd04870b794c75b3]
graasp-dev  aws_lb.graasp-dev-load-balancer_lb_9A06B77C (graasp-dev-load-balancer/lb): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:loadbalancer/app/graasp-dev/2d9df8ffedc22275]
graasp-dev  aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis]
graasp-dev  aws_s3_bucket_policy.graasp-dev-h5p_s3-policy_9DB0282E (graasp-dev-h5p/s3-policy): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_cloudfront_distribution.graasp-dev-maintenance-cloudfront (graasp-dev-maintenance-cloudfront): Refreshing state... [id=EGBVR5KHBTMNX]
graasp-dev  aws_s3_bucket_policy.graasp-dev-client_s3-policy_71B89D07 (graasp-dev-client/s3-policy): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_policy.graasp-dev-assets_s3-policy_B5DD3F7D (graasp-dev-assets/s3-policy): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_cloudfront_distribution.graasp-dev-h5p-cloudfront (graasp-dev-h5p-cloudfront): Refreshing state... [id=E3B7XJV46O4VB4]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_subnet_group.aws_db_subnet_group.this[0]: Refreshing state... [id=graasp-dev-20231009123833192500000015]
graasp-dev  aws_cloudfront_distribution.graasp-dev-client-cloudfront (graasp-dev-client-cloudfront): Refreshing state... [id=E1ZTGZST8787TH]
graasp-dev  aws_cloudfront_distribution.graasp-dev-assets-cloudfront (graasp-dev-assets-cloudfront): Refreshing state... [id=E1TTPMNH8QPMJP]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_db_instance.this[0]: Refreshing state... [id=db-3CNANXEZMD2SUYDRIDBIHT6F2M]
graasp-dev  aws_ecs_task_definition.graasp-dev_umami_88984772 (graasp-dev/umami): Refreshing state... [id=umami]
graasp-dev  aws_ecs_task_definition.graasp-dev_etherpad_D664EB2D (graasp-dev/etherpad): Refreshing state... [id=etherpad]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-https_E069C227 (graasp-dev-load-balancer/lb-listener-https): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-http-redirect_309E2C64 (graasp-dev-load-balancer/lb-listener-http-redirect): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/9cc00852f3f90d6a]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-analytics_431AD7A3 (graasp-dev-load-balancer/graasp-dev-analytics): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/753c902cdec8ab13]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-builder_4D040462 (graasp-dev-load-balancer/graasp-dev-builder): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/6a7e5d40fbbc59d7]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-player_6D261351 (graasp-dev-load-balancer/graasp-dev-player): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/18102830b42e109e]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-library-target-group_47035354 (graasp-dev/graasp-library-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-account_E8E1BF85 (graasp-dev-load-balancer/graasp-dev-account): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185f084d6839808c]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-shortener_2A4B0FBC (graasp-dev-load-balancer/graasp-dev-shortener): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/a0a229972dcce063]
            aws_lb_target_group.graasp-dev_graasp-target-group_7E05BC31 (graasp-dev/graasp-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909]
graasp-dev  aws_lb_target_group.graasp-dev_etherpad-target-group_94F8091C (graasp-dev/etherpad-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe]
            aws_lb_target_group.graasp-dev_umami-target-group_02AC6A93 (graasp-dev/umami-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/umami/eb6d060fc17e2e52]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-auth_E1CC888F (graasp-dev-load-balancer/graasp-dev-auth): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/ac24f176bd35c164]
graasp-dev  aws_lb_listener_rule.graasp-dev_etherpad-rule_74CA3679 (graasp-dev/etherpad-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/d95b5f32dc661338]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-library-rule_AC381C09 (graasp-dev/graasp-library-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/47b6511ce97bab5a]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-rule_8589AD50 (graasp-dev/graasp-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/5bba1be112990e2f]
graasp-dev  aws_lb_listener_rule.graasp-dev_umami-rule_139819E3 (graasp-dev/umami-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185c679fb423b689]
graasp-dev  aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami]
graasp-dev  Terraform used the selected providers to generate the following execution
            plan. Resource actions are indicated with the following symbols:
              + create

            Terraform will perform the following actions:
graasp-dev  # aws_appautoscaling_policy.graasp-dev_graasp-library-service-autoscaling-policy_E718A88F (graasp-dev/graasp-library-service-autoscaling-policy) will be created
              + resource "aws_appautoscaling_policy" "graasp-dev_graasp-library-service-autoscaling-policy_E718A88F" {
                  + alarm_arns         = (known after apply)
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + name               = "graasp-library"
                  + policy_type        = "TargetTrackingScaling"
                  + resource_id        = "service/graasp-dev/graasp-library"
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"

                  + target_tracking_scaling_policy_configuration {
                      + disable_scale_in   = false
                      + scale_in_cooldown  = 10
                      + scale_out_cooldown = 300
                      + target_value       = 80

                      + predefined_metric_specification {
                          + predefined_metric_type = "ECSServiceAverageMemoryUtilization"
                        }
                    }
                }

              # aws_appautoscaling_policy.graasp-dev_graasp-service-autoscaling-policy_70C429DA (graasp-dev/graasp-service-autoscaling-policy) will be created
              + resource "aws_appautoscaling_policy" "graasp-dev_graasp-service-autoscaling-policy_70C429DA" {
                  + alarm_arns         = (known after apply)
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + name               = "graasp"
                  + policy_type        = "TargetTrackingScaling"
                  + resource_id        = "service/graasp-dev/graasp"
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"

                  + target_tracking_scaling_policy_configuration {
                      + disable_scale_in   = false
                      + scale_in_cooldown  = 30
                      + scale_out_cooldown = 300
                      + target_value       = 70

                      + predefined_metric_specification {
                          + predefined_metric_type = "ECSServiceAverageCPUUtilization"
                        }
                    }
                }

              # aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target) will be created
              + resource "aws_appautoscaling_target" "graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D" {
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + max_capacity       = 8
                  + min_capacity       = 1
                  + resource_id        = "service/graasp-dev/graasp-library"
                  + role_arn           = (known after apply)
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"
                  + tags_all           = {
                      + "terraform-managed" = "true"
                    }

                  + suspended_state (known after apply)
                }

              # aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target) will be created
              + resource "aws_appautoscaling_target" "graasp-dev_graasp-service-autoscaling-target_517CCDCE" {
                  + arn                = (known after apply)
                  + id                 = (known after apply)
                  + max_capacity       = 8
                  + min_capacity       = 1
                  + resource_id        = "service/graasp-dev/graasp"
                  + role_arn           = (known after apply)
                  + scalable_dimension = "ecs:service:DesiredCount"
                  + service_namespace  = "ecs"
                  + tags_all           = {
                      + "terraform-managed" = "true"
                    }

                  + suspended_state (known after apply)
                }

              # aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service) will be created
              + resource "aws_ecs_service" "graasp-dev_etherpad-service_366B5CFC" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "etherpad"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/etherpad:18"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 1
                    }
                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  + load_balancer {
                      + container_name   = "etherpad"
                      + container_port   = 9001
                      + target_group_arn = "arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe"
                        # (1 unchanged attribute hidden)
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-0ffb7f564703627af",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"
                    }
                }

              # aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service) will be created
              + resource "aws_ecs_service" "graasp-dev_graasp-library-service_35621E15" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "graasp-library"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:154"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 1
                    }
                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  + load_balancer {
                      + container_name   = "graasp-library"
                      + container_port   = 3005
                      + target_group_arn = "arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0"
                        # (1 unchanged attribute hidden)
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-07bae39853af00427",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"
                    }
                }

              # aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service) will be created
              + resource "aws_ecs_service" "graasp-dev_graasp-service_BD538BD2" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "graasp"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:584"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 1
                    }
                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                    }

                  + load_balancer {
                      + container_name   = "graasp"
                      + container_port   = 3111
                      + target_group_arn = "arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909"
                        # (1 unchanged attribute hidden)
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-014f1fd084973fd06",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"
                    }
                }

              # aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service) will be created
              + resource "aws_ecs_service" "graasp-dev_iframely-service_8F7B5C1F" {
                  + availability_zone_rebalancing      = "DISABLED"
                  + cluster                            = "arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev"
                  + deployment_maximum_percent         = 200
                  + deployment_minimum_healthy_percent = 100
                  + desired_count                      = 1
                  + enable_ecs_managed_tags            = false
                  + enable_execute_command             = false
                  + iam_role                           = (known after apply)
                  + id                                 = (known after apply)
                  + launch_type                        = (known after apply)
                  + name                               = "iframely"
                  + platform_version                   = (known after apply)
                  + scheduling_strategy                = "REPLICA"
                  + tags_all                           = {
                      + "terraform-managed" = "true"
                    }
                  + task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/iframely:1"
                  + triggers                           = (known after apply)
                  + wait_for_steady_state              = false

                  + capacity_provider_strategy {
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  + network_configuration {
                      + assign_public_ip = true
                      + security_groups  = [
                          + "sg-0ca4813c62c9d17a3",
                        ]
                      + subnets          = [
                          + "subnet-01f44d93731acccb7",
                          + "subnet-055a0124ce88123b2",
                          + "subnet-0596b784e2da6e5c6",
                        ]
                    }

                  + service_connect_configuration {
                      + enabled   = true
                      + namespace = "arn:aws:servicediscovery:eu-central-1:299720865162:namespace/ns-us3rov3ukfoth5ox"

                      + service {
                          + discovery_name = "graasp-iframely"
                          + port_name      = "iframely-8061-tcp"

                          + client_alias {
                              + dns_name = "graasp-iframely"
                              + port     = 8061
                            }
                        }
                    }
                }

            Plan: 8 to add, 0 to change, 0 to destroy.

            ─────────────────────────────────────────────────────────────────────────────

            Saved the plan to: plan

            To perform exactly these actions, run the following command to apply:
                terraform apply "plan"

@github-actions
Copy link

github-actions bot commented Feb 3, 2025

✅ Successfully planned Terraform CDK Stack 'graasp-dev'

Show Plan
graasp-dev  Initializing the backend...
graasp-dev  Successfully configured the backend "s3"! Terraform will automatically
            use this backend unless the backend configuration changes.
graasp-dev  Initializing modules...
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/rds/aws 6.10.0 for graasp-dev-postgres_db_F1D5DB7A...
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance_role_association in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance_role_association
            - graasp-dev-postgres_db_F1D5DB7A.db_option_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_option_group
            - graasp-dev-postgres_db_F1D5DB7A.db_parameter_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_parameter_group
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_subnet_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_subnet_group
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/vpc/aws 5.18.1 for vpc...
graasp-dev  - vpc in .terraform/modules/vpc
graasp-dev  Initializing provider plugins...
graasp-dev  - Finding hashicorp/aws versions matching ">= 5.46.0, >= 5.59.0, >= 5.62.0, 5.83.1"...
graasp-dev  - Finding hashicorp/random versions matching ">= 3.1.0"...
graasp-dev  - Installing hashicorp/aws v5.83.1...
graasp-dev  - Installed hashicorp/aws v5.83.1 (signed by HashiCorp)
graasp-dev  - Installing hashicorp/random v3.6.3...
graasp-dev  - Installed hashicorp/random v3.6.3 (signed by HashiCorp)
            Terraform has created a lock file .terraform.lock.hcl to record the provider
            selections it made above. Include this file in your version control repository
            so that Terraform can guarantee to make the same selections by default when
            you run "terraform init" in the future.
graasp-dev  Terraform has been successfully initialized!

            You may now begin working with Terraform. Try running "terraform plan" to see
            any changes that are required for your infrastructure. All Terraform commands
            should now work.

            If you ever set or change modules or backend configuration for Terraform,
            rerun this command to reinitialize your working directory. If you forget, other
            commands will detect it and remind you to do so if necessary.
graasp-dev  - Fetching hashicorp/aws 5.83.1 for linux_amd64...
graasp-dev  - Retrieved hashicorp/aws 5.83.1 for linux_amd64 (signed by HashiCorp)
graasp-dev  - Fetching hashicorp/random 3.6.3 for linux_amd64...
graasp-dev  - Retrieved hashicorp/random 3.6.3 for linux_amd64 (signed by HashiCorp)
            - Obtained hashicorp/aws checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
            - Obtained hashicorp/random checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
graasp-dev  Success! Terraform has validated the lock file and found no need for changes.
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.random_id.snapshot_identifier[0]: Refreshing state... [id=SHBibw]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Reading...
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Read complete after 0s [id=arn:aws:acm:us-east-1:299720865162:certificate/46cb9d1f-aea8-42de-8232-a5b83f1cc7e2]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_graasp-loggroup_44ECC8C2 (graasp-dev/graasp-loggroup): Refreshing state... [id=/ecs/graasp]
            data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Reading...
            aws_service_discovery_http_namespace.graasp-dev_namespace_B6F7BA2C (graasp-dev/namespace): Refreshing state... [id=ns-us3rov3ukfoth5ox]
            aws_s3_bucket.graasp-dev-apps_bucket_F4170225 (graasp-dev-apps/bucket): Refreshing state... [id=graasp-dev-apps]
            data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Reading...
            aws_s3_bucket.graasp-dev-client_bucket_076446C5 (graasp-dev-client/bucket): Refreshing state... [id=graasp-dev-client]
            aws_cloudwatch_log_group.graasp-dev_etherpad-loggroup_200385B4 (graasp-dev/etherpad-loggroup): Refreshing state... [id=/ecs/etherpad]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Reading...
graasp-dev  aws_s3_bucket.graasp-dev-assets_bucket_8930785E (graasp-dev-assets/bucket): Refreshing state... [id=graasp-dev-assets]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Read complete after 0s [id=aws]
            aws_s3_bucket.graasp-dev-file-items_bucket_12606B30 (graasp-dev-file-items/bucket): Refreshing state... [id=graasp-dev-file-items]
            aws_cloudwatch_log_group.graasp-dev_meilisearch-loggroup_F1AD2775 (graasp-dev/meilisearch-loggroup): Refreshing state... [id=/ecs/meilisearch]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Reading...
graasp-dev  aws_cloudwatch_log_group.graasp-dev_umami-loggroup_544115BF (graasp-dev/umami-loggroup): Refreshing state... [id=/ecs/umami]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Reading...
graasp-dev  aws_cloudwatch_log_group.graasp-dev_iframely-loggroup_105420D9 (graasp-dev/iframely-loggroup): Refreshing state... [id=/ecs/iframely]
graasp-dev  aws_ecs_cluster.cluster (cluster): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Read complete after 0s [id=76086537]
            aws_cloudwatch_log_group.graasp-dev_graasp-library-loggroup_FD22B99E (graasp-dev/graasp-library-loggroup): Refreshing state... [id=/ecs/graasp-library]
graasp-dev  data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Read complete after 1s [id=graasp/etherpad]
graasp-dev  module.vpc.aws_vpc.this[0]: Refreshing state... [id=vpc-0b312f17d2e08cb6e]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Read complete after 1s [id=graasp/explore]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_redis-loggroup_AFE7CB87 (graasp-dev/redis-loggroup): Refreshing state... [id=/ecs/redis]
graasp-dev  aws_s3_bucket.graasp-dev-h5p_bucket_B545A43B (graasp-dev-h5p/bucket): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket.graasp-dev-maintenance_bucket_46B8FAD7 (graasp-dev-maintenance/bucket): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Read complete after 1s [id=graasp]
graasp-dev  aws_iam_role.graasp-dev_ecs-execution-role_A4D135E8 (graasp-dev/ecs-execution-role): Refreshing state... [id=graasp-dev-ecs-execution-role]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_parameter_group.aws_db_parameter_group.this[0]: Refreshing state... [id=graasp-postgres15-20231009123434812500000001]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Read complete after 1s [id=arn:aws:acm:eu-central-1:299720865162:certificate/af9d071d-3aa1-4583-905d-ec1efd5515d3]
graasp-dev  aws_ecs_cluster_capacity_providers.graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE (graasp-dev/graasp-dev-ecs-capacity-providers): Refreshing state... [id=graasp-dev]
graasp-dev  aws_iam_role_policy.graasp-dev_graasp-dev-ecs-execution-role-policies_D65DB830 (graasp-dev/graasp-dev-ecs-execution-role-policies): Refreshing state... [id=graasp-dev-ecs-execution-role:allow-ecr-pull]
graasp-dev  aws_ecs_task_definition.graasp-dev_redis_E9CE963D (graasp-dev/redis): Refreshing state... [id=redis]
graasp-dev  aws_ecs_task_definition.graasp-dev_iframely_4C5E8E3D (graasp-dev/iframely): Refreshing state... [id=iframely]
graasp-dev  aws_ecs_task_definition.graasp-dev_meilisearch_38A3D0B6 (graasp-dev/meilisearch): Refreshing state... [id=meilisearch]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp_54E40EB5 (graasp-dev/graasp): Refreshing state... [id=graasp]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp-library_B38B90C0 (graasp-dev/graasp-library): Refreshing state... [id=graasp-library]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role_policy_attachment.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role-20231009123438644600000004]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-assets_s3-block-public-access_D15DF7EF (graasp-dev-assets/s3-block-public-access): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-assets_s3-bucket-ownership_1BE1C46A (graasp-dev-assets/s3-bucket-ownership): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-assets_s3-website-configuration_6D1735B5 (graasp-dev-assets/s3-website-configuration): Refreshing state... [id=graasp-dev-assets]
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Read complete after 0s [id=661570887]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-client_s3-block-public-access_A8DD5DF0 (graasp-dev-client/s3-block-public-access): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-client_s3-website-configuration_A6D7BA4D (graasp-dev-client/s3-website-configuration): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-client_s3-bucket-ownership_7FA8E504 (graasp-dev-client/s3-bucket-ownership): Refreshing state... [id=graasp-dev-client]
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Read complete after 0s [id=3742575001]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-file-items_s3-cors-config_531774F3 (graasp-dev-file-items/s3-cors-config): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-file-items_s3-bucket-ownership_9BB45BB8 (graasp-dev-file-items/s3-bucket-ownership): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-file-items_s3-block-public-access_DD6519C0 (graasp-dev-file-items/s3-block-public-access): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Read complete after 0s [id=4070198440]
            aws_s3_bucket_ownership_controls.graasp-dev-apps_s3-bucket-ownership_699CAAD9 (graasp-dev-apps/s3-bucket-ownership): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-apps_s3-website-configuration_7E3F72D4 (graasp-dev-apps/s3-website-configuration): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-apps_s3-block-public-access_05DA1D21 (graasp-dev-apps/s3-block-public-access): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_policy.graasp-dev-assets_s3-policy_B5DD3F7D (graasp-dev-assets/s3-policy): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_policy.graasp-dev-client_s3-policy_71B89D07 (graasp-dev-client/s3-policy): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_policy.graasp-dev-apps_s3-policy_708B7B00 (graasp-dev-apps/s3-policy): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_cloudfront_distribution.graasp-dev-client-cloudfront (graasp-dev-client-cloudfront): Refreshing state... [id=E1ZTGZST8787TH]
graasp-dev  aws_cloudfront_distribution.graasp-dev-assets-cloudfront (graasp-dev-assets-cloudfront): Refreshing state... [id=E1TTPMNH8QPMJP]
graasp-dev  module.vpc.aws_default_security_group.this[0]: Refreshing state... [id=sg-0fd249cba5ab4c742]
graasp-dev  module.vpc.aws_default_route_table.default[0]: Refreshing state... [id=rtb-0de0872c207e953b3]
graasp-dev  module.vpc.aws_default_network_acl.this[0]: Refreshing state... [id=acl-06ce6a79ac9494ac3]
graasp-dev  aws_security_group.graasp-dev-library-security-group (graasp-dev-library-security-group): Refreshing state... [id=sg-07bae39853af00427]
graasp-dev  aws_security_group.graasp-dev-meilisearch-security-group (graasp-dev-meilisearch-security-group): Refreshing state... [id=sg-0b3ce2813b8775eba]
graasp-dev  aws_security_group.graasp-dev-redis-security-group (graasp-dev-redis-security-group): Refreshing state... [id=sg-0a7ebce0ecabcd895]
            module.vpc.aws_route_table.public[0]: Refreshing state... [id=rtb-09991359fa2a53c1c]
graasp-dev  aws_security_group.graasp-dev-etherpad-security-group (graasp-dev-etherpad-security-group): Refreshing state... [id=sg-0ffb7f564703627af]
graasp-dev  aws_security_group.graasp-dev-backend-security-group (graasp-dev-backend-security-group): Refreshing state... [id=sg-014f1fd084973fd06]
graasp-dev  aws_security_group.graasp-dev-postgres_graasp-dev-db-security-group_6A637215 (graasp-dev-postgres/graasp-dev-db-security-group): Refreshing state... [id=sg-009f5a0d494264c65]
graasp-dev  aws_security_group.graasp-dev-umami-security-group (graasp-dev-umami-security-group): Refreshing state... [id=sg-03d98ff7f2eb798fa]
graasp-dev  module.vpc.aws_internet_gateway.this[0]: Refreshing state... [id=igw-01955c8cc5f6d5181]
graasp-dev  module.vpc.aws_subnet.public[0]: Refreshing state... [id=subnet-0596b784e2da6e5c6]
graasp-dev  module.vpc.aws_subnet.public[1]: Refreshing state... [id=subnet-055a0124ce88123b2]
graasp-dev  aws_security_group.graasp-dev-gatekeeper_graasp-dev-gatekeeper-security-group_92E8E7CC (graasp-dev-gatekeeper/graasp-dev-gatekeeper-security-group): Refreshing state... [id=sg-036836715bbca8a32]
graasp-dev  module.vpc.aws_subnet.public[2]: Refreshing state... [id=subnet-01f44d93731acccb7]
graasp-dev  aws_security_group.graasp-dev-lb-security-group (graasp-dev-lb-security-group): Refreshing state... [id=sg-0f07f40e7da03b966]
graasp-dev  aws_security_group.graasp-dev-iframely-security-group (graasp-dev-iframely-security-group): Refreshing state... [id=sg-0ca4813c62c9d17a3]
graasp-dev  aws_cloudfront_distribution.graasp-dev-apps-cloudfront (graasp-dev-apps-cloudfront): Refreshing state... [id=E354WPS1CZ652D]
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Read complete after 0s [id=1897348743]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-h5p_s3-cors-config_EC778FA8 (graasp-dev-h5p/s3-cors-config): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-h5p_s3-bucket-ownership_418B795B (graasp-dev-h5p/s3-bucket-ownership): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-h5p_s3-block-public-access_2D472005 (graasp-dev-h5p/s3-block-public-access): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-h5p_s3-website-configuration_5FB93898 (graasp-dev-h5p/s3-website-configuration): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-maintenance_s3-website-configuration_50149944 (graasp-dev-maintenance/s3-website-configuration): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-maintenance_s3-bucket-ownership_1588A828 (graasp-dev-maintenance/s3-bucket-ownership): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-maintenance_s3-block-public-access_C8FD87F8 (graasp-dev-maintenance/s3-block-public-access): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Read complete after 0s [id=2448502661]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-library-allow-all (graasp-dev-library-allow-all): Refreshing state... [id=sgr-03cd64d6e8521413a]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-meilisearch-allow-all (graasp-dev-meilisearch-allow-all): Refreshing state... [id=sgr-0418d7a3309cc5d5e]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-redis-allow-all (graasp-dev-redis-allow-all): Refreshing state... [id=sgr-03673e2379ee73580]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-redis-allow-graasp-backend (graasp-dev-redis-allow-graasp-backend): Refreshing state... [id=sgr-08d29290d8638ef8f]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-meilisearch-allow-graasp-backend (graasp-dev-meilisearch-allow-graasp-backend): Refreshing state... [id=sgr-0d502c3895f05dc26]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-backend-allow-all (graasp-dev-backend-allow-all): Refreshing state... [id=sgr-0f70a895b80fd309e]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-etherpad-allow-all (graasp-dev-etherpad-allow-all): Refreshing state... [id=sgr-06470ffe6a0df1219]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-etherpad_A95D382C (graasp-dev-postgres/graasp-dev-db-allow-etherpad): Refreshing state... [id=sgr-0ded857153724c35d]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-graasp-backend_E8883EF3 (graasp-dev-postgres/graasp-dev-db-allow-graasp-backend): Refreshing state... [id=sgr-007f1bb79fc0de776]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-postgres_graasp-dev-db-allow-all_0D9DEE53 (graasp-dev-postgres/graasp-dev-db-allow-all): Refreshing state... [id=sgr-0199bcbb086d17111]
graasp-dev  aws_s3_bucket_policy.graasp-dev-h5p_s3-policy_9DB0282E (graasp-dev-h5p/s3-policy): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  module.vpc.aws_route.public_internet_gateway[0]: Refreshing state... [id=r-rtb-09991359fa2a53c1c1080289494]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-umami-allow-all (graasp-dev-umami-allow-all): Refreshing state... [id=sgr-026fb931c3d9a2d33]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-umami_425B5740 (graasp-dev-postgres/graasp-dev-db-allow-umami): Refreshing state... [id=sgr-063ed5e713152b283]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-meilisearch (graasp-dev-allow-gatekeeper-on-meilisearch): Refreshing state... [id=sgr-0959c46cb81a9c68e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-inbound-ssh_1B8A7117 (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-inbound-ssh): Refreshing state... [id=sgr-0a51d11a638800750]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-all_B66B414C (graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-all): Refreshing state... [id=sgr-042fe01dcb13dead6]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-postgres (graasp-dev-allow-gatekeeper-on-postgres): Refreshing state... [id=sgr-0058c3745753e6995]
graasp-dev  aws_s3_bucket_policy.graasp-dev-maintenance_s3-policy_DA8583B1 (graasp-dev-maintenance/s3-policy): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-iframely-allow-all (graasp-dev-iframely-allow-all): Refreshing state... [id=sgr-03b6e652d0d98bb05]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-iframely-allow-graasp-backend (graasp-dev-iframely-allow-graasp-backend): Refreshing state... [id=sgr-0d4d4b4ffd0b49a87]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-load-balancer_graasp-dev-allow-all_001EC5EB (graasp-dev-load-balancer/graasp-dev-allow-all): Refreshing state... [id=sgr-08d13e43e33fd5b5a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-umami-allow-load-balancer (graasp-dev-umami-allow-load-balancer): Refreshing state... [id=sgr-05a39a274de98821a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-backend-allow-load-balancer (graasp-dev-backend-allow-load-balancer): Refreshing state... [id=sgr-0f1f4d5674dff4695]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http-ipv6_91743348 (graasp-dev-load-balancer/allow-http-ipv6): Refreshing state... [id=sgr-084bba5f4b221f189]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-library-allow-load-balancer (graasp-dev-library-allow-load-balancer): Refreshing state... [id=sgr-04e219db366df9a40]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http_0E987E63 (graasp-dev-load-balancer/allow-http): Refreshing state... [id=sgr-0dbd5cad25b6a1a87]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-etherpad-allow-load-balancer (graasp-dev-etherpad-allow-load-balancer): Refreshing state... [id=sgr-06e2e5786d9ade6fb]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https-ipv6_DC496355 (graasp-dev-load-balancer/allow-https-ipv6): Refreshing state... [id=sgr-023719db02da6a2a8]
graasp-dev  module.vpc.aws_route_table_association.public[0]: Refreshing state... [id=rtbassoc-0ba3fbc906b89068b]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https_0223BC47 (graasp-dev-load-balancer/allow-https): Refreshing state... [id=sgr-0d7110664852fbdc7]
graasp-dev  module.vpc.aws_route_table_association.public[1]: Refreshing state... [id=rtbassoc-065b7c3d10a5adb5f]
graasp-dev  module.vpc.aws_route_table_association.public[2]: Refreshing state... [id=rtbassoc-0953114662597b70b]
graasp-dev  aws_cloudfront_distribution.graasp-dev-h5p-cloudfront (graasp-dev-h5p-cloudfront): Refreshing state... [id=E3B7XJV46O4VB4]
graasp-dev  aws_cloudfront_distribution.graasp-dev-maintenance-cloudfront (graasp-dev-maintenance-cloudfront): Refreshing state... [id=EGBVR5KHBTMNX]
graasp-dev  aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/iframely]
graasp-dev  aws_lb.graasp-dev-load-balancer_lb_9A06B77C (graasp-dev-load-balancer/lb): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:loadbalancer/app/graasp-dev/2d9df8ffedc22275]
graasp-dev  aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis]
graasp-dev  aws_instance.graasp-dev-gatekeeper_graasp-dev-gatekeeper-ec2_A55DD5DA (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-ec2): Refreshing state... [id=i-0fd04870b794c75b3]
graasp-dev  aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_subnet_group.aws_db_subnet_group.this[0]: Refreshing state... [id=graasp-dev-20231009123833192500000015]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_db_instance.this[0]: Refreshing state... [id=db-3CNANXEZMD2SUYDRIDBIHT6F2M]
graasp-dev  aws_ecs_task_definition.graasp-dev_umami_88984772 (graasp-dev/umami): Refreshing state... [id=umami]
graasp-dev  aws_ecs_task_definition.graasp-dev_etherpad_D664EB2D (graasp-dev/etherpad): Refreshing state... [id=etherpad]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-http-redirect_309E2C64 (graasp-dev-load-balancer/lb-listener-http-redirect): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/9cc00852f3f90d6a]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-https_E069C227 (graasp-dev-load-balancer/lb-listener-https): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-account_E8E1BF85 (graasp-dev-load-balancer/graasp-dev-account): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185f084d6839808c]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-library-target-group_47035354 (graasp-dev/graasp-library-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0]
            aws_lb_target_group.graasp-dev_graasp-target-group_7E05BC31 (graasp-dev/graasp-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-auth_E1CC888F (graasp-dev-load-balancer/graasp-dev-auth): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/ac24f176bd35c164]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-player_6D261351 (graasp-dev-load-balancer/graasp-dev-player): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/18102830b42e109e]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-builder_4D040462 (graasp-dev-load-balancer/graasp-dev-builder): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/6a7e5d40fbbc59d7]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-shortener_2A4B0FBC (graasp-dev-load-balancer/graasp-dev-shortener): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/a0a229972dcce063]
            aws_lb_target_group.graasp-dev_etherpad-target-group_94F8091C (graasp-dev/etherpad-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-analytics_431AD7A3 (graasp-dev-load-balancer/graasp-dev-analytics): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/753c902cdec8ab13]
graasp-dev  aws_lb_target_group.graasp-dev_umami-target-group_02AC6A93 (graasp-dev/umami-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/umami/eb6d060fc17e2e52]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-rule_8589AD50 (graasp-dev/graasp-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/5bba1be112990e2f]
graasp-dev  aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-library-rule_AC381C09 (graasp-dev/graasp-library-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/47b6511ce97bab5a]
graasp-dev  aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library]
graasp-dev  aws_lb_listener_rule.graasp-dev_etherpad-rule_74CA3679 (graasp-dev/etherpad-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/d95b5f32dc661338]
graasp-dev  aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp]
graasp-dev  aws_lb_listener_rule.graasp-dev_umami-rule_139819E3 (graasp-dev/umami-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185c679fb423b689]
graasp-dev  aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp-library]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-service-autoscaling-policy_70C429DA (graasp-dev/graasp-service-autoscaling-policy): Refreshing state... [id=graasp]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-library-service-autoscaling-policy_E718A88F (graasp-dev/graasp-library-service-autoscaling-policy): Refreshing state... [id=graasp-library]
graasp-dev  Terraform used the selected providers to generate the following execution
            plan. Resource actions are indicated with the following symbols:
            -/+ destroy and then create replacement

            Terraform will perform the following actions:
graasp-dev  # aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_etherpad-service_366B5CFC" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad" -> (known after apply)
                  + launch_type                        = (known after apply)
                    name                               = "etherpad"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  - capacity_provider_strategy { # forces replacement
                      - base              = 0 -> null
                      - capacity_provider = "FARGATE_SPOT" -> null
                      - weight            = 0 -> null
                    }
                  - capacity_provider_strategy { # forces replacement
                      - base              = 1 -> null
                      - capacity_provider = "FARGATE" -> null
                      - weight            = 1 -> null
                    }
                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-library-service_35621E15" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library" -> (known after apply)
                  + launch_type                        = (known after apply)
                    name                               = "graasp-library"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:183" -> "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:154"
                  ~ triggers                           = {} -> (known after apply)
                    # (10 unchanged attributes hidden)

                  - capacity_provider_strategy { # forces replacement
                      - base              = 0 -> null
                      - capacity_provider = "FARGATE_SPOT" -> null
                      - weight            = 0 -> null
                    }
                  - capacity_provider_strategy { # forces replacement
                      - base              = 1 -> null
                      - capacity_provider = "FARGATE" -> null
                      - weight            = 1 -> null
                    }
                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-service_BD538BD2" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp" -> (known after apply)
                  + launch_type                        = (known after apply)
                    name                               = "graasp"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:749" -> "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:584"
                  ~ triggers                           = {} -> (known after apply)
                    # (10 unchanged attributes hidden)

                  - capacity_provider_strategy { # forces replacement
                      - base              = 0 -> null
                      - capacity_provider = "FARGATE_SPOT" -> null
                      - weight            = 0 -> null
                    }
                  - capacity_provider_strategy { # forces replacement
                      - base              = 1 -> null
                      - capacity_provider = "FARGATE" -> null
                      - weight            = 1 -> null
                    }
                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_umami-service_6A875906" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami" -> (known after apply)
                  + launch_type                        = (known after apply)
                    name                               = "umami"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  - capacity_provider_strategy { # forces replacement
                      - base              = 1 -> null
                      - capacity_provider = "FARGATE" -> null
                      - weight            = 100 -> null
                    }
                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (2 unchanged blocks hidden)
                }

            Plan: 4 to add, 0 to change, 4 to destroy.

            ─────────────────────────────────────────────────────────────────────────────

            Saved the plan to: plan

            To perform exactly these actions, run the following command to apply:
                terraform apply "plan"

@spaenleh spaenleh self-assigned this Feb 3, 2025
@spaenleh spaenleh added the feature New feature or request label Feb 3, 2025
Copy link
Contributor

@pyphilia pyphilia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM I suggested renaming suggestions

@github-actions
Copy link

github-actions bot commented Feb 5, 2025

❌ Error planning Terraform CDK Stack 'graasp-dev'

Error: The process '/opt/hostedtoolcache/node/20.18.2/x64/bin/npx' failed with exit code 1
[2025-02-05T13:34:47.203] [ERROR] default - /home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859
    return new TSError(diagnosticText, diagnosticCodes, diagnostics);
           ^

[2025-02-05T13:34:47.204] [ERROR] default - TSError: ⨯ Unable to compile TypeScript:
main.ts(35,38): error TS2339: Property 'Francfort' does not exist on type '{ readonly Frankfurt: "eu-central-1"; readonly Zurich: "eu-central-2"; }'.

    at createTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859:12)
    at reportTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:863:19)
    at getOutput (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1077:36)
    at Object.compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1433:41)
    at Module.m._compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1617:30)
    at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
    at Object.require.extensions.<computed> [as .ts] (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1621:12)
    at Module.load (node:internal/modules/cjs/loader:1288:32)
    at Function.Module._load (node:internal/modules/cjs/loader:1104:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:173:12) {
  diagnosticCodes: [ 2339 ]
}

ERROR: cdktf encountered an error while synthesizing

Synth command: npx ts-node main.ts
Error:         non-zero exit code 1

Command output on stderr:

    /home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859
        return new TSError(diagnosticText, diagnosticCodes, diagnostics);
               ^
    TSError: ⨯ Unable to compile TypeScript:
    main.ts(35,38): error TS2339: Property 'Francfort' does not exist on type '{ readonly Frankfurt: "eu-central-1"; readonly Zurich: "eu-central-2"; }'.

        at createTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:859:12)
        at reportTSError (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:863:19)
        at getOutput (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1077:36)
        at Object.compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1433:41)
        at Module.m._compile (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1617:30)
        at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
        at Object.require.extensions.<computed> [as .ts] (/home/runner/work/graasp-infrastructure/graasp-infrastructure/node_modules/ts-node/src/index.ts:1621:12)
        at Module.load (node:internal/modules/cjs/loader:1288:32)
        at Function.Module._load (node:internal/modules/cjs/loader:1104:12)
        at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:173:12) {
      diagnosticCodes: [ 2339 ]
    }




⠇  Synthesizing

@github-actions
Copy link

github-actions bot commented Feb 5, 2025

✅ Successfully planned Terraform CDK Stack 'graasp-dev'

Show Plan
graasp-dev  Initializing the backend...
graasp-dev  Successfully configured the backend "s3"! Terraform will automatically
            use this backend unless the backend configuration changes.
graasp-dev  Initializing modules...
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/rds/aws 6.10.0 for graasp-dev-postgres_db_F1D5DB7A...
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance_role_association in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance_role_association
            - graasp-dev-postgres_db_F1D5DB7A.db_option_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_option_group
            - graasp-dev-postgres_db_F1D5DB7A.db_parameter_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_parameter_group
            - graasp-dev-postgres_db_F1D5DB7A.db_subnet_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_subnet_group
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/vpc/aws 5.18.1 for vpc...
graasp-dev  - vpc in .terraform/modules/vpc
graasp-dev  Initializing provider plugins...
graasp-dev  - Finding hashicorp/aws versions matching ">= 5.46.0, >= 5.59.0, >= 5.62.0, 5.83.1"...
graasp-dev  - Finding hashicorp/random versions matching ">= 3.1.0"...
graasp-dev  - Installing hashicorp/random v3.6.3...
graasp-dev  - Installed hashicorp/random v3.6.3 (signed by HashiCorp)
graasp-dev  - Installing hashicorp/aws v5.83.1...
graasp-dev  - Installed hashicorp/aws v5.83.1 (signed by HashiCorp)
            Terraform has created a lock file .terraform.lock.hcl to record the provider
            selections it made above. Include this file in your version control repository
            so that Terraform can guarantee to make the same selections by default when
            you run "terraform init" in the future.
graasp-dev  Terraform has been successfully initialized!

            You may now begin working with Terraform. Try running "terraform plan" to see
            any changes that are required for your infrastructure. All Terraform commands
            should now work.

            If you ever set or change modules or backend configuration for Terraform,
            rerun this command to reinitialize your working directory. If you forget, other
            commands will detect it and remind you to do so if necessary.
graasp-dev  - Fetching hashicorp/random 3.6.3 for linux_amd64...
graasp-dev  - Retrieved hashicorp/random 3.6.3 for linux_amd64 (signed by HashiCorp)
graasp-dev  - Fetching hashicorp/aws 5.83.1 for linux_amd64...
graasp-dev  - Retrieved hashicorp/aws 5.83.1 for linux_amd64 (signed by HashiCorp)
            - Obtained hashicorp/aws checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
graasp-dev  - Obtained hashicorp/random checksums for linux_amd64; All checksums for this platform were already tracked in the lock file

            Success! Terraform has validated the lock file and found no need for changes.
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.random_id.snapshot_identifier[0]: Refreshing state... [id=SHBibw]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Reading...
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Read complete after 0s [id=arn:aws:acm:us-east-1:299720865162:certificate/46cb9d1f-aea8-42de-8232-a5b83f1cc7e2]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_etherpad-loggroup_200385B4 (graasp-dev/etherpad-loggroup): Refreshing state... [id=/ecs/etherpad]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Reading...
graasp-dev  aws_cloudwatch_log_group.graasp-dev_umami-loggroup_544115BF (graasp-dev/umami-loggroup): Refreshing state... [id=/ecs/umami]
            aws_cloudwatch_log_group.graasp-dev_graasp-loggroup_44ECC8C2 (graasp-dev/graasp-loggroup): Refreshing state... [id=/ecs/graasp]
            aws_cloudwatch_log_group.graasp-dev_iframely-loggroup_105420D9 (graasp-dev/iframely-loggroup): Refreshing state... [id=/ecs/iframely]
            aws_service_discovery_http_namespace.graasp-dev_namespace_B6F7BA2C (graasp-dev/namespace): Refreshing state... [id=ns-us3rov3ukfoth5ox]
            module.vpc.aws_vpc.this[0]: Refreshing state... [id=vpc-0b312f17d2e08cb6e]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Read complete after 0s [id=aws]
            aws_cloudwatch_log_group.graasp-dev_graasp-library-loggroup_FD22B99E (graasp-dev/graasp-library-loggroup): Refreshing state... [id=/ecs/graasp-library]
graasp-dev  aws_s3_bucket.graasp-dev-apps_bucket_F4170225 (graasp-dev-apps/bucket): Refreshing state... [id=graasp-dev-apps]
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Reading...
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_parameter_group.aws_db_parameter_group.this[0]: Refreshing state... [id=graasp-postgres15-20231009123434812500000001]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Read complete after 0s [id=76086537]
            aws_cloudwatch_log_group.graasp-dev_redis-loggroup_AFE7CB87 (graasp-dev/redis-loggroup): Refreshing state... [id=/ecs/redis]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Reading...
graasp-dev  aws_iam_role.graasp-dev_ecs-execution-role_A4D135E8 (graasp-dev/ecs-execution-role): Refreshing state... [id=graasp-dev-ecs-execution-role]
graasp-dev  aws_s3_bucket.graasp-dev-client_bucket_076446C5 (graasp-dev-client/bucket): Refreshing state... [id=graasp-dev-client]
            data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Reading...
graasp-dev  aws_ecs_cluster.cluster (cluster): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev]
            data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Reading...
graasp-dev  aws_s3_bucket.graasp-dev-h5p_bucket_B545A43B (graasp-dev-h5p/bucket): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket.graasp-dev-assets_bucket_8930785E (graasp-dev-assets/bucket): Refreshing state... [id=graasp-dev-assets]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Reading...
graasp-dev  aws_cloudwatch_log_group.graasp-dev_meilisearch-loggroup_F1AD2775 (graasp-dev/meilisearch-loggroup): Refreshing state... [id=/ecs/meilisearch]
graasp-dev  aws_s3_bucket.graasp-dev-file-items_bucket_12606B30 (graasp-dev-file-items/bucket): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Read complete after 1s [id=graasp/etherpad]
graasp-dev  aws_s3_bucket.graasp-dev-maintenance_bucket_46B8FAD7 (graasp-dev-maintenance/bucket): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Read complete after 1s [id=graasp]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Read complete after 1s [id=arn:aws:acm:eu-central-1:299720865162:certificate/af9d071d-3aa1-4583-905d-ec1efd5515d3]
graasp-dev  aws_ecs_task_definition.graasp-dev_redis_E9CE963D (graasp-dev/redis): Refreshing state... [id=redis]
graasp-dev  aws_ecs_task_definition.graasp-dev_meilisearch_38A3D0B6 (graasp-dev/meilisearch): Refreshing state... [id=meilisearch]
graasp-dev  aws_ecs_task_definition.graasp-dev_iframely_4C5E8E3D (graasp-dev/iframely): Refreshing state... [id=iframely]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Read complete after 1s [id=graasp/explore]
graasp-dev  aws_iam_role_policy.graasp-dev_graasp-dev-ecs-execution-role-policies_D65DB830 (graasp-dev/graasp-dev-ecs-execution-role-policies): Refreshing state... [id=graasp-dev-ecs-execution-role:allow-ecr-pull]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp_54E40EB5 (graasp-dev/graasp): Refreshing state... [id=graasp]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp-library_B38B90C0 (graasp-dev/graasp-library): Refreshing state... [id=graasp-library]
graasp-dev  module.vpc.aws_default_security_group.this[0]: Refreshing state... [id=sg-0fd249cba5ab4c742]
graasp-dev  module.vpc.aws_default_route_table.default[0]: Refreshing state... [id=rtb-0de0872c207e953b3]
graasp-dev  module.vpc.aws_default_network_acl.this[0]: Refreshing state... [id=acl-06ce6a79ac9494ac3]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role_policy_attachment.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role-20231009123438644600000004]
graasp-dev  aws_security_group.graasp-dev-meilisearch-security-group (graasp-dev-meilisearch-security-group): Refreshing state... [id=sg-0b3ce2813b8775eba]
graasp-dev  aws_security_group.graasp-dev-library-security-group (graasp-dev-library-security-group): Refreshing state... [id=sg-07bae39853af00427]
graasp-dev  aws_security_group.graasp-dev-redis-security-group (graasp-dev-redis-security-group): Refreshing state... [id=sg-0a7ebce0ecabcd895]
graasp-dev  aws_security_group.graasp-dev-gatekeeper_graasp-dev-gatekeeper-security-group_92E8E7CC (graasp-dev-gatekeeper/graasp-dev-gatekeeper-security-group): Refreshing state... [id=sg-036836715bbca8a32]
graasp-dev  aws_security_group.graasp-dev-lb-security-group (graasp-dev-lb-security-group): Refreshing state... [id=sg-0f07f40e7da03b966]
graasp-dev  aws_security_group.graasp-dev-umami-security-group (graasp-dev-umami-security-group): Refreshing state... [id=sg-03d98ff7f2eb798fa]
graasp-dev  aws_security_group.graasp-dev-etherpad-security-group (graasp-dev-etherpad-security-group): Refreshing state... [id=sg-0ffb7f564703627af]
graasp-dev  aws_security_group.graasp-dev-iframely-security-group (graasp-dev-iframely-security-group): Refreshing state... [id=sg-0ca4813c62c9d17a3]
graasp-dev  aws_security_group.graasp-dev-backend-security-group (graasp-dev-backend-security-group): Refreshing state... [id=sg-014f1fd084973fd06]
            aws_security_group.graasp-dev-postgres_graasp-dev-db-security-group_6A637215 (graasp-dev-postgres/graasp-dev-db-security-group): Refreshing state... [id=sg-009f5a0d494264c65]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-apps_s3-website-configuration_7E3F72D4 (graasp-dev-apps/s3-website-configuration): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-apps_s3-bucket-ownership_699CAAD9 (graasp-dev-apps/s3-bucket-ownership): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-apps_s3-block-public-access_05DA1D21 (graasp-dev-apps/s3-block-public-access): Refreshing state... [id=graasp-dev-apps]
graasp-dev  module.vpc.aws_route_table.public[0]: Refreshing state... [id=rtb-09991359fa2a53c1c]
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Read complete after 0s [id=4070198440]
graasp-dev  module.vpc.aws_internet_gateway.this[0]: Refreshing state... [id=igw-01955c8cc5f6d5181]
graasp-dev  module.vpc.aws_subnet.public[0]: Refreshing state... [id=subnet-0596b784e2da6e5c6]
graasp-dev  module.vpc.aws_subnet.public[2]: Refreshing state... [id=subnet-01f44d93731acccb7]
graasp-dev  module.vpc.aws_subnet.public[1]: Refreshing state... [id=subnet-055a0124ce88123b2]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-library-allow-all (graasp-dev-library-allow-all): Refreshing state... [id=sgr-03cd64d6e8521413a]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-meilisearch-allow-all (graasp-dev-meilisearch-allow-all): Refreshing state... [id=sgr-0418d7a3309cc5d5e]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-h5p_s3-website-configuration_5FB93898 (graasp-dev-h5p/s3-website-configuration): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-h5p_s3-block-public-access_2D472005 (graasp-dev-h5p/s3-block-public-access): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Read complete after 0s [id=1897348743]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-h5p_s3-bucket-ownership_418B795B (graasp-dev-h5p/s3-bucket-ownership): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-h5p_s3-cors-config_EC778FA8 (graasp-dev-h5p/s3-cors-config): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-redis-allow-all (graasp-dev-redis-allow-all): Refreshing state... [id=sgr-03673e2379ee73580]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-client_s3-block-public-access_A8DD5DF0 (graasp-dev-client/s3-block-public-access): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-client_s3-bucket-ownership_7FA8E504 (graasp-dev-client/s3-bucket-ownership): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-client_s3-website-configuration_A6D7BA4D (graasp-dev-client/s3-website-configuration): Refreshing state... [id=graasp-dev-client]
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Read complete after 0s [id=3742575001]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-library-allow-load-balancer (graasp-dev-library-allow-load-balancer): Refreshing state... [id=sgr-04e219db366df9a40]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https_0223BC47 (graasp-dev-load-balancer/allow-https): Refreshing state... [id=sgr-0d7110664852fbdc7]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http-ipv6_91743348 (graasp-dev-load-balancer/allow-http-ipv6): Refreshing state... [id=sgr-084bba5f4b221f189]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http_0E987E63 (graasp-dev-load-balancer/allow-http): Refreshing state... [id=sgr-0dbd5cad25b6a1a87]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https-ipv6_DC496355 (graasp-dev-load-balancer/allow-https-ipv6): Refreshing state... [id=sgr-023719db02da6a2a8]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-load-balancer_graasp-dev-allow-all_001EC5EB (graasp-dev-load-balancer/graasp-dev-allow-all): Refreshing state... [id=sgr-08d13e43e33fd5b5a]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-all_B66B414C (graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-all): Refreshing state... [id=sgr-042fe01dcb13dead6]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-meilisearch (graasp-dev-allow-gatekeeper-on-meilisearch): Refreshing state... [id=sgr-0959c46cb81a9c68e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-inbound-ssh_1B8A7117 (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-inbound-ssh): Refreshing state... [id=sgr-0a51d11a638800750]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-assets_s3-website-configuration_6D1735B5 (graasp-dev-assets/s3-website-configuration): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-assets_s3-block-public-access_D15DF7EF (graasp-dev-assets/s3-block-public-access): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-assets_s3-bucket-ownership_1BE1C46A (graasp-dev-assets/s3-bucket-ownership): Refreshing state... [id=graasp-dev-assets]
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Read complete after 0s [id=661570887]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-umami-allow-all (graasp-dev-umami-allow-all): Refreshing state... [id=sgr-026fb931c3d9a2d33]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-umami-allow-load-balancer (graasp-dev-umami-allow-load-balancer): Refreshing state... [id=sgr-05a39a274de98821a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-etherpad-allow-load-balancer (graasp-dev-etherpad-allow-load-balancer): Refreshing state... [id=sgr-06e2e5786d9ade6fb]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-etherpad-allow-all (graasp-dev-etherpad-allow-all): Refreshing state... [id=sgr-06470ffe6a0df1219]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-iframely-allow-all (graasp-dev-iframely-allow-all): Refreshing state... [id=sgr-03b6e652d0d98bb05]
            aws_s3_bucket_policy.graasp-dev-apps_s3-policy_708B7B00 (graasp-dev-apps/s3-policy): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-meilisearch-allow-graasp-backend (graasp-dev-meilisearch-allow-graasp-backend): Refreshing state... [id=sgr-0d502c3895f05dc26]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-backend-allow-load-balancer (graasp-dev-backend-allow-load-balancer): Refreshing state... [id=sgr-0f1f4d5674dff4695]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-iframely-allow-graasp-backend (graasp-dev-iframely-allow-graasp-backend): Refreshing state... [id=sgr-0d4d4b4ffd0b49a87]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-backend-allow-all (graasp-dev-backend-allow-all): Refreshing state... [id=sgr-0f70a895b80fd309e]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-redis-allow-graasp-backend (graasp-dev-redis-allow-graasp-backend): Refreshing state... [id=sgr-08d29290d8638ef8f]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-postgres_graasp-dev-db-allow-all_0D9DEE53 (graasp-dev-postgres/graasp-dev-db-allow-all): Refreshing state... [id=sgr-0199bcbb086d17111]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-graasp-backend_E8883EF3 (graasp-dev-postgres/graasp-dev-db-allow-graasp-backend): Refreshing state... [id=sgr-007f1bb79fc0de776]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-etherpad_A95D382C (graasp-dev-postgres/graasp-dev-db-allow-etherpad): Refreshing state... [id=sgr-0ded857153724c35d]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-postgres (graasp-dev-allow-gatekeeper-on-postgres): Refreshing state... [id=sgr-0058c3745753e6995]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-umami_425B5740 (graasp-dev-postgres/graasp-dev-db-allow-umami): Refreshing state... [id=sgr-063ed5e713152b283]
graasp-dev  module.vpc.aws_route.public_internet_gateway[0]: Refreshing state... [id=r-rtb-09991359fa2a53c1c1080289494]
graasp-dev  aws_s3_bucket_policy.graasp-dev-h5p_s3-policy_9DB0282E (graasp-dev-h5p/s3-policy): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  module.vpc.aws_route_table_association.public[0]: Refreshing state... [id=rtbassoc-0ba3fbc906b89068b]
graasp-dev  aws_cloudfront_distribution.graasp-dev-apps-cloudfront (graasp-dev-apps-cloudfront): Refreshing state... [id=E354WPS1CZ652D]
graasp-dev  module.vpc.aws_route_table_association.public[1]: Refreshing state... [id=rtbassoc-065b7c3d10a5adb5f]
graasp-dev  module.vpc.aws_route_table_association.public[2]: Refreshing state... [id=rtbassoc-0953114662597b70b]
graasp-dev  aws_s3_bucket_policy.graasp-dev-client_s3-policy_71B89D07 (graasp-dev-client/s3-policy): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-file-items_s3-cors-config_531774F3 (graasp-dev-file-items/s3-cors-config): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-file-items_s3-block-public-access_DD6519C0 (graasp-dev-file-items/s3-block-public-access): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-file-items_s3-bucket-ownership_9BB45BB8 (graasp-dev-file-items/s3-bucket-ownership): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_cloudfront_distribution.graasp-dev-h5p-cloudfront (graasp-dev-h5p-cloudfront): Refreshing state... [id=E3B7XJV46O4VB4]
graasp-dev  aws_s3_bucket_policy.graasp-dev-assets_s3-policy_B5DD3F7D (graasp-dev-assets/s3-policy): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-maintenance_s3-website-configuration_50149944 (graasp-dev-maintenance/s3-website-configuration): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-maintenance_s3-bucket-ownership_1588A828 (graasp-dev-maintenance/s3-bucket-ownership): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Read complete after 0s [id=2448502661]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-maintenance_s3-block-public-access_C8FD87F8 (graasp-dev-maintenance/s3-block-public-access): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_cloudfront_distribution.graasp-dev-client-cloudfront (graasp-dev-client-cloudfront): Refreshing state... [id=E1ZTGZST8787TH]
graasp-dev  aws_cloudfront_distribution.graasp-dev-assets-cloudfront (graasp-dev-assets-cloudfront): Refreshing state... [id=E1TTPMNH8QPMJP]
graasp-dev  aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis]
graasp-dev  aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch]
graasp-dev  aws_instance.graasp-dev-gatekeeper_graasp-dev-gatekeeper-ec2_A55DD5DA (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-ec2): Refreshing state... [id=i-0fd04870b794c75b3]
graasp-dev  aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/iframely]
graasp-dev  aws_lb.graasp-dev-load-balancer_lb_9A06B77C (graasp-dev-load-balancer/lb): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:loadbalancer/app/graasp-dev/2d9df8ffedc22275]
graasp-dev  aws_s3_bucket_policy.graasp-dev-maintenance_s3-policy_DA8583B1 (graasp-dev-maintenance/s3-policy): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_subnet_group.aws_db_subnet_group.this[0]: Refreshing state... [id=graasp-dev-20231009123833192500000015]
graasp-dev  aws_cloudfront_distribution.graasp-dev-maintenance-cloudfront (graasp-dev-maintenance-cloudfront): Refreshing state... [id=EGBVR5KHBTMNX]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_db_instance.this[0]: Refreshing state... [id=db-3CNANXEZMD2SUYDRIDBIHT6F2M]
graasp-dev  aws_ecs_task_definition.graasp-dev_umami_88984772 (graasp-dev/umami): Refreshing state... [id=umami]
graasp-dev  aws_ecs_task_definition.graasp-dev_etherpad_D664EB2D (graasp-dev/etherpad): Refreshing state... [id=etherpad]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-http-redirect_309E2C64 (graasp-dev-load-balancer/lb-listener-http-redirect): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/9cc00852f3f90d6a]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-https_E069C227 (graasp-dev-load-balancer/lb-listener-https): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-builder_4D040462 (graasp-dev-load-balancer/graasp-dev-builder): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/6a7e5d40fbbc59d7]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-analytics_431AD7A3 (graasp-dev-load-balancer/graasp-dev-analytics): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/753c902cdec8ab13]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-player_6D261351 (graasp-dev-load-balancer/graasp-dev-player): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/18102830b42e109e]
graasp-dev  aws_lb_target_group.graasp-dev_etherpad-target-group_94F8091C (graasp-dev/etherpad-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-shortener_2A4B0FBC (graasp-dev-load-balancer/graasp-dev-shortener): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/a0a229972dcce063]
            aws_lb_target_group.graasp-dev_umami-target-group_02AC6A93 (graasp-dev/umami-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/umami/eb6d060fc17e2e52]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-auth_E1CC888F (graasp-dev-load-balancer/graasp-dev-auth): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/ac24f176bd35c164]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-account_E8E1BF85 (graasp-dev-load-balancer/graasp-dev-account): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185f084d6839808c]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-library-target-group_47035354 (graasp-dev/graasp-library-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-target-group_7E05BC31 (graasp-dev/graasp-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909]
graasp-dev  aws_lb_listener_rule.graasp-dev_etherpad-rule_74CA3679 (graasp-dev/etherpad-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/d95b5f32dc661338]
graasp-dev  aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad]
graasp-dev  aws_lb_listener_rule.graasp-dev_umami-rule_139819E3 (graasp-dev/umami-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185c679fb423b689]
graasp-dev  aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-library-rule_AC381C09 (graasp-dev/graasp-library-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/47b6511ce97bab5a]
            aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-rule_8589AD50 (graasp-dev/graasp-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/5bba1be112990e2f]
graasp-dev  aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp-library]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-library-service-autoscaling-policy_E718A88F (graasp-dev/graasp-library-service-autoscaling-policy): Refreshing state... [id=graasp-library]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-service-autoscaling-policy_70C429DA (graasp-dev/graasp-service-autoscaling-policy): Refreshing state... [id=graasp]
graasp-dev  Terraform used the selected providers to generate the following execution
            plan. Resource actions are indicated with the following symbols:
              + create
            -/+ destroy and then create replacement

            Terraform will perform the following actions:
graasp-dev  # aws_ecs_cluster_capacity_providers.graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE (graasp-dev/graasp-dev-ecs-capacity-providers) will be created
              + resource "aws_ecs_cluster_capacity_providers" "graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE" {
                  + capacity_providers = [
                      + "FARGATE",
                      + "FARGATE_SPOT",
                    ]
                  + cluster_name       = "graasp-dev"
                  + id                 = (known after apply)

                  + default_capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }
                }

              # aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_etherpad-service_366B5CFC" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "etherpad"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-library-service_35621E15" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "graasp-library"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:186" -> "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:154"
                  ~ triggers                           = {} -> (known after apply)
                    # (10 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-service_BD538BD2" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "graasp"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_iframely-service_8F7B5C1F" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/iframely" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "iframely"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_meilisearch-service_3A736F80" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "meilisearch"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_redis-service_1DBE7C83" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "redis"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_umami-service_6A875906" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "umami"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (2 unchanged blocks hidden)
                }

            Plan: 8 to add, 0 to change, 7 to destroy.

            ─────────────────────────────────────────────────────────────────────────────

            Saved the plan to: plan

            To perform exactly these actions, run the following command to apply:
                terraform apply "plan"

@github-actions
Copy link

github-actions bot commented Feb 5, 2025

✅ Successfully planned Terraform CDK Stack 'graasp-dev'

Show Plan
graasp-dev  Initializing the backend...
graasp-dev  Successfully configured the backend "s3"! Terraform will automatically
            use this backend unless the backend configuration changes.
graasp-dev  Initializing modules...
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/rds/aws 6.10.0 for graasp-dev-postgres_db_F1D5DB7A...
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance
graasp-dev  - graasp-dev-postgres_db_F1D5DB7A.db_instance_role_association in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_instance_role_association
            - graasp-dev-postgres_db_F1D5DB7A.db_option_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_option_group
            - graasp-dev-postgres_db_F1D5DB7A.db_parameter_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_parameter_group
            - graasp-dev-postgres_db_F1D5DB7A.db_subnet_group in .terraform/modules/graasp-dev-postgres_db_F1D5DB7A/modules/db_subnet_group
graasp-dev  Downloading registry.terraform.io/terraform-aws-modules/vpc/aws 5.18.1 for vpc...
graasp-dev  - vpc in .terraform/modules/vpc
graasp-dev  Initializing provider plugins...
graasp-dev  - Finding hashicorp/aws versions matching ">= 5.46.0, >= 5.59.0, >= 5.62.0, 5.83.1"...
graasp-dev  - Finding hashicorp/random versions matching ">= 3.1.0"...
graasp-dev  - Installing hashicorp/aws v5.83.1...
graasp-dev  - Installed hashicorp/aws v5.83.1 (signed by HashiCorp)
graasp-dev  - Installing hashicorp/random v3.6.3...
graasp-dev  - Installed hashicorp/random v3.6.3 (signed by HashiCorp)
            Terraform has created a lock file .terraform.lock.hcl to record the provider
            selections it made above. Include this file in your version control repository
            so that Terraform can guarantee to make the same selections by default when
            you run "terraform init" in the future.
graasp-dev  Terraform has been successfully initialized!

            You may now begin working with Terraform. Try running "terraform plan" to see
            any changes that are required for your infrastructure. All Terraform commands
            should now work.

            If you ever set or change modules or backend configuration for Terraform,
            rerun this command to reinitialize your working directory. If you forget, other
            commands will detect it and remind you to do so if necessary.
graasp-dev  - Fetching hashicorp/random 3.6.3 for linux_amd64...
graasp-dev  - Retrieved hashicorp/random 3.6.3 for linux_amd64 (signed by HashiCorp)
graasp-dev  - Fetching hashicorp/aws 5.83.1 for linux_amd64...
graasp-dev  - Retrieved hashicorp/aws 5.83.1 for linux_amd64 (signed by HashiCorp)
            - Obtained hashicorp/aws checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
            - Obtained hashicorp/random checksums for linux_amd64; All checksums for this platform were already tracked in the lock file
graasp-dev  Success! Terraform has validated the lock file and found no need for changes.
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.random_id.snapshot_identifier[0]: Refreshing state... [id=SHBibw]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Reading...
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert): Read complete after 1s [id=arn:aws:acm:us-east-1:299720865162:certificate/46cb9d1f-aea8-42de-8232-a5b83f1cc7e2]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Reading...
graasp-dev  aws_service_discovery_http_namespace.graasp-dev_namespace_B6F7BA2C (graasp-dev/namespace): Refreshing state... [id=ns-us3rov3ukfoth5ox]
            aws_cloudwatch_log_group.graasp-dev_iframely-loggroup_105420D9 (graasp-dev/iframely-loggroup): Refreshing state... [id=/ecs/iframely]
            aws_cloudwatch_log_group.graasp-dev_redis-loggroup_AFE7CB87 (graasp-dev/redis-loggroup): Refreshing state... [id=/ecs/redis]
            aws_cloudwatch_log_group.graasp-dev_meilisearch-loggroup_F1AD2775 (graasp-dev/meilisearch-loggroup): Refreshing state... [id=/ecs/meilisearch]
            aws_cloudwatch_log_group.graasp-dev_graasp-loggroup_44ECC8C2 (graasp-dev/graasp-loggroup): Refreshing state... [id=/ecs/graasp]
            aws_s3_bucket.graasp-dev-apps_bucket_F4170225 (graasp-dev-apps/bucket): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_umami-loggroup_544115BF (graasp-dev/umami-loggroup): Refreshing state... [id=/ecs/umami]
            aws_s3_bucket.graasp-dev-client_bucket_076446C5 (graasp-dev-client/bucket): Refreshing state... [id=graasp-dev-client]
            aws_s3_bucket.graasp-dev-assets_bucket_8930785E (graasp-dev-assets/bucket): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket.graasp-dev-file-items_bucket_12606B30 (graasp-dev-file-items/bucket): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket.graasp-dev-h5p_bucket_B545A43B (graasp-dev-h5p/bucket): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Reading...
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Reading...
            module.vpc.aws_vpc.this[0]: Refreshing state... [id=vpc-0b312f17d2e08cb6e]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_parameter_group.aws_db_parameter_group.this[0]: Refreshing state... [id=graasp-postgres15-20231009123434812500000001]
graasp-dev  data.aws_ecr_repository.graasp-dev-ecr (graasp-dev-ecr): Read complete after 1s [id=graasp]
graasp-dev  aws_ecs_cluster.cluster (cluster): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:cluster/graasp-dev]
graasp-dev  data.aws_ecr_repository.graasp-dev-explore-ecr (graasp-dev-explore-ecr): Read complete after 0s [id=graasp/explore]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Reading...
            module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_partition.current: Read complete after 0s [id=aws]
graasp-dev  aws_iam_role.graasp-dev_ecs-execution-role_A4D135E8 (graasp-dev/ecs-execution-role): Refreshing state... [id=graasp-dev-ecs-execution-role]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_etherpad-loggroup_200385B4 (graasp-dev/etherpad-loggroup): Refreshing state... [id=/ecs/etherpad]
graasp-dev  data.aws_acm_certificate.graasp-dev-acm-cert (graasp-dev-acm-cert)-lb: Read complete after 1s [id=arn:aws:acm:eu-central-1:299720865162:certificate/af9d071d-3aa1-4583-905d-ec1efd5515d3]
graasp-dev  aws_s3_bucket.graasp-dev-maintenance_bucket_46B8FAD7 (graasp-dev-maintenance/bucket): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Reading...
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.data.aws_iam_policy_document.enhanced_monitoring: Read complete after 0s [id=76086537]
graasp-dev  aws_cloudwatch_log_group.graasp-dev_graasp-library-loggroup_FD22B99E (graasp-dev/graasp-library-loggroup): Refreshing state... [id=/ecs/graasp-library]
graasp-dev  data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Reading...
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp_54E40EB5 (graasp-dev/graasp): Refreshing state... [id=graasp]
graasp-dev  aws_ecs_task_definition.graasp-dev_iframely_4C5E8E3D (graasp-dev/iframely): Refreshing state... [id=iframely]
graasp-dev  aws_ecs_task_definition.graasp-dev_meilisearch_38A3D0B6 (graasp-dev/meilisearch): Refreshing state... [id=meilisearch]
graasp-dev  aws_ecs_task_definition.graasp-dev_redis_E9CE963D (graasp-dev/redis): Refreshing state... [id=redis]
graasp-dev  aws_ecs_task_definition.graasp-dev_graasp-library_B38B90C0 (graasp-dev/graasp-library): Refreshing state... [id=graasp-library]
graasp-dev  aws_iam_role_policy.graasp-dev_graasp-dev-ecs-execution-role-policies_D65DB830 (graasp-dev/graasp-dev-ecs-execution-role-policies): Refreshing state... [id=graasp-dev-ecs-execution-role:allow-ecr-pull]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role]
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-apps_allow_public_access_9E010C09 (graasp-dev-apps/allow_public_access): Read complete after 0s [id=4070198440]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-apps_s3-block-public-access_05DA1D21 (graasp-dev-apps/s3-block-public-access): Refreshing state... [id=graasp-dev-apps]
graasp-dev  data.aws_ecr_repository.graasp-dev-etherpad-ecr (graasp-dev-etherpad-ecr): Read complete after 0s [id=graasp/etherpad]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-apps_s3-website-configuration_7E3F72D4 (graasp-dev-apps/s3-website-configuration): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-apps_s3-bucket-ownership_699CAAD9 (graasp-dev-apps/s3-bucket-ownership): Refreshing state... [id=graasp-dev-apps]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-assets_s3-block-public-access_D15DF7EF (graasp-dev-assets/s3-block-public-access): Refreshing state... [id=graasp-dev-assets]
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-assets_allow_public_access_59580A32 (graasp-dev-assets/allow_public_access): Read complete after 0s [id=661570887]
            aws_s3_bucket_ownership_controls.graasp-dev-assets_s3-bucket-ownership_1BE1C46A (graasp-dev-assets/s3-bucket-ownership): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-assets_s3-website-configuration_6D1735B5 (graasp-dev-assets/s3-website-configuration): Refreshing state... [id=graasp-dev-assets]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-client_s3-bucket-ownership_7FA8E504 (graasp-dev-client/s3-bucket-ownership): Refreshing state... [id=graasp-dev-client]
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-client_allow_public_access_BCCA7882 (graasp-dev-client/allow_public_access): Read complete after 0s [id=3742575001]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-client_s3-website-configuration_A6D7BA4D (graasp-dev-client/s3-website-configuration): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-client_s3-block-public-access_A8DD5DF0 (graasp-dev-client/s3-block-public-access): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_s3_bucket_policy.graasp-dev-apps_s3-policy_708B7B00 (graasp-dev-apps/s3-policy): Refreshing state... [id=graasp-dev-apps]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_iam_role_policy_attachment.enhanced_monitoring[0]: Refreshing state... [id=graasp-dev-rds-monitoring-role-20231009123438644600000004]
graasp-dev  aws_s3_bucket_policy.graasp-dev-assets_s3-policy_B5DD3F7D (graasp-dev-assets/s3-policy): Refreshing state... [id=graasp-dev-assets]
graasp-dev  module.vpc.aws_default_route_table.default[0]: Refreshing state... [id=rtb-0de0872c207e953b3]
graasp-dev  module.vpc.aws_default_security_group.this[0]: Refreshing state... [id=sg-0fd249cba5ab4c742]
graasp-dev  module.vpc.aws_default_network_acl.this[0]: Refreshing state... [id=acl-06ce6a79ac9494ac3]
graasp-dev  aws_s3_bucket_policy.graasp-dev-client_s3-policy_71B89D07 (graasp-dev-client/s3-policy): Refreshing state... [id=graasp-dev-client]
graasp-dev  aws_cloudfront_distribution.graasp-dev-apps-cloudfront (graasp-dev-apps-cloudfront): Refreshing state... [id=E354WPS1CZ652D]
graasp-dev  aws_security_group.graasp-dev-meilisearch-security-group (graasp-dev-meilisearch-security-group): Refreshing state... [id=sg-0b3ce2813b8775eba]
graasp-dev  aws_security_group.graasp-dev-iframely-security-group (graasp-dev-iframely-security-group): Refreshing state... [id=sg-0ca4813c62c9d17a3]
graasp-dev  aws_security_group.graasp-dev-postgres_graasp-dev-db-security-group_6A637215 (graasp-dev-postgres/graasp-dev-db-security-group): Refreshing state... [id=sg-009f5a0d494264c65]
graasp-dev  aws_security_group.graasp-dev-library-security-group (graasp-dev-library-security-group): Refreshing state... [id=sg-07bae39853af00427]
graasp-dev  aws_security_group.graasp-dev-gatekeeper_graasp-dev-gatekeeper-security-group_92E8E7CC (graasp-dev-gatekeeper/graasp-dev-gatekeeper-security-group): Refreshing state... [id=sg-036836715bbca8a32]
graasp-dev  aws_security_group.graasp-dev-backend-security-group (graasp-dev-backend-security-group): Refreshing state... [id=sg-014f1fd084973fd06]
graasp-dev  aws_security_group.graasp-dev-umami-security-group (graasp-dev-umami-security-group): Refreshing state... [id=sg-03d98ff7f2eb798fa]
graasp-dev  aws_security_group.graasp-dev-redis-security-group (graasp-dev-redis-security-group): Refreshing state... [id=sg-0a7ebce0ecabcd895]
graasp-dev  aws_security_group.graasp-dev-etherpad-security-group (graasp-dev-etherpad-security-group): Refreshing state... [id=sg-0ffb7f564703627af]
graasp-dev  aws_security_group.graasp-dev-lb-security-group (graasp-dev-lb-security-group): Refreshing state... [id=sg-0f07f40e7da03b966]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-file-items_s3-bucket-ownership_9BB45BB8 (graasp-dev-file-items/s3-bucket-ownership): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-file-items_s3-block-public-access_DD6519C0 (graasp-dev-file-items/s3-block-public-access): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_cors_configuration.graasp-dev-file-items_s3-cors-config_531774F3 (graasp-dev-file-items/s3-cors-config): Refreshing state... [id=graasp-dev-file-items]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-h5p_s3-bucket-ownership_418B795B (graasp-dev-h5p/s3-bucket-ownership): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-h5p_s3-block-public-access_2D472005 (graasp-dev-h5p/s3-block-public-access): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Reading...
            data.aws_iam_policy_document.graasp-dev-h5p_allow_public_access_04C01E9A (graasp-dev-h5p/allow_public_access): Read complete after 0s [id=1897348743]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-h5p_s3-website-configuration_5FB93898 (graasp-dev-h5p/s3-website-configuration): Refreshing state... [id=graasp-dev-h5p]
            aws_s3_bucket_cors_configuration.graasp-dev-h5p_s3-cors-config_EC778FA8 (graasp-dev-h5p/s3-cors-config): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  module.vpc.aws_internet_gateway.this[0]: Refreshing state... [id=igw-01955c8cc5f6d5181]
graasp-dev  module.vpc.aws_subnet.public[2]: Refreshing state... [id=subnet-01f44d93731acccb7]
graasp-dev  module.vpc.aws_subnet.public[0]: Refreshing state... [id=subnet-0596b784e2da6e5c6]
graasp-dev  module.vpc.aws_subnet.public[1]: Refreshing state... [id=subnet-055a0124ce88123b2]
graasp-dev  module.vpc.aws_route_table.public[0]: Refreshing state... [id=rtb-09991359fa2a53c1c]
graasp-dev  aws_cloudfront_distribution.graasp-dev-assets-cloudfront (graasp-dev-assets-cloudfront): Refreshing state... [id=E1TTPMNH8QPMJP]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-iframely-allow-all (graasp-dev-iframely-allow-all): Refreshing state... [id=sgr-03b6e652d0d98bb05]
graasp-dev  aws_cloudfront_distribution.graasp-dev-client-cloudfront (graasp-dev-client-cloudfront): Refreshing state... [id=E1ZTGZST8787TH]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-meilisearch-allow-all (graasp-dev-meilisearch-allow-all): Refreshing state... [id=sgr-0418d7a3309cc5d5e]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-postgres_graasp-dev-db-allow-all_0D9DEE53 (graasp-dev-postgres/graasp-dev-db-allow-all): Refreshing state... [id=sgr-0199bcbb086d17111]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-library-allow-all (graasp-dev-library-allow-all): Refreshing state... [id=sgr-03cd64d6e8521413a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-postgres (graasp-dev-allow-gatekeeper-on-postgres): Refreshing state... [id=sgr-0058c3745753e6995]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-inbound-ssh_1B8A7117 (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-inbound-ssh): Refreshing state... [id=sgr-0a51d11a638800750]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-allow-gatekeeper-on-meilisearch (graasp-dev-allow-gatekeeper-on-meilisearch): Refreshing state... [id=sgr-0959c46cb81a9c68e]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-gatekeeper_graasp-dev-gatekeeper-allow-all_B66B414C (graasp-dev-gatekeeper/graasp-dev-gatekeeper-allow-all): Refreshing state... [id=sgr-042fe01dcb13dead6]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-umami_425B5740 (graasp-dev-postgres/graasp-dev-db-allow-umami): Refreshing state... [id=sgr-063ed5e713152b283]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-umami-allow-all (graasp-dev-umami-allow-all): Refreshing state... [id=sgr-026fb931c3d9a2d33]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-meilisearch-allow-graasp-backend (graasp-dev-meilisearch-allow-graasp-backend): Refreshing state... [id=sgr-0d502c3895f05dc26]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-iframely-allow-graasp-backend (graasp-dev-iframely-allow-graasp-backend): Refreshing state... [id=sgr-0d4d4b4ffd0b49a87]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-graasp-backend_E8883EF3 (graasp-dev-postgres/graasp-dev-db-allow-graasp-backend): Refreshing state... [id=sgr-007f1bb79fc0de776]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-backend-allow-all (graasp-dev-backend-allow-all): Refreshing state... [id=sgr-0f70a895b80fd309e]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-redis-allow-all (graasp-dev-redis-allow-all): Refreshing state... [id=sgr-03673e2379ee73580]
graasp-dev  aws_s3_bucket_policy.graasp-dev-h5p_s3-policy_9DB0282E (graasp-dev-h5p/s3-policy): Refreshing state... [id=graasp-dev-h5p]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-redis-allow-graasp-backend (graasp-dev-redis-allow-graasp-backend): Refreshing state... [id=sgr-08d29290d8638ef8f]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https_0223BC47 (graasp-dev-load-balancer/allow-https): Refreshing state... [id=sgr-0d7110664852fbdc7]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-load-balancer_graasp-dev-allow-all_001EC5EB (graasp-dev-load-balancer/graasp-dev-allow-all): Refreshing state... [id=sgr-08d13e43e33fd5b5a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http_0E987E63 (graasp-dev-load-balancer/allow-http): Refreshing state... [id=sgr-0dbd5cad25b6a1a87]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-https-ipv6_DC496355 (graasp-dev-load-balancer/allow-https-ipv6): Refreshing state... [id=sgr-023719db02da6a2a8]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-load-balancer_allow-http-ipv6_91743348 (graasp-dev-load-balancer/allow-http-ipv6): Refreshing state... [id=sgr-084bba5f4b221f189]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-backend-allow-load-balancer (graasp-dev-backend-allow-load-balancer): Refreshing state... [id=sgr-0f1f4d5674dff4695]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-umami-allow-load-balancer (graasp-dev-umami-allow-load-balancer): Refreshing state... [id=sgr-05a39a274de98821a]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-library-allow-load-balancer (graasp-dev-library-allow-load-balancer): Refreshing state... [id=sgr-04e219db366df9a40]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-etherpad-allow-load-balancer (graasp-dev-etherpad-allow-load-balancer): Refreshing state... [id=sgr-06e2e5786d9ade6fb]
graasp-dev  aws_vpc_security_group_ingress_rule.graasp-dev-postgres_graasp-dev-db-allow-etherpad_A95D382C (graasp-dev-postgres/graasp-dev-db-allow-etherpad): Refreshing state... [id=sgr-0ded857153724c35d]
graasp-dev  aws_vpc_security_group_egress_rule.graasp-dev-etherpad-allow-all (graasp-dev-etherpad-allow-all): Refreshing state... [id=sgr-06470ffe6a0df1219]
graasp-dev  aws_s3_bucket_public_access_block.graasp-dev-maintenance_s3-block-public-access_C8FD87F8 (graasp-dev-maintenance/s3-block-public-access): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Reading...
graasp-dev  data.aws_iam_policy_document.graasp-dev-maintenance_allow_public_access_8F6F3848 (graasp-dev-maintenance/allow_public_access): Read complete after 0s [id=2448502661]
graasp-dev  aws_s3_bucket_ownership_controls.graasp-dev-maintenance_s3-bucket-ownership_1588A828 (graasp-dev-maintenance/s3-bucket-ownership): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_s3_bucket_website_configuration.graasp-dev-maintenance_s3-website-configuration_50149944 (graasp-dev-maintenance/s3-website-configuration): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  module.vpc.aws_route.public_internet_gateway[0]: Refreshing state... [id=r-rtb-09991359fa2a53c1c1080289494]
graasp-dev  module.vpc.aws_route_table_association.public[0]: Refreshing state... [id=rtbassoc-0ba3fbc906b89068b]
graasp-dev  module.vpc.aws_route_table_association.public[1]: Refreshing state... [id=rtbassoc-065b7c3d10a5adb5f]
graasp-dev  module.vpc.aws_route_table_association.public[2]: Refreshing state... [id=rtbassoc-0953114662597b70b]
graasp-dev  aws_cloudfront_distribution.graasp-dev-h5p-cloudfront (graasp-dev-h5p-cloudfront): Refreshing state... [id=E3B7XJV46O4VB4]
graasp-dev  aws_s3_bucket_policy.graasp-dev-maintenance_s3-policy_DA8583B1 (graasp-dev-maintenance/s3-policy): Refreshing state... [id=graasp-dev-maintenance]
graasp-dev  aws_instance.graasp-dev-gatekeeper_graasp-dev-gatekeeper-ec2_A55DD5DA (graasp-dev-gatekeeper/graasp-dev-gatekeeper/graasp-dev-gatekeeper-ec2): Refreshing state... [id=i-0fd04870b794c75b3]
graasp-dev  aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis]
graasp-dev  aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/iframely]
graasp-dev  aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch]
graasp-dev  aws_lb.graasp-dev-load-balancer_lb_9A06B77C (graasp-dev-load-balancer/lb): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:loadbalancer/app/graasp-dev/2d9df8ffedc22275]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_subnet_group.aws_db_subnet_group.this[0]: Refreshing state... [id=graasp-dev-20231009123833192500000015]
graasp-dev  aws_cloudfront_distribution.graasp-dev-maintenance-cloudfront (graasp-dev-maintenance-cloudfront): Refreshing state... [id=EGBVR5KHBTMNX]
graasp-dev  module.graasp-dev-postgres_db_F1D5DB7A.module.db_instance.aws_db_instance.this[0]: Refreshing state... [id=db-3CNANXEZMD2SUYDRIDBIHT6F2M]
graasp-dev  aws_ecs_task_definition.graasp-dev_etherpad_D664EB2D (graasp-dev/etherpad): Refreshing state... [id=etherpad]
graasp-dev  aws_ecs_task_definition.graasp-dev_umami_88984772 (graasp-dev/umami): Refreshing state... [id=umami]
graasp-dev  aws_lb_listener.graasp-dev-load-balancer_lb-listener-https_E069C227 (graasp-dev-load-balancer/lb-listener-https): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4]
            aws_lb_listener.graasp-dev-load-balancer_lb-listener-http-redirect_309E2C64 (graasp-dev-load-balancer/lb-listener-http-redirect): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener/app/graasp-dev/2d9df8ffedc22275/9cc00852f3f90d6a]
graasp-dev  aws_lb_target_group.graasp-dev_etherpad-target-group_94F8091C (graasp-dev/etherpad-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/etherpad/69fe8f88d1211cfe]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-shortener_2A4B0FBC (graasp-dev-load-balancer/graasp-dev-shortener): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/a0a229972dcce063]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-analytics_431AD7A3 (graasp-dev-load-balancer/graasp-dev-analytics): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/753c902cdec8ab13]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-auth_E1CC888F (graasp-dev-load-balancer/graasp-dev-auth): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/ac24f176bd35c164]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-player_6D261351 (graasp-dev-load-balancer/graasp-dev-player): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/18102830b42e109e]
            aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-builder_4D040462 (graasp-dev-load-balancer/graasp-dev-builder): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/6a7e5d40fbbc59d7]
graasp-dev  aws_lb_listener_rule.graasp-dev-load-balancer_graasp-dev-account_E8E1BF85 (graasp-dev-load-balancer/graasp-dev-account): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185f084d6839808c]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-target-group_7E05BC31 (graasp-dev/graasp-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp/75b2cf400edd1909]
graasp-dev  aws_lb_target_group.graasp-dev_umami-target-group_02AC6A93 (graasp-dev/umami-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/umami/eb6d060fc17e2e52]
graasp-dev  aws_lb_target_group.graasp-dev_graasp-library-target-group_47035354 (graasp-dev/graasp-library-target-group): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:targetgroup/graasp-library/1f502836d98e92e0]
graasp-dev  aws_lb_listener_rule.graasp-dev_etherpad-rule_74CA3679 (graasp-dev/etherpad-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/d95b5f32dc661338]
graasp-dev  aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad]
graasp-dev  aws_lb_listener_rule.graasp-dev_umami-rule_139819E3 (graasp-dev/umami-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/185c679fb423b689]
graasp-dev  aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-rule_8589AD50 (graasp-dev/graasp-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/5bba1be112990e2f]
graasp-dev  aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp]
graasp-dev  aws_lb_listener_rule.graasp-dev_graasp-library-rule_AC381C09 (graasp-dev/graasp-library-rule): Refreshing state... [id=arn:aws:elasticloadbalancing:eu-central-1:299720865162:listener-rule/app/graasp-dev/2d9df8ffedc22275/416636dae9d8bda4/47b6511ce97bab5a]
graasp-dev  aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service): Refreshing state... [id=arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-service-autoscaling-target_517CCDCE (graasp-dev/graasp-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp]
graasp-dev  aws_appautoscaling_target.graasp-dev_graasp-library-service-autoscaling-target_5E0ABD4D (graasp-dev/graasp-library-service-autoscaling-target): Refreshing state... [id=service/graasp-dev/graasp-library]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-service-autoscaling-policy_70C429DA (graasp-dev/graasp-service-autoscaling-policy): Refreshing state... [id=graasp]
graasp-dev  aws_appautoscaling_policy.graasp-dev_graasp-library-service-autoscaling-policy_E718A88F (graasp-dev/graasp-library-service-autoscaling-policy): Refreshing state... [id=graasp-library]
graasp-dev  Terraform used the selected providers to generate the following execution
            plan. Resource actions are indicated with the following symbols:
              + create
            -/+ destroy and then create replacement

            Terraform will perform the following actions:
graasp-dev  # aws_ecs_cluster_capacity_providers.graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE (graasp-dev/graasp-dev-ecs-capacity-providers) will be created
              + resource "aws_ecs_cluster_capacity_providers" "graasp-dev_graasp-dev-ecs-capacity-providers_0AA4C7BE" {
                  + capacity_providers = [
                      + "FARGATE",
                      + "FARGATE_SPOT",
                    ]
                  + cluster_name       = "graasp-dev"
                  + id                 = (known after apply)

                  + default_capacity_provider_strategy {
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }
                }

              # aws_ecs_service.graasp-dev_etherpad-service_366B5CFC (graasp-dev/etherpad-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_etherpad-service_366B5CFC" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/etherpad" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "etherpad"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-library-service_35621E15 (graasp-dev/graasp-library-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-library-service_35621E15" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp-library" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "graasp-library"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:188" -> "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp-library:154"
                  ~ triggers                           = {} -> (known after apply)
                    # (10 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_graasp-service_BD538BD2 (graasp-dev/graasp-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_graasp-service_BD538BD2" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/graasp" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "graasp"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ task_definition                    = "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:755" -> "arn:aws:ecs:eu-central-1:299720865162:task-definition/graasp:584"
                  ~ triggers                           = {} -> (known after apply)
                    # (10 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                    # (3 unchanged blocks hidden)
                }

              # aws_ecs_service.graasp-dev_iframely-service_8F7B5C1F (graasp-dev/iframely-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_iframely-service_8F7B5C1F" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/iframely" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "iframely"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_meilisearch-service_3A736F80 (graasp-dev/meilisearch-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_meilisearch-service_3A736F80" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/meilisearch" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "meilisearch"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_redis-service_1DBE7C83 (graasp-dev/redis-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_redis-service_1DBE7C83" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/redis" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "redis"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + base              = 1
                      + capacity_provider = "FARGATE"
                      + weight            = 100
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (1 unchanged block hidden)
                }

              # aws_ecs_service.graasp-dev_umami-service_6A875906 (graasp-dev/umami-service) must be replaced
            -/+ resource "aws_ecs_service" "graasp-dev_umami-service_6A875906" {
                  - health_check_grace_period_seconds  = 0 -> null
                  ~ iam_role                           = "/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS" -> (known after apply)
                  ~ id                                 = "arn:aws:ecs:eu-central-1:299720865162:service/graasp-dev/umami" -> (known after apply)
                  ~ launch_type                        = "FARGATE" -> (known after apply)
                    name                               = "umami"
                  ~ platform_version                   = "LATEST" -> (known after apply)
                  - propagate_tags                     = "NONE" -> null
                  - tags                               = {} -> null
                  ~ triggers                           = {} -> (known after apply)
                    # (11 unchanged attributes hidden)

                  + capacity_provider_strategy { # forces replacement
                      + capacity_provider = "FARGATE_SPOT"
                      + weight            = 1
                    }

                  - deployment_circuit_breaker {
                      - enable   = false -> null
                      - rollback = false -> null
                    }

                  - deployment_controller {
                      - type = "ECS" -> null
                    }

                  ~ service_connect_configuration {
                        # (2 unchanged attributes hidden)

                      ~ service {
                          - ingress_port_override = 0 -> null
                            # (2 unchanged attributes hidden)

                            # (1 unchanged block hidden)
                        }
                    }

                    # (2 unchanged blocks hidden)
                }

            Plan: 8 to add, 0 to change, 7 to destroy.

            ─────────────────────────────────────────────────────────────────────────────

            Saved the plan to: plan

            To perform exactly these actions, run the following command to apply:
                terraform apply "plan"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants