bitovi/Deploy Amazon RDS DB instance

Deploys an AWS RDS database (Postgres, MySQL, MariaDB or MSSQL)

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Maintainedlast commit Oct 3, 2025
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: bitovi/github-actions-deploy-rds@72eb22cc597497bf59483140ac9425bc698ca2e3 # v0.1.8

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

namedescriptionrequireddefault
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 artifactnofalse
aws_access_key_idAWS access key IDyes
aws_secret_access_keyAWS secret access keyyes
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
tf_stack_destroySet to "true" to Destroy the stack through Terraform.no
tf_state_file_nameChange this to be anything you want to. Careful 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
aws_rds_db_enableSet to true to enable an RDS DB.notrue
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_portPort 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_encryptedToggle storage encryption. Defaults 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_db_proxy_nameDB Proxy nameno
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_tlsToggle 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_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
namedescription
aws_vpc_idThe selected VPC ID used.
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