From c2b1cd4348bba4ddb97b08deabeea0cbe3500b88 Mon Sep 17 00:00:00 2001 From: Decfox Date: Fri, 19 Jul 2024 21:23:09 +0530 Subject: [PATCH] feat: deploy ooniprobe service to prod --- tf/environments/prod/main.tf | 51 ++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/tf/environments/prod/main.tf b/tf/environments/prod/main.tf index 19a09a7..252559e 100644 --- a/tf/environments/prod/main.tf +++ b/tf/environments/prod/main.tf @@ -486,6 +486,57 @@ module "ooniapi_ooniauth" { ) } +#### OONI Probe service + +module "ooniapi_ooniprobe_deployer" { + source = "../../modules/ooniapi_service_deployer" + + service_name = "ooniprobe" + repo = "ooni/backend" + branch_name = "master" + buildspec_path = "ooniprobe/services/ooniprobe/buildspec.yml" + codestar_connection_arn = aws_codestarconnections_connection.oonidevops.arn + + codepipeline_bucket = aws_s3_bucket.ooniapi_codepipeline_bucket.bucket + + ecs_service_name = module.ooniapi_ooniprobe.ecs_service_name + ecs_cluster_name = module.ooniapi_cluster.cluster_name +} + +module "ooniapi_ooniprobe" { + source = "../../modules/ooniapi_service" + + # First run should be set on first run to bootstrap the task definition + first_run = true + + vpc_id = module.network.vpc_id + private_subnet_ids = module.network.vpc_subnet_private[*].id + public_subnet_ids = module.network.vpc_subnet_public[*].id + + service_name = "ooniprobe" + default_docker_image_url = "ooni/api-ooniprobe:latest" + stage = local.environment + dns_zone_ooni_io = local.dns_zone_ooni_io + key_name = module.adm_iam_roles.oonidevops_key_name + ecs_cluster_id = module.ooniapi_cluster.cluster_id + + service_desired_count = 2 + + task_secrets = { + POSTGRESQL_URL = aws_secretsmanager_secret_version.oonipg_url.arn + JWT_ENCRYPTION_KEY = aws_secretsmanager_secret_version.jwt_secret.arn + PROMETHEUS_METRICS_PASSWORD = aws_secretsmanager_secret_version.prometheus_metrics_password.arn + } + + ooniapi_service_security_groups = [ + module.ooniapi_cluster.web_security_group_id + ] + + tags = merge( + local.tags, + { Name = "ooni-tier0-ooniprobe" } + ) +} #### OONI Tier0 API Frontend module "ooniapi_frontend" {