Skip to content

pdavis20008/terraform-aws-serverless-fargate-renovate

Repository files navigation

terraform-aws-serverless-fargate-renovate

Terraform Module for ECS Fargate-hosted RenovateBot

Based on https://github.com/mooyoul/serverless-renovate-fargate

Requirements

Name Version
terraform >= 1.0.0
aws >= 5.0

Providers

Name Version
aws >= 5.0

Modules

No modules.

Resources

Name Type
aws_cloudwatch_event_rule.renovate_task resource
aws_cloudwatch_event_target.renovate_schedule_target resource
aws_cloudwatch_log_group.ecs resource
aws_ecs_cluster.this resource
aws_ecs_task_definition.renovatebot resource
aws_iam_role.ecs_service resource
aws_iam_role.ecs_task_exec resource
aws_iam_role.renovate_task_role resource
aws_iam_role.renovate_task_schedule_role resource
aws_iam_role_policy.ecs_service resource
aws_iam_role_policy.ecs_task_exec_policy resource
aws_iam_role_policy.renovate_task_policy resource
aws_iam_role_policy.renovate_task_schedule_policy resource
aws_kms_key.ecs_logs resource
aws_secretsmanager_secret.renovate_token_secret resource
aws_security_group.renovate_task_sg resource
aws_caller_identity.current data source
aws_iam_policy_document.ecs_assume_role data source
aws_iam_policy_document.ecs_service_policy data source
aws_iam_policy_document.ecs_task_exec_assume_role data source
aws_iam_policy_document.ecs_task_exec_policy data source
aws_iam_policy_document.renovate_task_assume_role data source
aws_iam_policy_document.renovate_task_policy data source
aws_iam_policy_document.renovate_task_schedule_assume_role data source
aws_iam_policy_document.renovate_task_schedule_policy data source
aws_region.current data source

Inputs

Name Description Type Default Required
create A boolean flag to determine whether to create resources. bool true no
ecs_cluster_name The name of the ECS cluster for renovate bot string "renovate" no
enable_container_insights Enable container insights for the ECS cluster bool false no
enable_enhanced_container_insights Enable enhanced container insights for the ECS cluster bool false no
kms_key_arn The ARN of a custom KMS key to use for encryption string "" no
kms_key_enable_rotation Whether to enable key rotation bool true no
kms_key_rotation_in_days The number of days between key rotations number 365 no
renovate_environment_variables A list of maps of environment variables to set for the ECS task from here. https://docs.renovatebot.com/self-hosted-configuration/ list(map(string)) [] no
renovate_schedule_task_count The number of tasks to run on the ECS cluster number 1 no
renovate_task_cpu The number of CPU units to reserve for the ECS task number 1024 no
renovate_task_family The family name of the ECS task definition for renovate bot string "renovatebot" no
renovate_task_memory The amount of memory to reserve for the ECS task number 2048 no
renovate_task_network_mode The network mode to use for the ECS task string "awsvpc" no
renovate_task_policy_statements A list of statements to add to the ECS task role policy
list(object({
effect = string
actions = list(string)
resources = list(string)
sid = string
not_actions = optional(list(string))
not_resources = optional(list(string))
conditions = optional(list(object({
test = string
variable = string
values = list(string)
})))
}))
[] no
renovate_token_secret_arn The ARN of the secret containing the renovate token string "" no
renovate_version The version of renovate bot to use string "latest" no
retention_in_days The number of days to retain log events number 30 no
s3_log_bucket_name Optional: Name of an S3 bucket (additionally to CloudWatch) to store ECS logs. string "" no
s3_log_prefix Optional: Prefix to use for storing ECS logs in the S3 bucket. string "" no
schedule_cron_expression The cron expression to use for the ECS task schedule string "cron(0 * ? * MON-FRI *)" no
schedule_state The state of the ECS task schedule string "ENABLED" no
security_group_ids A list of security group IDs to associate with the ECS task list(string) [] no
subnet_ids A list of subnet IDs to associate with the ECS task list(string) [] no
tags A map of tags to add to all resources. map(string) {} no
vpc_id The ID of the VPC to associate with the ECS task string "" no

Outputs

Name Description
cloudwatch_event_rule_name n/a
ecs_cluster_arn n/a
ecs_role_arn n/a
ecs_task_definition_arn n/a
ecs_task_execution_role_arn n/a
ecs_task_name n/a
schedule_role_arn n/a
task_security_group_id n/a

About

Terraform Module for ECS Fargate-hosted RenovateBot

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages