Skip to content

Commit

Permalink
feat: CHK-3276 new pipeline for wallet domain (#367)
Browse files Browse the repository at this point in the history
* feat new pipeline for wallet domain

* fix: docs update
  • Loading branch information
infantesimone authored Oct 3, 2024
1 parent ac7b3e2 commit de10034
Show file tree
Hide file tree
Showing 2 changed files with 133 additions and 0 deletions.
130 changes: 130 additions & 0 deletions azure-devops/pay-wallet/06_pagopa-payment-wallet-cdc-service.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
variable "pagopa-payment-wallet-cdc-service" {
default = {
repository = {
organization = "pagopa"
name = "pagopa-payment-wallet-cdc-service"
branch_name = "refs/heads/main"
pipelines_path = ".devops"
yml_prefix_name = null
}
pipeline = {
enable_code_review = true
enable_deploy = true
sonarcloud = {
# TODO azure devops terraform provider does not support SonarCloud service endpoint
service_connection = "SONARCLOUD-SERVICE-CONN"
org = "pagopa"
project_key = "pagopa_pagopa-payment-wallet-cdc-service"
project_name = "pagopa-payment-wallet-cdc-service"
}
}
}
}

locals {
# global vars
pagopa-payment-wallet-cdc-service-variables = {
cache_version_id = "v1"
default_branch = var.pagopa-payment-wallet-cdc-service.repository.branch_name
}
# global secrets
pagopa-payment-wallet-cdc-service-variables_secret = {

}
# code_review vars
pagopa-payment-wallet-cdc-service-variables_code_review = {
sonarcloud_service_conn = var.pagopa-payment-wallet-cdc-service.pipeline.sonarcloud.service_connection
sonarcloud_org = var.pagopa-payment-wallet-cdc-service.pipeline.sonarcloud.org
sonarcloud_project_key = var.pagopa-payment-wallet-cdc-service.pipeline.sonarcloud.project_key
sonarcloud_project_name = var.pagopa-payment-wallet-cdc-service.pipeline.sonarcloud.project_name
}
# code_review secrets
pagopa-payment-wallet-cdc-service-variables_secret_code_review = {

}
# deploy vars
pagopa-payment-wallet-cdc-service-variables_deploy = {
github_connection = data.azuredevops_serviceendpoint_github.github_rw.service_endpoint_name

# acr section
k8s_image_repository_name = replace(var.pagopa-payment-wallet-cdc-service.repository.name, "-", "")
dev_container_registry_service_conn = data.azuredevops_serviceendpoint_azurecr.dev_ita_workload_identity.id
dev_container_registry_name = data.azuredevops_serviceendpoint_azurecr.dev_ita_workload_identity.service_endpoint_name
uat_container_registry_service_conn = data.azuredevops_serviceendpoint_azurecr.uat_ita_workload_identity.id
uat_container_registry_name = data.azuredevops_serviceendpoint_azurecr.uat_ita_workload_identity.service_endpoint_name
# prod_container_registry_service_conn = data.azuredevops_serviceendpoint_azurecr.prod_ita_workload_identity.id
# prod_container_registry_name = data.azuredevops_serviceendpoint_azurecr.prod_ita_workload_identity.service_endpoint_name

# aks section
dev_kubernetes_service_conn = azuredevops_serviceendpoint_kubernetes.aks_dev.id
uat_kubernetes_service_conn = azuredevops_serviceendpoint_kubernetes.aks_uat.id
# prod_kubernetes_service_conn = azuredevops_serviceendpoint_kubernetes.aks_prod.id

dev_container_namespace = "pagopaditncoreacr.azurecr.io"
uat_container_namespace = "pagopauitncoreacr.azurecr.io"
# prod_container_namespace = "pagopapitncoreacr.azurecr.io"

}
# deploy secrets
pagopa-payment-wallet-cdc-service-variables_secret_deploy = {
git_mail = module.secrets.values["azure-devops-github-EMAIL"].value
git_username = module.secrets.values["azure-devops-github-USERNAME"].value
tenant_id = data.azurerm_client_config.current.tenant_id
}
}

module "pagopa-payment-wallet-cdc-service_code_review" {
source = "git::https://github.com/pagopa/azuredevops-tf-modules.git//azuredevops_build_definition_code_review?ref=v5.1.1"
count = var.pagopa-payment-wallet-cdc-service.pipeline.enable_code_review == true ? 1 : 0

project_id = data.azuredevops_project.project.id
repository = var.pagopa-payment-wallet-cdc-service.repository
github_service_connection_id = data.azuredevops_serviceendpoint_github.github_pr.service_endpoint_id
path = "${local.domain}\\pagopa-payment-wallet-cdc-service"

variables = merge(
local.pagopa-payment-wallet-cdc-service-variables,
local.pagopa-payment-wallet-cdc-service-variables_code_review,
)

variables_secret = merge(
local.pagopa-payment-wallet-cdc-service-variables_secret,
local.pagopa-payment-wallet-cdc-service-variables_secret_code_review,
)

service_connection_ids_authorization = [
data.azuredevops_serviceendpoint_github.github_ro.id,
local.azuredevops_serviceendpoint_sonarcloud_id
]
}

module "pagopa-payment-wallet-cdc-service_deploy" {
source = "git::https://github.com/pagopa/azuredevops-tf-modules.git//azuredevops_build_definition_deploy?ref=v4.2.1"
count = var.pagopa-payment-wallet-cdc-service.pipeline.enable_deploy == true ? 1 : 0

project_id = data.azuredevops_project.project.id
repository = var.pagopa-payment-wallet-cdc-service.repository
github_service_connection_id = data.azuredevops_serviceendpoint_github.github_rw.service_endpoint_id
path = "${local.domain}\\pagopa-payment-wallet-cdc-service"

variables = merge(
local.pagopa-payment-wallet-cdc-service-variables,
local.pagopa-payment-wallet-cdc-service-variables_deploy,
)

variables_secret = merge(
local.pagopa-payment-wallet-cdc-service-variables_secret,
local.pagopa-payment-wallet-cdc-service-variables_secret_deploy,
)

service_connection_ids_authorization = [
data.azuredevops_serviceendpoint_github.github_ro.id,
data.azuredevops_serviceendpoint_azurecr.dev_ita_workload_identity.id,
data.azuredevops_serviceendpoint_azurecr.uat_ita_workload_identity.id,
# data.azuredevops_serviceendpoint_azurecr.prod_ita_workload_identity.id,
data.azuredevops_serviceendpoint_azurerm.dev.id,
data.azuredevops_serviceendpoint_azurerm.uat.id,
# data.azuredevops_serviceendpoint_azurerm.prod.id,
]
}

3 changes: 3 additions & 0 deletions azure-devops/pay-wallet/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
| <a name="module_letsencrypt_dev"></a> [letsencrypt\_dev](#module\_letsencrypt\_dev) | git::https://github.com/pagopa/terraform-azurerm-v3.git//letsencrypt_credential | v7.30.0 |
| <a name="module_letsencrypt_prod"></a> [letsencrypt\_prod](#module\_letsencrypt\_prod) | git::https://github.com/pagopa/terraform-azurerm-v3.git//letsencrypt_credential | v7.30.0 |
| <a name="module_letsencrypt_uat"></a> [letsencrypt\_uat](#module\_letsencrypt\_uat) | git::https://github.com/pagopa/terraform-azurerm-v3.git//letsencrypt_credential | v7.30.0 |
| <a name="module_pagopa-payment-wallet-cdc-service_code_review"></a> [pagopa-payment-wallet-cdc-service\_code\_review](#module\_pagopa-payment-wallet-cdc-service\_code\_review) | git::https://github.com/pagopa/azuredevops-tf-modules.git//azuredevops_build_definition_code_review | v5.1.1 |
| <a name="module_pagopa-payment-wallet-cdc-service_deploy"></a> [pagopa-payment-wallet-cdc-service\_deploy](#module\_pagopa-payment-wallet-cdc-service\_deploy) | git::https://github.com/pagopa/azuredevops-tf-modules.git//azuredevops_build_definition_deploy | v4.2.1 |
| <a name="module_pagopa-payment-wallet-event-dispatcher-service_code_review"></a> [pagopa-payment-wallet-event-dispatcher-service\_code\_review](#module\_pagopa-payment-wallet-event-dispatcher-service\_code\_review) | git::https://github.com/pagopa/azuredevops-tf-modules.git//azuredevops_build_definition_code_review | v5.1.1 |
| <a name="module_pagopa-payment-wallet-event-dispatcher-service_deploy"></a> [pagopa-payment-wallet-event-dispatcher-service\_deploy](#module\_pagopa-payment-wallet-event-dispatcher-service\_deploy) | git::https://github.com/pagopa/azuredevops-tf-modules.git//azuredevops_build_definition_deploy | v4.2.1 |
| <a name="module_pagopa-payment-wallet-fe_code_review"></a> [pagopa-payment-wallet-fe\_code\_review](#module\_pagopa-payment-wallet-fe\_code\_review) | git::https://github.com/pagopa/azuredevops-tf-modules.git//azuredevops_build_definition_code_review | v5.1.1 |
Expand Down Expand Up @@ -82,6 +84,7 @@
| <a name="input_acr_weu_service_connection_workload_identity_uat"></a> [acr\_weu\_service\_connection\_workload\_identity\_uat](#input\_acr\_weu\_service\_connection\_workload\_identity\_uat) | The service connection ID for the WEU UAT workload identity in Azure Container Registry | `string` | `""` | no |
| <a name="input_dev_subscription_name"></a> [dev\_subscription\_name](#input\_dev\_subscription\_name) | DEV Subscription name | `string` | n/a | yes |
| <a name="input_location"></a> [location](#input\_location) | n/a | `string` | n/a | yes |
| <a name="input_pagopa-payment-wallet-cdc-service"></a> [pagopa-payment-wallet-cdc-service](#input\_pagopa-payment-wallet-cdc-service) | n/a | `map` | <pre>{<br> "pipeline": {<br> "enable_code_review": true,<br> "enable_deploy": true,<br> "sonarcloud": {<br> "org": "pagopa",<br> "project_key": "pagopa_pagopa-payment-wallet-cdc-service",<br> "project_name": "pagopa-payment-wallet-cdc-service",<br> "service_connection": "SONARCLOUD-SERVICE-CONN"<br> }<br> },<br> "repository": {<br> "branch_name": "refs/heads/main",<br> "name": "pagopa-payment-wallet-cdc-service",<br> "organization": "pagopa",<br> "pipelines_path": ".devops",<br> "yml_prefix_name": null<br> }<br>}</pre> | no |
| <a name="input_pagopa-payment-wallet-event-dispatcher-service"></a> [pagopa-payment-wallet-event-dispatcher-service](#input\_pagopa-payment-wallet-event-dispatcher-service) | n/a | `map` | <pre>{<br> "pipeline": {<br> "enable_code_review": true,<br> "enable_deploy": true,<br> "sonarcloud": {<br> "org": "pagopa",<br> "project_key": "pagopa_pagopa-payment-wallet-event-dispatcher-service",<br> "project_name": "pagopa-payment-wallet-event-dispatcher-service",<br> "service_connection": "SONARCLOUD-SERVICE-CONN"<br> }<br> },<br> "repository": {<br> "branch_name": "refs/heads/main",<br> "name": "pagopa-payment-wallet-event-dispatcher-service",<br> "organization": "pagopa",<br> "pipelines_path": ".devops",<br> "yml_prefix_name": "pay-wallet"<br> }<br>}</pre> | no |
| <a name="input_pagopa-payment-wallet-fe"></a> [pagopa-payment-wallet-fe](#input\_pagopa-payment-wallet-fe) | n/a | `map` | <pre>{<br> "pipeline": {<br> "enable_code_review": true,<br> "enable_deploy": true,<br> "sonarcloud": {<br> "org": "pagopa",<br> "project_key": "pagopa_pagopa-wallet-fe",<br> "project_name": "pagopa-wallet-fe",<br> "service_connection": "SONARCLOUD-SERVICE-CONN"<br> }<br> },<br> "repository": {<br> "branch_name": "refs/heads/main",<br> "name": "pagopa-wallet-fe",<br> "organization": "pagopa",<br> "pipelines_path": ".devops",<br> "yml_prefix_name": "pagopa"<br> }<br>}</pre> | no |
| <a name="input_pagopa-payment-wallet-helpdesk-service"></a> [pagopa-payment-wallet-helpdesk-service](#input\_pagopa-payment-wallet-helpdesk-service) | n/a | `map` | <pre>{<br> "pipeline": {<br> "enable_code_review": false,<br> "enable_deploy": true,<br> "sonarcloud": {<br> "org": "pagopa",<br> "project_key": "pagopa_pagopa-payment-wallet-helpdesk-service",<br> "project_name": "pagopa-payment-wallet-helpdesk-service",<br> "service_connection": "SONARCLOUD-SERVICE-CONN"<br> }<br> },<br> "repository": {<br> "branch_name": "refs/heads/main",<br> "name": "pagopa-payment-wallet-helpdesk-service",<br> "organization": "pagopa",<br> "pipelines_path": ".devops",<br> "yml_prefix_name": null<br> }<br>}</pre> | no |
Expand Down

0 comments on commit de10034

Please sign in to comment.