bitovi/Bitovi Github Actions Commons repo

Deploy anything you want with this action. Contains multiple Terraform modules to give you what you are looking for.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Maintainedlast commit Jan 27, 2026
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: bitovi/github-actions-commons@a6b570a9e649d217d906d7046251074beb6554ab # v2.0.9

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
checkoutSpecifies if this action should checkout the codenotrue
bitops_skip_runWill run the setup of the BitOps environment and exit. Only usefull to debug startup scripts.nofalse
bitops_code_onlyWill run only the generation phase of BitOps, where the Terraform and Ansible code is built.no
bitops_code_storeStore BitOps code as a GitHub artifactno
bitops_extra_env_varsVariables to be passed to BitOps as Docker extra vars. Format should be `-e KEY1=VALUE1 -e KEY2=VALUE2`no
bitops_extra_env_vars_file.env file to pass to BitOps Docker run. Usefull for long variables.no
tf_stack_destroySet to "true" to Destroy the stack through Terraform.no
tf_state_file_nameChange this to be anything you want to. Carefull to be consistent here. A missing file could trigger recreation, or stepping over destruction of non-defined objects.no
tf_state_file_name_appendAppend a string to the tf-state-file. Setting this to `unique` will generate `tf-state-aws-unique`. Can co-exist with the tf_state_file_name variable. no
tf_state_bucketAWS S3 bucket to use for Terraform state. Defaults to `${org}-${repo}-{branch}-tf-state`no
tf_state_bucket_destroyForce purge and deletion of S3 bucket defined. Any file contained there will be destroyed. `tf_stack_destroy` must also be `true`no
tf_state_bucket_providerBucket provider for tfstate storage.noaws
tf_targetsA list of targets to create before the full stack creation.no
ansible_skipSkip Ansible execution after Terraform excecution.no
ansible_ssh_to_private_ipMake Ansible connect to the private IP of the instance. Only usefull if using a hosted runner in the same network.no
ansible_start_docker_timeoutAmmount of time in seconds it takes Ansible to mark as failed the startup of docker. Defaults to `300`no
gh_deployment_input_terraformFolder to store Terraform files to be included during Terraform execution.no
gh_deployment_input_ansibleFolder where a whole Ansible structure is expected. If missing bitops.config.yaml a default will be generated.no
gh_deployment_input_ansible_playbookMain playbook to be looked for.noplaybook.yml
gh_deployment_input_ansible_extra_vars_fileRelative path to file from project root to Ansible vars file to be applied. no
gh_deployment_action_input_ansible_extra_vars_fileRelative path to file from project root to Ansible vars file to be applied into the Action Ansible execution. no
gh_deployment_input_helm_chartsRelative path to the folder from project containing Helm charts to be installed. Could be uncompressed or compressed (.tgz) files.no
gh_action_repoURL of calling repono
gh_action_input_terraformFolder to store Terraform files to be included during Terraform execution.no
gh_action_input_ansibleFolder where a whole Ansible structure is expected. If missing bitops.config.yaml a default will be generated.no
gh_action_input_ansible_playbookMain playbook to be looked for.noplaybook.yml
gh_action_input_helm_chartsRelative path to the folder from action containing Helm charts to be installed. Could be uncompressed or compressed (.tgz) files.no
aws_access_key_idAWS access key IDno
aws_secret_access_keyAWS secret access keyno
aws_session_tokenAWS session tokenno
aws_default_regionAWS default regionnous-east-1
aws_resource_identifierSet to override the AWS resource identifier for the deployment. Defaults to `${org}-{repo}-{branch}`. Use with destroy to destroy specific resources.no
aws_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
env_aws_secretSecret name to pull env variables from AWS Secret Manager, could be a comma separated list, read in order. Expected JSON content.no
env_repoFile containing environment variables to be used with the appno
env_ghs`.env` file to be used with the app from Github secretsno
env_ghv`.env` file to be used with the app from Github variablesno
aws_ec2_instance_createDefine if an EC2 instance should be createdno
aws_ec2_ami_filterAWS AMI Filter string. Will be used to lookup for lates image based on the string. Defaults to `ubuntu/images/hvm-ssd/ubuntu-jammy-22.04-amd64-server-*`.no
aws_ec2_ami_ownerOwner of AWS AMI image. This ensures the provider is the one we are looking for. Defaults to `099720109477`, Canonical (Ubuntu).no
aws_ec2_ami_idAWS AMI ID. Will default to lookup for latest image of the `aws_ec2_ami_filter` string. This will override `aws_ec2_ami_filter` lookup.no
aws_ec2_ami_updateSet this to true if you want to recreate the EC2 instance if there is a newer version of the AMI.no
aws_ec2_iam_instance_profileThe AWS IAM instance profile to use for the EC2 instanceno
aws_ec2_instance_typeThe AWS Instance typeno
aws_ec2_instance_root_vol_sizeDefine the volume size (in GiB) for the root volume on the AWS Instance.no
aws_ec2_instance_root_vol_preserveSet this to true to avoid deletion of root volume on termination. Defaults to false.no
aws_ec2_security_group_nameThe name of the EC2 security groupno
aws_ec2_create_keypair_smGenerates and manages a secret manager entry that contains the public and private keys created for the ec2 instance.no
aws_ec2_instance_public_ipAdd a public IP to the instance or not. (Not an Elastic IP)no
aws_ec2_port_listList of ports to be enabled as an ingress rule in the EC2 SG, in a [xx,yy] format - Not the ELBno
aws_ec2_user_data_fileRelative path in the repo for a user provided script to be executed with Terraform EC2 Instance creation.no
aws_ec2_user_data_replace_on_changeIf user_data file changes, instance will stop and start. Hence public IP will change. Defaults to true.no
aws_ec2_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_vpc_createDefine if a VPC should be createdno
aws_vpc_nameSet a specific name for the VPCno
aws_vpc_cidr_blockDefine Base CIDR block which is divided into subnet CIDR blocks. Defaults to 10.0.0.0/16.no
aws_vpc_public_subnetsComma separated list of public subnets. Defaults to 10.10.110.0/24no
aws_vpc_private_subnetsComma separated list of private subnets. If none, none will be created.no
aws_vpc_availability_zonesComma separated list of availability zones. Defaults to `aws_default_region.no
aws_vpc_idAWS VPC ID. Accepts `vpc-###` values.no
aws_vpc_subnet_idSpecify a Subnet to be used with the instance. If none provided, will pick one.no
aws_vpc_enable_nat_gatewayEnables NAT gatewayno
aws_vpc_single_nat_gatewayCreates only one NAT gatewayno
aws_vpc_external_nat_ip_idsComma separated list of IP IDS to reuse in the NAT gatewaysno
aws_vpc_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_r53_enableEnables the usage of Route53 to manage DNS records.no
aws_r53_domain_nameDefine the root domain name for the application. e.g. app.comno
aws_r53_sub_domain_nameDefine the sub-domain part of the URL. Defaults to `${org}-${repo}-{branch}`no
aws_r53_root_domain_deployDeploy to root domain. Will generate two DNS recrods, one for root, another for wwwno
aws_r53_enable_certMakes the application use a certificate by enabling a certificate lookup.no
aws_r53_cert_arnDefine the certificate ARN to use for the applicationno
aws_r53_create_root_certGenerates and manage the root cert for the applicationno
aws_r53_create_sub_certGenerates and manage the sub-domain certificate for the applicationno
aws_r53_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_elb_createCreate a load balancer and map ports to the EC2 instance.no
aws_elb_security_group_nameThe name of the ELB security groupno
aws_elb_app_portPort to expose for the appno
aws_elb_app_protocolProtocol to enable. Could be HTTP, HTTPS, TCP or SSL. Defaults to TCP.no
aws_elb_listen_portLoad balancer listening port. Defaults to 80 if NO FQDN provided, 443 if FQDN providedno
aws_elb_listen_protocolProtocol to enable. Could be HTTP, HTTPS, TCP or SSL. Defaults to TCP if NO FQDN provided, SSL if FQDN providedno
aws_elb_healthcheckLoad balancer health check string. Defaults to TCP:22no
aws_elb_access_log_bucket_nameS3 bucket name to store the ELB access logs.no
aws_elb_access_log_expireDelete the access logs after this amount of days. Defaults to 90.no
aws_elb_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_alb_createGlobal toggle for ALB creationno
aws_alb_security_group_nameName of the security group to use for ALBno
aws_alb_app_portComma-separated list of application ports for ALB target groupno
aws_alb_app_protocolComma-separated list of protocols for ALB target group (HTTP/HTTPS)no
aws_alb_listen_portComma-separated list of listener ports for ALBno
aws_alb_listen_protocolComma-separated list of listener protocols for ALB (HTTP/HTTPS)no
aws_alb_redirect_enableEnable HTTP to HTTPS redirection on ALBno
aws_alb_www_to_apex_redirectEnable www to apex domain redirection on ALBno
aws_alb_healthcheck_pathHealth check path for ALB target groupno
aws_alb_healthcheck_protocolHealth check protocol for ALB target groupno
aws_alb_ssl_policySSL policy for HTTPS listenersno
aws_alb_access_log_enabledEnable ALB access logsno
aws_alb_access_log_bucket_nameS3 bucket name to store the ALB access logsno
aws_alb_access_log_expireDelete the access logs after this amount of daysno
aws_alb_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_waf_enableEnable WAF for load balancer.no
aws_waf_logging_enableEnable WAF logging to CloudWatch.no
aws_waf_log_retention_daysCloudWatch log retention period for WAF logs.no
aws_waf_rule_rate_limitRate limit for WAF rules.no
aws_waf_rule_rate_limit_priorityPriority for rate limit rule.no
aws_waf_rule_managed_rulesEnable common managed rule groups to use.no
aws_waf_rule_managed_rules_priorityPriority for managed rules group.no
aws_waf_rule_managed_bad_inputsEnable managed rule for bad inputs.no
aws_waf_rule_managed_bad_inputs_priorityPriority for bad inputs managed rule.no
aws_waf_rule_ip_reputationEnable managed rule for IP reputation.no
aws_waf_rule_ip_reputation_priorityPriority for IP reputation managed rule.no
aws_waf_rule_anonymous_ipEnable managed rule for anonymous IP.no
aws_waf_rule_anonymous_ip_priorityPriority for anonymous IP managed rule.no
aws_waf_rule_bot_controlEnable managed rule for bot control (costs extra).no
aws_waf_rule_bot_control_priorityPriority for bot control managed rule.no
aws_waf_rule_geo_block_countriesComma separated list of countries to block.no
aws_waf_rule_geo_block_countries_priorityPriority for geo block countries managed rule.no
aws_waf_rule_geo_allow_only_countriesComma separated list of countries to allow.no
aws_waf_rule_geo_allow_only_countries_priorityPriority for geo allow only countries managed rule.no
aws_waf_rule_sqliEnable managed rule for SQL injection.no
aws_waf_rule_sqli_priorityPriority for SQL injection managed rule.no
aws_waf_rule_linuxEnable managed rule for Linux.no
aws_waf_rule_linux_priorityPriority for Linux managed rule.no
aws_waf_rule_unixEnable managed rule for Unix.no
aws_waf_rule_unix_priorityPriority for Unix managed rule.no
aws_waf_rule_admin_protectionEnable managed rule for admin protection.no
aws_waf_rule_admin_protection_priorityPriority for admin protection managed rule.no
aws_waf_rule_user_arnARN of the user rule.no
aws_waf_rule_user_arn_priorityPriority for user defined rule.no
aws_waf_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_efs_createToggle to indicate whether to create and EFS and mount it to the ec2 as a part of the provisioning. Note: The EFS will be managed by the stack and will be destroyed along with the stack.no
aws_efs_fs_idID of existing EFSno
aws_efs_create_mount_targetToggle to indicate whether we should create a mount target for the EFS volume. Accepts incoming fs_id with no mount targets too.no
aws_efs_create_haToggle to indicate whether the EFS resource should be highly available (mount points in all available zones within region).no
aws_efs_vol_encryptedToggle encryption of the EFS volume.no
aws_efs_kms_key_idThe ARN for the KMS encryption key. Default key will be used if none defined.no
aws_efs_performance_modeToggle perfomance mode. Options are: generalPurpose or maxIO.no
aws_efs_throughput_modeThroughput mode for the file system. Defaults to bursting. Valid values: bursting, provisioned, or elastic. When using provisioned, also set provisioned_throughput_in_mibps.no
aws_efs_throughput_speedThe throughput, measured in MiB/s, that you want to provision for the file system. Only applicable with throughput_mode set to provisioned.no
aws_efs_security_group_nameThe name of the EFS security group. Defaults to SG for aws_resource_identifier - EFS.no
aws_efs_allowed_security_groupsComma separated list of security groups to be added to the EFS SG.no
aws_efs_ingress_allow_allAllow incoming traffic from 0.0.0.0/0.no
aws_efs_create_replicaToggle to indiciate whether a read-only replica should be created for the EFS primary file systemno
aws_efs_replication_destinationAWS Region to target for replicationno
aws_efs_enable_backup_policyToggle to indiciate whether the EFS should have a backup policy, default is `false`no
aws_efs_transition_to_inactivehttps://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/efs_file_system#transition_to_iano
aws_efs_mount_targetDirectory path in efs to mount tono
aws_efs_ec2_mount_pointDirectory path in application env to mount directoryno
aws_efs_additional_tagsA list of strings that will be added to created resourcesno
aws_rds_db_enableSet to true to enable an RDS DB.no
aws_rds_db_proxySet to true to add a RDS DB Proxyno
aws_rds_db_identifierDatabase identifier that will appear in the AWS Console. Defaults to aws_resource_identifier if none set.no
aws_rds_db_nameThe name of the database to create when the DB instance is created.no
aws_rds_db_userUsername for the db. Defaults to dbuser.no
aws_rds_db_engineWhich Database engine to use. Default is postgresno
aws_rds_db_engine_versionWhich Database engine version to use.no
aws_rds_db_ca_cert_identifierCertificate to use with the database. Defaults to rds-ca-ecc384-g1no
aws_rds_db_security_group_nameThe name of the database security group. Defaults to SG for aws_resource_identifier - RDS.no
aws_rds_db_allowed_security_groupsComma separated list of security groups to add to the DB SGno
aws_rds_db_ingress_allow_allAllow incoming traffic from 0.0.0.0/0.no
aws_rds_db_publicly_accessibleAllow the database to be publicly accessible.no
aws_rds_db_port Port where the DB listens to.no
aws_rds_db_subnetsSpecify which subnets to use as a list of strings. no
aws_rds_db_allocated_storageStorage size. Defaults to 10.no
aws_rds_db_max_allocated_storageMax storage size. Defaults to 0 to disable auto-scaling.no
aws_rds_db_storage_encryptedToogle storage encryption. Defatuls to false.no
aws_rds_db_storage_typeStorage type. Like gp2 / gp3. Defaults to gp2.no
aws_rds_db_kms_key_idThe ARN for the KMS encryption key.no
aws_rds_db_instance_classDB instance server type. Defaults to db.t3.micro.no
aws_rds_db_final_snapshotGenerates a snapshot of the database before deletion.no
aws_rds_db_restore_snapshot_identifierName of the snapshot to restore the database from.no
aws_rds_db_cloudwatch_logs_exportsSet of log types to enable for exporting to CloudWatch logs.no
aws_rds_db_multi_azSpecifies if the RDS instance is multi-AZno
aws_rds_db_maintenance_windowThe window to perform maintenance in. Eg: Mon:00:00-Mon:03:00 no
aws_rds_db_apply_immediatelySpecifies whether any database modifications are applied immediately, or during the next maintenance windowno
aws_rds_db_performance_insights_enableEnables performance insights for the database. Defaults to false.no
aws_rds_db_performance_insights_retentionNumber of days to retain performance insights data. Defaults to 7.no
aws_rds_db_performance_insights_kms_key_idKMS key ID to use for encrypting performance insights data.no
aws_rds_db_monitoring_intervalThe interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable, set to 0.no
aws_rds_db_monitoring_role_arnThe ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs.no
aws_rds_db_insights_modeThe mode for Performance Insights.no
aws_rds_db_allow_major_version_upgradeIndicates that major version upgrades are allowed.no
aws_rds_db_auto_minor_version_upgradeIndicates that minor version upgrades are allowed.no
aws_rds_db_backup_retention_periodThe number of days to retain backups for. Must be between 0 (disabled) and 35.no
aws_rds_db_backup_windowThe window during which backups are taken.no
aws_rds_db_copy_tags_to_snapshotIndicates whether to copy tags to snapshots.no
aws_rds_db_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_aurora_enableToggles deployment of an Aurora database. Defaults to false.no
aws_aurora_proxyAurora DB Proxy Toggle. Defaults to false.no
aws_aurora_cluster_nameThe name of the cluster. Will be created if it does not exist. Defaults to aws_resource_identifier if none set.no
aws_aurora_engineThe database engine to use. Defaults to aurora-postgresql.no
aws_aurora_engine_versionThe DB version of the engine to use.no
aws_aurora_engine_modeDatabase engine mode. Could be global, multimaster, parallelquey, provisioned, serverless.no
aws_aurora_availability_zonesList of availability zones for the DB cluster storage where DB cluster instances can be created.no
aws_aurora_cluster_apply_immediatelyApply changes immediately to the cluster. If not, will be done in next maintenance window.. Default falseno
aws_aurora_allocated_storageAmount of storage in gigabytes. Required for multi-az cluster.no
aws_aurora_storage_encryptedToggles whether the DB cluster is encrypted. Defaults to true.no
aws_aurora_kms_key_idKMS Key ID to use with the cluster encrypted storage.no
aws_aurora_storage_typeDefine type of storage to use. Required for multi-az cluster.no
aws_aurora_storage_iopsiops for storage. Required for multi-az cluster. no
aws_aurora_database_nameThe name of the database. will be created if it does not exist. Defaults to aurorano
aws_aurora_master_usernameMaster username. Defaults to aurorano
aws_aurora_database_group_familyThe family of the DB parameter group. See https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Reference.html https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraPostgreSQL.Reference.html. Defaults set for Postges and MySQL.no
aws_aurora_iam_auth_enabledToggles IAM Authentication. Defaults to false.no
aws_aurora_iam_rolesDefine the ARN list of allowed roles.no
aws_aurora_cluster_db_instance_classTo create a Multi-AZ RDS cluster, you must additionally specify the engine, storage_type, allocated_storage, iops and aws_aurora_db_cluster_instance_class attributes.no
aws_aurora_security_group_nameName of the security group to use for postgres. Defaults to SG for ${var.aws_resource_identifier} - Aurorano
aws_aurora_ingress_allow_allAllow access from 0.0.0.0/0 in the same VPC. Defaults to trueno
aws_aurora_allowed_security_groupsExtra names of the security groups to access Aurora.no
aws_aurora_subnetsThe list of subnet ids to use for postgres.no
aws_aurora_database_portDatabase port. Defaults to 5432no
aws_aurora_db_publicly_accessibleMake database publicly accessible. Defaults to false.no
aws_aurora_cloudwatch_enableToggles cloudwatch. Defaults to trueno
aws_aurora_cloudwatch_log_typeComma separated list of log types to include in cloudwatch. If none defined, will use [postgresql] or [audit,error,general,slowquery]. Based on the db engine.no
aws_aurora_cloudwatch_retention_daysDays to store cloudwatch logs. Defaults to 7.no
aws_aurora_backtrack_windowTarget backtrack window, in seconds. Only available for aurora and aurora-mysql engines currently. 0 to disable. Defaults to 0no
aws_aurora_backup_retention_periodDays to retain backups for. Defaults to 5.no
aws_aurora_backup_windowDaily time range during which the backups happen.no
aws_aurora_maintenance_windowMaintenance window.no
aws_aurora_database_final_snapshotSet the name to Generate a snapshot of the database before deletion.no
aws_aurora_deletion_protectionProtects the database from deletion. Defaults to false. This wont prevent Terraform from destroying it.no
aws_aurora_delete_auto_backupsSpecifies whether to remove automated backups immediately after the DB cluster is deleted. Default is true.no
aws_aurora_restore_snapshot_idRestore an initial snapshot of the DB if specified.no
aws_aurora_restore_to_point_in_timeRestore database to a point in time. Will require a map of strings. Like {"restore_to_time"="W","restore_type"="X","source_cluster_identifier"="Y", "use_latest_restorable_time"="Z"}. Default {}no
aws_aurora_snapshot_nameTakes a snapshot of the DB.no
aws_aurora_snapshot_overwriteOverwrites snapshot if same name is set. Defaults to false.no
aws_aurora_db_instances_countAmount of instances to create. Defaults to 1.no
aws_aurora_db_instance_classDatabase instance size. Defaults to db.r6g.large.no
aws_aurora_db_apply_immediatelySpecifies whether any modifications are applied immediately, or during the next maintenance window. Defaults to false.no
aws_aurora_db_ca_cert_identifierCertificate to use with the database. Defaults to rds-ca-ecc384-g1.no
aws_aurora_db_maintenance_windowMaintenance window.no
aws_aurora_performance_insights_enableEnables performance insights for the database. Defaults to false.no
aws_aurora_performance_insights_kms_key_idKMS key ID to use for encrypting performance insights data.no
aws_aurora_performance_insights_retentionNumber of days to retain performance insights data. Defaults to 7.no
aws_aurora_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
aws_db_proxy_enableToggle DB Proxy creationno
aws_db_proxy_nameDB Proxy nameno
aws_db_proxy_database_idDatabase ID to create proxy forno
aws_db_proxy_clusterDefine if Database is a cluster or notno
aws_db_proxy_secret_nameName of the secret containing DB parameters to connect tono
aws_db_proxy_client_password_auth_typeAuth type to use, will use the following, depending on DB the family. MYSQL_NATIVE_PASSWORD, POSTGRES_SCRAM_SHA_256, and SQL_SERVER_AUTHENTICATIONno
aws_db_proxy_tlsToogle TLS enforcement for connectionno
aws_db_proxy_security_group_nameName for the proxy security group. Default to aws_resource_identifier if none.no
aws_db_proxy_database_security_group_allowWill add an incoming rule from every security group associated with the DBno
aws_db_proxy_allowed_security_groupComma separated list of SG Ids to add.no
aws_db_proxy_allow_all_incomingAllow all incoming traffic to the DB Proxy. Mind that the proxy is only available from the internal network except manually exposed.no
aws_db_proxy_cloudwatch_enableToggle Cloudwatch logs. Will be stored in /aws/rds/proxy/rds_proxy.nameno
aws_db_proxy_cloudwatch_retention_daysNumber of days to retain logsno
aws_db_proxy_additional_tagsA list of strings that will be added to created resourcesno
aws_redis_enableEnables the creation of a Redis instanceno
aws_redis_userRedis username. Defaults to redisuserno
aws_redis_user_access_stringString expression for user access. Defaults to on ~* +@allno
aws_redis_user_group_nameUser group name. Defaults to aws_resource_identifier-redisno
aws_redis_security_group_nameRedis security group name. Defaults to SG for aws_resource_identifier - Redisno
aws_redis_ingress_allow_allAllow access from 0.0.0.0/0 in the same VPCno
aws_redis_allowed_security_groupsComma separated list of security groups to be added to the Redis SG.no
aws_redis_subnetsDefine a list of specific subnets where Redis will live. Defaults to all of the VPC ones. If not defined, default VPC.no
aws_redis_portRedis port. Defaults to 6379no
aws_redis_at_rest_encryptionEncryption at rest. Defaults to true.no
aws_redis_in_transit_encryptionIn-transit encryption. Defaults to true.no
aws_redis_replication_group_idName of the Redis replication group. Defaults to aws_resource_identifier-redisno
aws_redis_node_typeNode type of the Redis instance. Defaults to cache.t2.smallno
aws_redis_num_cache_clustersAmount of Redis nodes. Defaults to 1no
aws_redis_parameter_group_nameRedis parameters groups name. If cluster wanted, set it to something that includes .cluster.on. Defaults to default.redis7no
aws_redis_num_node_groupsNumber of node groups. Defaults to 0.no
aws_redis_replicas_per_node_groupNumber of replicas per node group. Defaults to 0no
aws_redis_multi_az_enabledEnables multi-availability-zone redis. Defaults to falseno
aws_redis_automatic_failoverAllows overriding the automatic configuration of this value, only needed when playing with resources in a non-conventional way.no
aws_redis_apply_immediatelySpecifies whether any modifications are applied immediately, or during the next maintenance window. Default is false.no
aws_redis_auto_minor_upgradeSpecifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. Defaults to true.no
aws_redis_maintenance_windowSpecifies the weekly time range for when maintenance on the cache cluster is performed. Example:sun:05:00-sun:06:00. Defaults to null.no
aws_redis_snapshot_windowDaily time range (in UTC) when to start taking a daily snapshot. Minimum is a 60 minute period. Example: 05:00-09:00. Defaults to null.no
aws_redis_final_snapshotChange name to define a final snapshot.no
aws_redis_snapshot_restore_nameSet name to restore a snapshot to the cluster. The default behaviour is to restore it each time this action runs.no
aws_redis_cloudwatch_enabledEnable or disables Cloudwatch logging.no
aws_redis_cloudwatch_lg_nameCloudwatch log group name. Defaults to /aws/redis/aws_resource_identifier. Will append log_type to it.no
aws_redis_cloudwatch_log_formatDefine log format between json (default) and text.no
aws_redis_cloudwatch_log_typeLog type. Older Redis engines need slow-log. Newer support engine-log (default)no
aws_redis_cloudwatch_retention_daysNumber of days to retain logs. 0 to never expire. Default 14no
aws_redis_single_line_url_secretCreates an AWS secret containing the connection string containing protocol://user@pass:endpoint:portno
aws_redis_additional_tagsAdditional tags to be added to every Redis related resourceno
docker_installDefine if docker should be installed. After this, docker-compose up will be excecuted.no
docker_remove_orphansToggle --remove-orphans flag. Defaults to false.no
docker_full_cleanupSet to true to run docker-compose down and docker system prune --all --force --volumes after.no
docker_repo_app_directoryRelative path for the directory of the app (i.e. where `Dockerfile` and `docker-compose.yaml` files are located). This is the directory that is copied to the compute instance (EC2). Default is the root of the repo. Add a .gha-ignore file with a list of files to be exluded. no
docker_repo_app_directory_cleanupWill generate a timestamped compressed file and delete the app repo directory.no
docker_backup_retentionNumber of old backups to retain. Default is unlimited.no
docker_efs_mount_targetDirectory path within docker env to mount directory to, default is `/data`no
docker_cloudwatch_enableToggle cloudwatch creation for Docker containers.no
docker_cloudwatch_lg_nameLog group name. Will default to aws_identifier if none.no
docker_cloudwatch_skip_destroyToggle deletion or not when destroying the stack.no
docker_cloudwatch_retention_daysNumber of days to retain logs. 0 to never expire.no
aws_ecs_enableToggle ECS Creationno
aws_ecs_service_nameElastic Container Service nameno
aws_ecs_cluster_nameElastic Container Service cluster nameno
aws_ecs_service_launch_typeConfiguration type. Could be EC2, FARGATE or EXTERNALno
aws_ecs_task_typeConfiguration type. Could be EC2, FARGATE or empty. Will default to aws_ecs_service_launch_type if none defined. (Blank if EXTERNAL)no
aws_ecs_task_nameElastic Container Service task nameno
aws_ecs_task_ignore_definitionToggle to ignore task definition changes after first deployment. Useful when using external tools to manage the task definition.no
aws_ecs_task_execution_roleTask execution role name that the Amazon ECS container agent and the Docker daemon can assumeno
aws_ecs_task_roleName of the IAM role that allows your Amazon ECS container task to make calls to other AWS servicesno
aws_ecs_task_reuse_roleToggle reusing the task execution role as the task role.no
aws_ecs_task_json_definition_fileName of the json file containing task definition. Overrides every other input.no
aws_ecs_task_network_modeNetwork type to use in task definitionno
aws_ecs_task_cpuTask CPU Amountno
aws_ecs_task_memTask Mem Amountno
aws_ecs_container_cpuContainer CPU Amountno
aws_ecs_container_memContainer Mem Amountno
aws_ecs_container_userUser to run container asno
aws_ecs_node_countNode count for ECS Clusterno
aws_ecs_app_imageName of the image to be usedno
aws_ecs_security_group_nameECS Secruity group nameno
aws_ecs_assign_public_ipAssign public IP to nodeno
aws_ecs_container_portComma separated list of container portsno
aws_ecs_lb_portComma serparated list of ports exposed by the load balancerno
aws_ecs_lb_redirect_enableToggle redirect from HTTP and/or HTTPS to the main port.no
aws_ecs_lb_container_pathPath for subsequent deployed images. eg. api.no
aws_ecs_lb_ssl_policySSL Policy for HTTPS listener in ALB. Will default to ELBSecurityPolicy-TLS13-1-2-2021-06 if none provided.no
aws_ecs_lb_www_to_apex_redirectToggle redirect from www to apex domain. aws_r53_domain_name must be set.no
aws_ecs_autoscaling_enableToggle ecs autoscaling policyno
aws_ecs_autoscaling_max_nodesMax ammount of nodes to scale up to.no
aws_ecs_autoscaling_min_nodesMin ammount of nodes to scale down to.no
aws_ecs_autoscaling_max_memMax ammount of mem to scale up to.no
aws_ecs_autoscaling_max_cpuMax ammount of cou to scale up to.no
aws_ecs_cloudwatch_enableToggle cloudwatch for ECS. Defaults to falseno
aws_ecs_cloudwatch_lg_nameLog group name. Will default to aws_identifier if none.no
aws_ecs_cloudwatch_skip_destroyToggle deletion or not when destroying the stack.no
aws_ecs_cloudwatch_retention_daysNumber of days to retain logs. 0 to never expire. Default 14no
aws_ecs_efs_fs_idID of the EFS File Systemno
aws_ecs_efs_root_directoryDirectory within the FS to mount as the root directory. Defaults to /, ignored if access_point_id definedno
aws_ecs_efs_transit_encryptionEFS Volume Transit Encryption. Defaults to true (ENABLED)no
aws_ecs_efs_transit_encryption_portEFS Volume Transit Encryption Portno
aws_ecs_efs_access_point_idEFS Volume Access Point ID to useno
aws_ecs_efs_container_pathDirectory path within container to mount the EFS volume tono
aws_ecs_efs_readonlyWhether the EFS volume is mounted as read-onlyno
aws_ecs_efs_iamWhether or not to use the ECS task IAM role defined in a task definition when mounting the FS. Defaults to false. (DISABLED) no
aws_ecs_additional_tagsA list of strings that will be added to created resourcesno
aws_ecr_repo_createDetermines whether a repository will be createdno
aws_ecr_repo_typeThe type of repository to create. Either `public` or `private`. Defaults to `private`.no
aws_ecr_repo_nameThe name of the repository. If none, will use the default resource-identifier.no
aws_ecr_repo_mutableThe tag mutability setting for the repository. Set this to true if `MUTABLE`. Defaults to false, so `IMMUTABLE`no
aws_ecr_repo_encryption_typeThe encryption type for the repository. Must be one of: `KMS` or `AES256`. Defaults to `AES256`no
aws_ecr_repo_encryption_key_arnThe ARN of the KMS key to use when encryption_type is `KMS`. If not specified, uses the default AWS managed key for ECRno
aws_ecr_repo_force_destroyIf `true`, will delete the repository even if it contains images. Defaults to `false`no
aws_ecr_repo_image_scanIndicates whether images are scanned after being pushed to the repository (`true`) (default) or not scanned (`false`)no
aws_ecr_registry_scan_ruleOne or multiple blocks specifying scanning rules to determine which repository filters are used and at what frequency scanning will occur. Use []no
aws_ecr_registry_pull_through_cache_rulesList of pull through cache rules to create. Use map(map(string)). no
aws_ecr_registry_scan_configScanning type to set for the registry. Can be either `ENHANCED` or `BASIC`. Defaults to null.no
aws_ecr_registry_replication_rules_inputThe replication rules for a replication configuration. A maximum of 10 are allowed. Defaults to `[]`.no
aws_ecr_repo_policy_attachDetermines whether a repository policy will be attached to the repository. Defaults to `true`.no
aws_ecr_repo_policy_createDetermines whether a repository policy will be created. Defaults to `true`.no
aws_ecr_repo_policy_inputThe JSON policy to apply to the repository. If defined overrides the default policyno
aws_ecr_repo_read_arnThe ARNs of the IAM users/roles that have read access to the repository. (Comma separated list)no
aws_ecr_repo_write_arnThe ARNs of the IAM users/roles that have read/write access to the repository. (Comma separated list)no
aws_ecr_repo_read_external_aws_accountThe ARNs of the external AWS accounts that have read access to the repositoryno
aws_ecr_repo_write_external_aws_accountThe ARNs of the external AWS accounts that have write access to the repositoryno
aws_ecr_repo_read_arn_lambdaThe ARNs of the Lambda service roles that have read access to the repository. (Comma separated list)no
aws_ecr_lifecycle_policy_inputThe policy document. This is a JSON formatted string. See more details about [Policy Parameters](http://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html#lifecycle_policy_parameters) in the official AWS docsno
aws_ecr_public_repo_catalogCatalog data configuration for the repository. Defaults to `{}`.no
aws_ecr_registry_policy_inputThe policy document. This is a JSON formatted stringno
aws_ecr_additional_tagsA list of strings that will be added to created resourcesno
aws_eks_createDefine if an EKS cluster should be createdno
aws_eks_security_group_name_clusterSG for ${var.aws_resource_identifier} - ${var.aws_eks_environment} - EKS Masterno
aws_eks_security_group_name_nodeSG for ${var.aws_resource_identifier} - ${var.aws_eks_environment} - EKS Workerno
aws_eks_environmentSpecify the eks environment name. Defaults to envno
aws_eks_management_cidrEnter your public IP or CIDR to add it to the allowed master security groups port 443.no
aws_eks_allowed_portsAllow incoming traffic from this port. Accepts comma separated values, matching 1 to 1 with aws_eks_allowed_ports_cidr.no
aws_eks_allowed_ports_cidrAllow incoming traffic from this CIDR block. Accepts comma separated values, matching 1 to 1 with aws_eks_allowed_ports. If none defined, will allow all incoming traffic.no
aws_eks_cluster_nameEKS Cluster name. Defaults to eks-clusterno
aws_eks_cluster_admin_role_arnRole ARN to grant cluster-admin permissionsno
aws_eks_cluster_log_typesEKS Log types, comma separated list. Defaults to api,audit,authenticatorno
aws_eks_cluster_log_retention_daysDays to store logs. Defaults to 7.no
aws_eks_cluster_log_skip_destroySkip deletion of cluster logs if set to trueno
aws_eks_cluster_versionSpecify the k8s cluster versionno
aws_eks_instance_typeenter the aws instance typeno
aws_eks_instance_ami_idAWS AMI ID. Will default to the latest Amazon EKS Node image for the cluster version.no
aws_eks_instance_user_data_fileRelative path in the repo for a user provided script to be executed with Terraform EKS Node creation.no
aws_eks_ec2_key_pairEnter the existing ec2 key pair for worker nodes. If none, one will be created.no
aws_eks_store_keypair_smIf true, will store the newly created keys in Secret Managerno
aws_eks_desired_capacityEnter the desired capacity for the worker nodesno
aws_eks_max_sizeEnter the max_size for the worker nodesno
aws_eks_min_sizeEnter the min_size for the worker nodesno
aws_eks_additional_tagsA JSON object of additional tags that will be included on created resources. Example: `{"key1": "value1", "key2": "value2"}`no
namedescription
aws_vpc_idThe selected VPC ID used.
vm_urlThe URL of the generated app
instance_endpointThe URL of the generated ec2 instance
ec2_sg_idSG ID for the EC2 instance
aws_efs_fs_idEFS FS ID
aws_efs_replica_fs_idEFS FS Replica ID
aws_efs_sg_idEFS FS SG ID
db_endpointRDS Endpoint
db_secret_details_nameAWS Secret name containing db credentials
db_sg_idSG ID for the RDS instance
db_proxy_rds_endpointDatabase proxy endpoint
db_proxy_secret_name_rdsAWS Secret name containing proxy credentials
db_proxy_sg_id_rdsSG ID for the RDS Proxy instance
aurora_db_endpointAurora Endpoint
aurora_db_secret_details_nameAWS Secret name containing db credentials
aurora_db_sg_idSG ID for the Aurora instance
aurora_proxy_endpointDatabase proxy endpoint
aurora_proxy_secret_nameAWS Secret name containing proxy credentials
aurora_proxy_sg_idSG ID for the RDS Proxy instance
db_proxy_endpointDatabase proxy endpoint
db_proxy_secret_nameDatabase proxy secret_name
db_proxy_sg_idSG ID for the RDS Proxy instance
ecs_load_balancer_dnsECS ALB DNS Record
ecs_dns_recordECS DNS URL
ecs_sg_idECS SG ID
ecs_lb_sg_idECS LB SG ID
ecr_repository_arnECR Repo ARN
ecr_repository_urlECR Repo URL
redis_endpointRedis Endpoint
redis_secret_nameRedis Secret name
redis_connection_string_secretRedis secret containing complete URL to connect directly. (e.g. rediss://user:pass@host:port)
redis_sg_idRedis SG ID
eks_cluster_nameEKS Cluster name
eks_cluster_role_arnEKS Role ARN