diff --git a/.devops/deploy-pipelines.yml b/.devops/deploy-pipelines.yml deleted file mode 100644 index a2d18cd..0000000 --- a/.devops/deploy-pipelines.yml +++ /dev/null @@ -1,232 +0,0 @@ -parameters: - - name: ENV - displayName: Target Environment - type: string - default: dev - values: - - dev - - uat - - prod - - name: SEMVER - displayName: "When packing a release, define the version bump to apply. Use only buildNumber or skip for manual deployment" - type: string - values: - - major - - minor - - patch - - buildNumber - - skip - default: skip - - name: "FORCE_REPLACE_DOCKER_IMAGE" - displayName: "Force the existing docker image to be replaced" - type: boolean - default: False - values: - - False - - True - -variables: - imageRepository: "$(IMAGE_REPOSITORY_NAME)" - - ${{ if eq(parameters['ENV'], 'dev') }}: - AZURE_SUBSCRIPTION: $(DEV_AZURE_SUBSCRIPTION) - APP_NAME: $(DEV_WEB_APP_NAME) - NODO_HOST: "https://api.dev.platform.pagopa.it/nodo/nodo-per-pa/v1/" - STAGE: "d" - RESOURCE_GROUP: "pagopa-d-weu-gps-gpd-rg" - DOCKER_REGISTRY_SERVICE_CONNECTION: $(DEV_CONTAINER_REGISTRY_SERVICE_CONN) - DOCKER_NAMESPACE: $(DEV_CONTAINER_NAMESPACE) - ${{ if eq(parameters['ENV'], 'uat') }}: - AZURE_SUBSCRIPTION: $(UAT_AZURE_SUBSCRIPTION) - APP_NAME: $(UAT_WEB_APP_NAME) - NODO_HOST: "https://api.uat.platform.pagopa.it/nodo/nodo-per-pa/v1/" - STAGE: "u" - RESOURCE_GROUP: "pagopa-u-weu-gps-gpd-rg" - DOCKER_REGISTRY_SERVICE_CONNECTION: $(UAT_CONTAINER_REGISTRY_SERVICE_CONN) - DOCKER_NAMESPACE: $(UAT_CONTAINER_NAMESPACE) - ${{ if eq(parameters['ENV'], 'prod') }}: - AZURE_SUBSCRIPTION: $(PROD_AZURE_SUBSCRIPTION) - APP_NAME: $(PROD_WEB_APP_NAME) - NODO_HOST: "https://api.platform.pagopa.it/nodo/nodo-per-pa/v1/" - STAGE: "p" - RESOURCE_GROUP: "pagopa-p-weu-gps-gpd-rg" - DOCKER_REGISTRY_SERVICE_CONNECTION: $(PROD_CONTAINER_REGISTRY_SERVICE_CONN) - DOCKER_NAMESPACE: $(PROD_CONTAINER_NAMESPACE) - - ${{ if eq(variables['Build.SourceBranchName'], 'merge') }}: - SOURCE_BRANCH: "main" # force to main branch - ${{ if ne(variables['Build.SourceBranchName'], 'merge') }}: - SOURCE_BRANCH: ${{ variables['Build.SourceBranchName'] }} - - MAVEN_CACHE_FOLDER: $(Pipeline.Workspace)/.m2/repository - MAVEN_OPTS: "-Dmaven.repo.local=$(MAVEN_CACHE_FOLDER)" - title: "" - sha: "" - tag: "" - -# Only manual triggers -trigger: none -pr: none - -pool: - vmImage: ubuntu-latest - -resources: - repositories: - - repository: pagopaCommons - type: github - name: pagopa/azure-pipeline-templates - ref: refs/tags/v2.10.1 - endpoint: "io-azure-devops-github-ro" - -stages: - # Create a release on GitHub - - stage: Release - jobs: - - job: make_release - steps: - - checkout: self - clean: true - persistCredentials: true - - - ${{ if ne(parameters.SEMVER, 'skip') }}: - - template: templates/maven-github-release/template.yaml@pagopaCommons - parameters: - release_branch: $(SOURCE_BRANCH) - gitEmail: $(GIT_EMAIL) - gitUsername: $(GIT_USERNAME) - gitHubConnection: $(GITHUB_CONNECTION) - ${{ if ne(parameters.SEMVER, 'skip') }}: - semver: "${{ parameters.SEMVER }}" - ${{ if eq(parameters.SEMVER, 'skip') }}: - semver: "buildNumber" # this case is impossible due to main condition, but it is necessary to work property - - - template: templates/maven-github-current-version/template.yaml@pagopaCommons - - # Build and Push Docker Image - - stage: Build - dependsOn: Release - variables: - current_version: $[ stageDependencies.Release.make_release.outputs['current_version.value'] ] - jobs: - - job: "build" - steps: - - checkout: self - persistCredentials: true - - - script: | - git checkout $(sourceBranch) - - - task: Bash@3 - displayName: "Update WSDL Location" - inputs: - targetType: "inline" - script: | - sh upd_wsdl_location.sh $(NODO_HOST) - - - task: Maven@3 - inputs: - mavenPomFile: "pom.xml" - publishJUnitResults: false - javaHomeOption: "JDKVersion" - jdkVersionOption: "1.11" - mavenVersionOption: "Default" - mavenOptions: "-Xmx3072m $(MAVEN_OPTS)" - mavenAuthenticateFeed: false - effectivePomSkip: false - sonarQubeRunAnalysis: false - - - template: templates/docker-release/template.yaml@pagopaCommons - parameters: - CONTAINER_REGISTRY_SERVICE_CONN: $(DOCKER_REGISTRY_SERVICE_CONNECTION) - CONTAINER_REGISTRY_FQDN: $(DOCKER_NAMESPACE) - DOCKER_IMAGE_NAME: $(imageRepository) - DOCKER_IMAGE_TAG: $(current_version) - FORCE_REPLACE_DOCKER_IMAGE: ${{ parameters.FORCE_REPLACE_DOCKER_IMAGE }} - - # Deploy on Azure - - stage: deploy - variables: - current_version: $[ stageDependencies.Release.make_release.outputs['current_version.value'] ] - condition: not(failed('releaseService')) - pool: - vmImage: "ubuntu-latest" - jobs: - - job: deployJava - steps: - # deploy reporting-fn - - task: AzureCLI@2 - displayName: Start staging slot [PROD] - condition: eq('${{ parameters.ENV }}', 'prod') - inputs: - azureSubscription: $(AZURE_SUBSCRIPTION) - addSpnToEnvironment: true - scriptType: 'bash' - scriptLocation: 'inlineScript' - failOnStandardError: true - inlineScript: | - az functionapp start --name ${{variables.APP_NAME}}-fn-gpd-batch --resource-group $(RESOURCE_GROUP) --slot staging - - task: AzureFunctionAppContainer@1 - displayName: Deploy Function App [DEV|UAT] - condition: in('${{ parameters.ENV }}', 'dev', 'uat') - inputs: - azureSubscription: $(AZURE_SUBSCRIPTION) - appName: "${{variables.APP_NAME}}-fn-gpd-batch" - imageName: "${{variables.DOCKER_NAMESPACE}}/${{ variables.imageRepository }}:latest" - slotName: production - resourceGroupName: $(RESOURCE_GROUP) - - task: AzureFunctionAppContainer@1 - displayName: Deploy Function App [PROD] staging - condition: eq('${{ parameters.ENV }}', 'prod') - inputs: - azureSubscription: $(AZURE_SUBSCRIPTION) - appName: "${{variables.APP_NAME}}-fn-gpd-batch" - imageName: "${{variables.DOCKER_NAMESPACE}}/${{ variables.imageRepository }}:latest" - deployToSlotOrASE: true - slotName: staging - resourceGroupName: $(RESOURCE_GROUP) - - - script: | - echo "##vso[task.setvariable variable=version;isOutput=true]$(pomversion.next)" - name: dockerTag - - stage: deployApprovalPROD - condition: eq('${{ parameters.ENV }}', 'prod') - dependsOn: deploy - pool: - vmImage: "ubuntu-latest" - jobs: - - job: waitForApprovalPROD - displayName: waiting for approval - pool: server - timeoutInMinutes: 4320 # 3 days - steps: - - task: ManualValidation@0 - displayName: Manual Approval - inputs: - onTimeout: "reject" - - - job: completeProdDeployFn - displayName: complete prod function deploy - dependsOn: waitForApprovalPROD - steps: - # deploy functions - swap - - task: AzureAppServiceManage@0 - displayName: Swapping App Service Deploy - inputs: - ConnectedServiceName: $(AZURE_SUBSCRIPTION) - WebAppName: "${{variables.APP_NAME}}-fn-gpd-batch" - ResourceGroupName: $(RESOURCE_GROUP) - SourceSlot: staging - SwapWithProduction: true - Slot: production - - task: AzureCLI@2 - displayName: Stop staging slot [PROD] - condition: eq('${{ parameters.ENV }}', 'prod') - inputs: - azureSubscription: $(AZURE_SUBSCRIPTION) - addSpnToEnvironment: true - scriptType: 'bash' - scriptLocation: 'inlineScript' - failOnStandardError: true - inlineScript: | - az functionapp stop --name ${{variables.APP_NAME}}-fn-gpd-batch --resource-group $(RESOURCE_GROUP) --slot staging diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 44439a0..6a722a0 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: pagopa-functions-template description: Microservice description type: application -version: 0.11.0 -appVersion: 0.1.5 +version: 0.12.0 +appVersion: 0.1.5-1-PAGOPA-1176-remove-deploy-pipeline dependencies: - name: microservice-chart version: 1.21.0 diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index 1aaa809..58ef9e5 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: pagopadcommonacr.azurecr.io/pagopa # TODO - tag: "0.1.5" + tag: "0.1.5-1-PAGOPA-1176-remove-deploy-pipeline" pullPolicy: Always # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: diff --git a/helm/values-prod.yaml b/helm/values-prod.yaml index 16574ea..c421ed0 100644 --- a/helm/values-prod.yaml +++ b/helm/values-prod.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: pagopapcommonacr.azurecr.io/pagopa # TODO - tag: "0.1.5" + tag: "0.1.5-1-PAGOPA-1176-remove-deploy-pipeline" pullPolicy: Always # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: diff --git a/helm/values-uat.yaml b/helm/values-uat.yaml index db74c46..a4374cf 100644 --- a/helm/values-uat.yaml +++ b/helm/values-uat.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: pagopaucommonacr.azurecr.io/pagopa # TODO - tag: "0.1.5" + tag: "0.1.5-1-PAGOPA-1176-remove-deploy-pipeline" pullPolicy: Always # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: diff --git a/pom.xml b/pom.xml index f6b4ee3..119d5dd 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ it.gov.pagopa.reporting reporting-batch - 0.1.5 + 0.1.5-1-PAGOPA-1176-remove-deploy-pipeline jar Azure Reporting-Batch Fn