Release Candidate Container Build and Deployment Preparation #27
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release Candidate Container Build and Deployment Preparation | |
on: | |
workflow_dispatch: | |
inputs: | |
environment: | |
description: 'The environment to tag the resulting images to. The resulting container would be tagged as <application-name>:<application-version>-<environment>.<githubsha>' | |
type: choice | |
required: true | |
default: 'TEST' | |
options: | |
- TEST | |
values: | |
description: 'The name of the Helm chart values file to update with the resulting tag name.' | |
type: choice | |
required: true | |
default: 'test2' | |
options: | |
- test2 | |
build-elasticsearch: | |
description: 'Release a new ElasticSearch Container?' | |
required: true | |
type: boolean | |
default: false | |
build-nifi: | |
description: 'Release a new NiFi Container?' | |
required: true | |
type: boolean | |
default: false | |
jobs: | |
build-nbs-gateway-release-candidate: | |
name: Build NBS Gateway Release Candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Release-gradle-microservice-container.yaml@main | |
with: | |
microservice_name: nbs-gateway | |
build-new-container: true | |
dockerfile_relative_path: -f ./apps/nbs-gateway/Dockerfile . | |
environment_classifier: ${{inputs.environment}} | |
secrets: | |
CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID: ${{secrets.CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID}} | |
ECR_REPO_BASE_NAME: ${{secrets.ECR_REPO_BASE_NAME}} | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
prepare-nbs-gateway-release-candidate: | |
name: Prepare NBS Gateway Release Candidate Deployment | |
needs: build-nbs-gateway-release-candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Update-helm-charts.yaml@main | |
with: | |
microservice_name: nbs-gateway | |
values_file_with_path: charts/nbs-gateway/values-${{inputs.values}}.yaml | |
new_image_tag: ${{ needs.build-nbs-gateway-release-candidate.outputs.output_image_tag }} | |
secrets: | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
build-modernization-api-release-candidate: | |
name: Build Modernization API Release Candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Release-gradle-microservice-container.yaml@main | |
with: | |
microservice_name: modernization-api | |
build-new-container: true | |
dockerfile_relative_path: -f ./apps/modernization-api/Dockerfile . | |
environment_classifier: ${{inputs.environment}} | |
secrets: | |
CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID: ${{secrets.CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID}} | |
ECR_REPO_BASE_NAME: ${{secrets.ECR_REPO_BASE_NAME}} | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
prepare-modernization-api-release-candidate: | |
name: Prepare Modernization API Candidate Deployment | |
needs: build-modernization-api-release-candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Update-helm-charts.yaml@main | |
with: | |
microservice_name: modernization-api | |
values_file_with_path: charts/modernization-api/values-${{inputs.values}}.yaml | |
new_image_tag: ${{ needs.build-modernization-api-release-candidate.outputs.output_image_tag }} | |
secrets: | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
build-page-builder-api-release-candidate: | |
name: Build Page Builder API Release Candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Release-gradle-microservice-container.yaml@main | |
with: | |
microservice_name: page-builder-api | |
build-new-container: true | |
dockerfile_relative_path: -f ./apps/question-bank/Dockerfile . | |
environment_classifier: ${{inputs.environment}} | |
secrets: | |
CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID: ${{secrets.CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID}} | |
ECR_REPO_BASE_NAME: ${{secrets.ECR_REPO_BASE_NAME}} | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
prepare-page-builder-api-release-candidate: | |
name: Prepare Page Builder API Candidate Deployment | |
needs: build-page-builder-api-release-candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Update-helm-charts.yaml@main | |
with: | |
microservice_name: page-builder-api | |
values_file_with_path: charts/page-builder-api/values-${{inputs.values}}.yaml | |
new_image_tag: ${{ needs.build-page-builder-api-release-candidate.outputs.output_image_tag }} | |
secrets: | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
build-elasticsearch-release-candidate: | |
if: ${{ inputs.build-elasticsearch == 'true' }} | |
name: Build Elasticsearch Release Candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Release-gradle-microservice-container.yaml@main | |
with: | |
microservice_name: elasticsearch | |
build-new-container: true | |
dockerfile_relative_path: -f ./cdc-sandbox/elasticsearch/Dockerfile . | |
environment_classifier: ${{inputs.environment}} | |
secrets: | |
CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID: ${{secrets.CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID}} | |
ECR_REPO_BASE_NAME: ${{secrets.ECR_REPO_BASE_NAME}} | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
prepare-elasticsearch-release-candidate: | |
name: Prepare Elasticsearch Release Candidate Deployment | |
needs: build-elasticsearch-release-candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Update-helm-charts.yaml@main | |
with: | |
microservice_name: elasticsearch | |
values_file_with_path: charts/elasticsearch-efs/values-${{inputs.values}}.yaml | |
new_image_tag: ${{ needs.build-elasticsearch-release-candidate.outputs.output_image_tag }} | |
secrets: | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
build-nifi-release-candidate: | |
if: ${{ inputs.build-nifi == 'true' }} | |
name: Build NiFi Release Candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Release-gradle-microservice-container.yaml@main | |
with: | |
microservice_name: nifi | |
build-new-container: true | |
dockerfile_relative_path: -f ./cdc-sandbox/nifi/Dockerfile . | |
environment_classifier: ${{inputs.environment}} | |
secrets: | |
CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID: ${{secrets.CDC_NBS_SANDBOX_SHARED_SERVICES_ACCOUNTID}} | |
ECR_REPO_BASE_NAME: ${{secrets.ECR_REPO_BASE_NAME}} | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} | |
prepare-nifi-release-candidate: | |
name: Prepare NiFi Release Candidate Deployment | |
needs: build-nifi-release-candidate | |
uses: CDCgov/NEDSS-Workflows/.github/workflows/Update-helm-charts.yaml@main | |
with: | |
microservice_name: nifi | |
values_file_with_path: charts/nifi-efs/values-${{inputs.values}}.yaml | |
new_image_tag: ${{ needs.build-nifi-release-candidate.outputs.output_image_tag }} | |
secrets: | |
GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
GIT_USER_NAME: ${{secrets.GIT_USER_NAME}} | |
HELM_TOKEN: ${{secrets.HELM_TOKEN}} |