fix: rename incorrect workflow and provide prefix for services #795
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: CI/CD | |
on: | |
push: | |
branches: [ main ] | |
workflow_dispatch: | |
concurrency: CI | |
jobs: | |
set-release-version: | |
if: github.repository_owner == 'Informatievlaanderen' | |
name: Decide next version | |
runs-on: ubuntu-latest | |
outputs: | |
version: ${{ steps.set-version.outputs.version }} | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
- name: Setup Node.js | |
uses: ./.github/actions/setup-nodejs | |
- name: Run Semantic Release dry-run | |
shell: bash | |
run: npx semantic-release --dry-run | |
env: | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
BUILD_DOCKER_REGISTRY: ${{ secrets.VBR_BUILD_DOCKER_REGISTRY }} | |
GITHUB_TOKEN: ${{ secrets.VBR_ACTIONS_TOKEN }} | |
GIT_COMMIT: ${{ github.sha }} | |
GIT_USERNAME: ${{ secrets.VBR_GIT_USER }} | |
GIT_AUTHOR_NAME: ${{ secrets.VBR_GIT_USER }} | |
GIT_COMMITTER_NAME: ${{ secrets.VBR_GIT_USER }} | |
GIT_EMAIL: ${{ secrets.VBR_GIT_EMAIL }} | |
GIT_AUTHOR_EMAIL: ${{ secrets.VBR_GIT_EMAIL }} | |
GIT_COMMITTER_EMAIL: ${{ secrets.VBR_GIT_EMAIL }} | |
- name: Set Release Version | |
id: set-version | |
run: | | |
[ ! -f semver ] && echo none > semver | |
echo $(cat semver) | |
echo ::set-output name=version::$(cat semver) | |
echo RELEASE_VERSION=$(cat semver) >> $GITHUB_ENV | |
shell: bash | |
test: | |
if: github.repository_owner == 'Informatievlaanderen' | |
name: Test | |
runs-on: ubuntu-latest | |
needs: [ set-release-version ] | |
services: | |
sqlserver: | |
image: mcr.microsoft.com/mssql/server:latest | |
env: | |
ACCEPT_EULA: Y | |
SA_PASSWORD: E@syP@ssw0rd | |
MSSQL_TCP_PORT: 21433 | |
ports: | |
- 21433:21433 | |
acm: | |
image: ghcr.io/informatievlaanderen/acmidm:1.253.0 | |
ports: | |
- 5050:80 | |
wiremock: | |
image: ghcr.io/informatievlaanderen/wiremock:main | |
ports: | |
- 8080:8080 | |
opensearch: | |
image: opensearchproject/opensearch:1.1.0 | |
env: | |
discovery.type: single-node | |
DISABLE_SECURITY_PLUGIN: true | |
ports: | |
- 9200:9200 | |
- 9600:9600 | |
outputs: | |
version: ${{ steps.set-version.outputs.version }} | |
test: "test" | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
- name: Setup .NET Core | |
uses: ./.github/actions/setup-dotnet | |
- name: Parse repository name | |
run: echo REPOSITORY_NAME=$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") >> $GITHUB_ENV | |
shell: bash | |
- name: Test Solution | |
shell: bash | |
run: ./build.sh Test_Solution | |
build-api: | |
name: Build api | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_Api | |
build-project: OrganisationRegistry.Api | |
image-file: api.tar | |
image-name: api | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-agentschapzorgengezondheidftpdump: | |
name: Build batch-agentschapzorgengezondheidftpdump | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_AgentschapZorgEnGezondheid | |
build-project: OrganisationRegistry.AgentschapZorgEnGezondheid.FtpDump | |
image-file: batch-agentschapzorgengezondheidftpdump.tar | |
image-name: batch-agentschapzorgengezondheidftpdump | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-vlaanderenbe: | |
name: Build batch-vlaanderenbe | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_VlaanderenBeNotifier | |
build-project: OrganisationRegistry.VlaanderenBeNotifier | |
image-file: batch-vlaanderenbe.tar | |
image-name: batch-vlaanderenbe | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-projections-elasticsearch: | |
name: Build elasticsearch projections | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_ElasticSearch | |
build-project: OrganisationRegistry.ElasticSearch.Projections | |
image-file: projections-elasticsearch.tar | |
image-name: projections-elasticsearch | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-projections-delegations: | |
name: Build delegations | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_Delegations | |
build-project: OrganisationRegistry.Projections.Delegations | |
image-file: projections-delegations.tar | |
image-name: projections-delegations | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-projections-reporting: | |
name: Build reporting | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_Reporting | |
build-project: OrganisationRegistry.Projections.Reporting | |
image-file: projections-reporting.tar | |
image-name: projections-reporting | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-kbo-mutations: | |
name: Build kbo-mutations | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_KboMutations | |
build-project: OrganisationRegistry.KboMutations | |
image-file: kbo-mutations.tar | |
image-name: kbo-mutations | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-rebuilder: | |
name: Build rebuilder | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ test, set-release-version ] | |
with: | |
build-target: Containerize_Rebuilder | |
build-project: OrganisationRegistry.Rebuilder | |
image-file: rebuilder.tar | |
image-name: rebuilder | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-ui: | |
name: Build site | |
uses: ./.github/workflows/build-site-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ set-release-version ] | |
with: | |
build-target: Containerize_Site | |
image-file: ui.tar | |
image-name: ui | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
build-acm-idm: | |
name: Build acm idm | |
uses: ./.github/workflows/build-image.yml | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
needs: [ set-release-version ] | |
with: | |
build-target: Containerize_AcmIdm | |
build-project: IdentityServer | |
image-file: acmidm.tar | |
image-name: acmidm | |
semver: ${{ needs.set-release-version.outputs.version }} | |
secrets: inherit | |
release: | |
if: github.repository_owner == 'Informatievlaanderen' && needs.set-release-version.outputs.version != 'none' | |
name: Release | |
runs-on: ubuntu-latest | |
needs: | |
- build-api | |
- build-agentschapzorgengezondheidftpdump | |
- build-vlaanderenbe | |
- build-projections-elasticsearch | |
- build-projections-delegations | |
- build-projections-reporting | |
- build-kbo-mutations | |
- build-rebuilder | |
- build-ui | |
- set-release-version | |
outputs: | |
version: ${{ steps.set-version.outputs.version }} | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Setup nodejs | |
uses: ./.github/actions/setup-nodejs | |
- name: Generate Token | |
id: generate-token # Add an ID to this step for reference | |
run: node .github/generate-token.js | |
env: | |
APP_ID: ${{ secrets.MYBOT_APP_ID }} | |
PRIVATE_KEY: ${{ secrets.MYBOT_PRIVATE_KEY }} | |
- name: Delete huge unnecessary tools folder | |
run: rm -rf /opt/hostedtoolcache | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
with: | |
token: ${{ env.installationToken }} | |
- name: Parse repository name | |
run: echo REPOSITORY_NAME=$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") >> $GITHUB_ENV | |
shell: bash | |
- name: Install NPM dependencies | |
shell: bash | |
run: npm install --legacy-peer-deps | |
- name: Run Semantic Release | |
shell: bash | |
run: npx semantic-release | |
env: | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
BUILD_DOCKER_REGISTRY: ${{ secrets.VBR_BUILD_DOCKER_REGISTRY }} | |
GITHUB_TOKEN: ${{ env.installationToken }} | |
GIT_COMMIT: ${{ github.sha }} | |
GIT_USERNAME: ${{ env.installationToken }} | |
GIT_AUTHOR_NAME: ${{ secrets.VBR_GIT_USER }} | |
GIT_COMMITTER_NAME: ${{ secrets.VBR_GIT_USER }} | |
GIT_EMAIL: ${{ secrets.VBR_GIT_EMAIL }} | |
GIT_AUTHOR_EMAIL: ${{ secrets.VBR_GIT_EMAIL }} | |
GIT_COMMITTER_EMAIL: ${{ secrets.VBR_GIT_EMAIL }} | |
IGNORE_ES_TESTS: FALSE | |
- name: Set Release Version | |
id: set-version | |
run: | | |
[ ! -f semver ] && echo none > semver | |
echo $(cat semver) | |
echo ::set-output name=version::$(cat semver) | |
echo RELEASE_VERSION=$(cat semver) >> $GITHUB_ENV | |
shell: bash | |
- name: Debug Output | |
shell: bash | |
run: | | |
echo 'BEGIN VERSION' | |
echo ${{ steps.set-version.outputs.version }} | |
echo 'END VERSION' | |
publish_to_atlassian: | |
if: needs.release.outputs.version != 'none' | |
needs: [ release ] | |
name: Publish to Atlassian | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
- name: Parse repository name | |
run: echo REPOSITORY_NAME=$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") >> $GITHUB_ENV | |
shell: bash | |
- name: Setup Python | |
uses: ./.github/actions/setup-python | |
- name: Cache Paket | |
uses: ./.github/actions/cache-paket | |
- name: Publish to Confluence | |
if: needs.release.outputs.version != 'none' | |
shell: bash | |
run: ./packages/Be.Vlaanderen.Basisregisters.Build.Pipeline/Content/ci-confluence.sh | |
env: | |
CONFLUENCE_TITLE: ${{ env.REPOSITORY_NAME }} | |
CONFLUENCE_USERNAME: ${{ secrets.VBR_CONFLUENCE_USER }} | |
CONFLUENCE_PASSWORD: ${{ secrets.VBR_CONFLUENCE_PASSWORD }} | |
- name: Create Jira Release | |
if: needs.release.outputs.version != 'none' | |
shell: bash | |
run: ./packages/Be.Vlaanderen.Basisregisters.Build.Pipeline/Content/ci-jira.sh | |
env: | |
CONFLUENCE_TITLE: ${{ env.REPOSITORY_NAME }} | |
CONFLUENCE_USERNAME: ${{ secrets.VBR_CONFLUENCE_USER }} | |
CONFLUENCE_PASSWORD: ${{ secrets.VBR_CONFLUENCE_PASSWORD }} | |
JIRA_PREFIX: Association | |
JIRA_PROJECT: OR | |
JIRA_VERSION: ${{ needs.release.outputs.version }} | |
push_images_to_staging: | |
if: needs.release.outputs.version != 'none' | |
needs: [ release ] | |
name: Push images to Staging | |
runs-on: ubuntu-latest | |
steps: | |
- name: debug_output | |
shell: bash | |
run: | | |
echo needs.release.outputs.version: ${{ needs.release.outputs.version }} | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
- name: Configure AWS credentials (Staging) | |
if: needs.release.outputs.version != 'none' | |
uses: aws-actions/configure-aws-credentials@v1 | |
with: | |
aws-access-key-id: ${{ secrets.VBR_AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.VBR_AWS_SECRET_ACCESS_KEY }} | |
aws-region: ${{ secrets.VBR_AWS_REGION }} | |
- name: Login to Amazon ECR (Staging) | |
if: needs.release.outputs.version != 'none' | |
uses: aws-actions/[email protected] | |
- name: Download api artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: api | |
path: ~/ | |
- name: Load Api image | |
shell: bash | |
run: docker image load -i ~/api.tar | |
- name: Download batch-agentschapzorgengezondheidftpdump artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: batch-agentschapzorgengezondheidftpdump | |
path: ~/ | |
- name: Load batch-agentschapzorgengezondheidftpdump image | |
shell: bash | |
run: docker image load -i ~/batch-agentschapzorgengezondheidftpdump.tar | |
- name: Download batch-vlaanderenbe artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: batch-vlaanderenbe | |
path: ~/ | |
- name: Load batch-vlaanderenbe image | |
shell: bash | |
run: docker image load -i ~/batch-vlaanderenbe.tar | |
- name: Download projections-elasticsearch artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-elasticsearch | |
path: ~/ | |
- name: Load projections-elasticsearch image | |
shell: bash | |
run: docker image load -i ~/projections-elasticsearch.tar | |
- name: Download projections-delegations artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-delegations | |
path: ~/ | |
- name: Load projections-delegations image | |
shell: bash | |
run: docker image load -i ~/projections-delegations.tar | |
- name: Download projections-reporting artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-reporting | |
path: ~/ | |
- name: Load projections-reporting image | |
shell: bash | |
run: docker image load -i ~/projections-reporting.tar | |
- name: Download kbo-mutations artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: kbo-mutations | |
path: ~/ | |
- name: Load kbo-mutations image | |
shell: bash | |
run: docker image load -i ~/kbo-mutations.tar | |
- name: Download ui artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: ui | |
path: ~/ | |
- name: Load ui image | |
shell: bash | |
run: docker image load -i ~/ui.tar | |
- name: Download rebuilder artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: rebuilder | |
path: ~/ | |
- name: Load rebuilder image | |
shell: bash | |
run: docker image load -i ~/rebuilder.tar | |
- name: Log in to the Container registry | |
uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Push to Staging | |
if: needs.release.outputs.version != 'none' | |
shell: bash | |
run: | | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/api:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/batch-agentschapzorgengezondheidftpdump:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/batch-vlaanderenbe:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/projections-elasticsearch:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/projections-delegations:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/projections-reporting:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/kbo-mutations:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/ui:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/rebuilder:$SEMVER | |
env: | |
BUILD_DOCKER_REGISTRY: ${{ secrets.VBR_BUILD_DOCKER_REGISTRY }} | |
SEMVER: ${{ needs.release.outputs.version }} | |
WORKSPACE: ${{ github.workspace }} | |
push_images_to_staging-new: | |
if: needs.release.outputs.version != 'none' | |
needs: [ release ] | |
name: Push images to Staging | |
runs-on: ubuntu-latest | |
steps: | |
- name: debug_output | |
shell: bash | |
run: | | |
echo needs.release.outputs.version: ${{ needs.release.outputs.version }} | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
- name: Configure AWS credentials (Staging) | |
if: needs.release.outputs.version != 'none' | |
uses: aws-actions/configure-aws-credentials@v1 | |
with: | |
aws-access-key-id: ${{ secrets.VBR_AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.VBR_AWS_SECRET_ACCESS_KEY }} | |
aws-region: ${{ secrets.VBR_AWS_REGION }} | |
- name: Login to Amazon ECR (Staging) | |
if: needs.release.outputs.version != 'none' | |
uses: aws-actions/[email protected] | |
- name: Download api artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: api | |
path: ~/ | |
- name: Load Api image | |
shell: bash | |
run: docker image load -i ~/api.tar | |
- name: Download batch-agentschapzorgengezondheidftpdump artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: batch-agentschapzorgengezondheidftpdump | |
path: ~/ | |
- name: Load batch-agentschapzorgengezondheidftpdump image | |
shell: bash | |
run: docker image load -i ~/batch-agentschapzorgengezondheidftpdump.tar | |
- name: Download batch-vlaanderenbe artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: batch-vlaanderenbe | |
path: ~/ | |
- name: Load batch-vlaanderenbe image | |
shell: bash | |
run: docker image load -i ~/batch-vlaanderenbe.tar | |
- name: Download projections-elasticsearch artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-elasticsearch | |
path: ~/ | |
- name: Load projections-elasticsearch image | |
shell: bash | |
run: docker image load -i ~/projections-elasticsearch.tar | |
- name: Download projections-delegations artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-delegations | |
path: ~/ | |
- name: Load projections-delegations image | |
shell: bash | |
run: docker image load -i ~/projections-delegations.tar | |
- name: Download projections-reporting artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-reporting | |
path: ~/ | |
- name: Load projections-reporting image | |
shell: bash | |
run: docker image load -i ~/projections-reporting.tar | |
- name: Download kbo-mutations artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: kbo-mutations | |
path: ~/ | |
- name: Load kbo-mutations image | |
shell: bash | |
run: docker image load -i ~/kbo-mutations.tar | |
- name: Download ui artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: ui | |
path: ~/ | |
- name: Load ui image | |
shell: bash | |
run: docker image load -i ~/ui.tar | |
- name: Download rebuilder artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: rebuilder | |
path: ~/ | |
- name: Load rebuilder image | |
shell: bash | |
run: docker image load -i ~/rebuilder.tar | |
- name: Log in to the Container registry | |
uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Push to Staging New | |
if: needs.release.outputs.version != 'none' | |
shell: bash | |
run: | | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/api:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/batch-agentschapzorgengezondheidftpdump:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/batch-vlaanderenbe:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/projections-elasticsearch:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/projections-delegations:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/projections-reporting:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/kbo-mutations:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/ui:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY/organisation-registry/rebuilder:$SEMVER | |
env: | |
BUILD_DOCKER_REGISTRY: ${{ secrets.VBR_BUILD_DOCKER_REGISTRY }} | |
SEMVER: ${{ needs.release.outputs.version }} | |
WORKSPACE: ${{ github.workspace }} | |
push_images_to_devops: | |
if: needs.release.outputs.version != 'none' | |
needs: [ release ] | |
name: Push images to DevOps | |
runs-on: ubuntu-latest | |
steps: | |
- name: debug_output | |
shell: bash | |
run: | | |
echo needs.release.outputs.version: ${{ needs.release.outputs.version }} | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
- name: Download api artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: api | |
path: ~/ | |
- name: Load Api image | |
shell: bash | |
run: docker image load -i ~/api.tar | |
- name: Download batch-agentschapzorgengezondheidftpdump artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: batch-agentschapzorgengezondheidftpdump | |
path: ~/ | |
- name: Load batch-agentschapzorgengezondheidftpdump image | |
shell: bash | |
run: docker image load -i ~/batch-agentschapzorgengezondheidftpdump.tar | |
- name: Download batch-vlaanderenbe artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: batch-vlaanderenbe | |
path: ~/ | |
- name: Load batch-vlaanderenbe image | |
shell: bash | |
run: docker image load -i ~/batch-vlaanderenbe.tar | |
- name: Download projections-elasticsearch artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-elasticsearch | |
path: ~/ | |
- name: Load projections-elasticsearch image | |
shell: bash | |
run: docker image load -i ~/projections-elasticsearch.tar | |
- name: Download projections-delegations artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-delegations | |
path: ~/ | |
- name: Load projections-delegations image | |
shell: bash | |
run: docker image load -i ~/projections-delegations.tar | |
- name: Download projections-reporting artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: projections-reporting | |
path: ~/ | |
- name: Load projections-reporting image | |
shell: bash | |
run: docker image load -i ~/projections-reporting.tar | |
- name: Download kbo-mutations artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: kbo-mutations | |
path: ~/ | |
- name: Load kbo-mutations image | |
shell: bash | |
run: docker image load -i ~/kbo-mutations.tar | |
- name: Download ui artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: ui | |
path: ~/ | |
- name: Load ui image | |
shell: bash | |
run: docker image load -i ~/ui.tar | |
- name: Download rebuilder artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: rebuilder | |
path: ~/ | |
- name: Load rebuilder image | |
shell: bash | |
run: docker image load -i ~/rebuilder.tar | |
- name: Configure AWS credentials (DevOps) | |
if: needs.release.outputs.version != 'none' | |
uses: aws-actions/[email protected] | |
with: | |
aws-access-key-id: ${{ secrets.VBR_AWS_ACCESS_KEY_ID_DEVOPS }} | |
aws-secret-access-key: ${{ secrets.VBR_AWS_SECRET_ACCESS_KEY_DEVOPS }} | |
aws-region: ${{ secrets.VBR_AWS_REGION_PRD }} | |
- name: Login to Amazon ECR (DevOps) | |
if: needs.release.outputs.version != 'none' | |
uses: aws-actions/amazon-ecr-login@v2 | |
- name: Push to ECR (DevOps) | |
if: needs.release.outputs.version != 'none' | |
shell: bash | |
run: | | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/api:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/api:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/api:$SEMVER | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/batch-agentschapzorgengezondheidftpdump:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/batch-agentschapzorgengezondheidftpdump:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/batch-agentschapzorgengezondheidftpdump:$SEMVER | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/batch-vlaanderenbe:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/batch-vlaanderenbe:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/batch-vlaanderenbe:$SEMVER | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/projections-elasticsearch:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/projections-elasticsearch:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/projections-elasticsearch:$SEMVER | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/projections-delegations:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/projections-delegations:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/projections-delegations:$SEMVER | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/projections-reporting:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/projections-reporting:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/projections-reporting:$SEMVER | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/kbo-mutations:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/kbo-mutations:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/kbo-mutations:$SEMVER | |
docker tag $BUILD_DOCKER_REGISTRY/organisation-registry/ui:$SEMVER $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/ui:$SEMVER | |
docker push $BUILD_DOCKER_REGISTRY_PRD/organisation-registry/ui:$SEMVER | |
env: | |
BUILD_DOCKER_REGISTRY: ${{ secrets.VBR_BUILD_DOCKER_REGISTRY }} | |
BUILD_DOCKER_REGISTRY_PRD: ${{ secrets.VBR_DEVOPS_DOCKER_REGISTRY }} | |
SEMVER: ${{ needs.release.outputs.version }} | |
WORKSPACE: ${{ github.workspace }} | |
deploy_staging: | |
needs: | |
- release | |
- push_images_to_staging | |
name: Deploy to Staging | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
services: | |
[ | |
'organisation-registry-api', | |
'organisation-registry-delegations', | |
'organisation-registry-elasticsearch', | |
'organisation-registry-kbomutations', | |
'organisation-registry-reporting', | |
'organisation-registry-ui', | |
'organisation-registry-vlaanderenbe', | |
'organisation-registry-zorgengezondheid', | |
'organisation-registry-rebuilder', | |
] | |
steps: | |
- name: debug_output | |
shell: bash | |
run: | | |
echo ${{ needs.build.outputs.version }} | |
- name: CD | |
env: | |
BUILD_URL: ${{ secrets.VBR_AWS_BUILD_API }}/${{matrix.services}} | |
STATUS_URL: ${{ secrets.VBR_AWS_BUILD_STATUS_API }}/${{matrix.services}} | |
uses: informatievlaanderen/awscurl-polling-action/polling-action@main | |
with: | |
environment: stg | |
version: ${{ needs.release.outputs.version }} | |
status-url: $STATUS_URL | |
deploy-url: $BUILD_URL | |
access-key: ${{ secrets.VBR_AWS_BUILD_USER_ACCESS_KEY_ID }} | |
secret-key: ${{ secrets.VBR_AWS_BUILD_USER_SECRET_ACCESS_KEY }} | |
region: eu-west-1 | |
interval: 2 | |
- name: output | |
shell: bash | |
run: | | |
echo build-uuid: ${{ steps.awscurl-polling-action.outputs.build-uuid }} | |
echo Status: ${{ steps.awscurl-polling-action.outputs.status }} | |
echo ${{ steps.awscurl-polling-action.outputs.final-message }} | |
deploy_staging-new: | |
needs: | |
- release | |
- push_images_to_staging | |
name: Deploy to Staging | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
services: | |
[ | |
'organisation-registry-api', | |
'organisation-registry-delegations', | |
'organisation-registry-elasticsearch', | |
'organisation-registry-kbomutations', | |
'organisation-registry-reporting', | |
'organisation-registry-ui', | |
'organisation-registry-vlaanderenbe', | |
'organisation-registry-zorgengezondheid', | |
'organisation-registry-rebuilder', | |
] | |
steps: | |
- name: debug_output | |
shell: bash | |
run: | | |
echo ${{ needs.build.outputs.version }} | |
- name: CD | |
env: | |
BUILD_URL: ${{ secrets.VBR_AWS_BUILD_API }}/${{matrix.services}} | |
STATUS_URL: ${{ secrets.VBR_AWS_BUILD_STATUS_API }}/${{matrix.services}} | |
uses: informatievlaanderen/awscurl-polling-action/polling-action@main | |
with: | |
environment: stg | |
version: ${{ needs.release.outputs.version }} | |
status-url: $STATUS_URL | |
deploy-url: $BUILD_URL | |
access-key: ${{ secrets.VBR_AWS_BUILD_USER_ACCESS_KEY_ID }} | |
secret-key: ${{ secrets.VBR_AWS_BUILD_USER_SECRET_ACCESS_KEY }} | |
region: eu-west-1 | |
interval: 2 | |
- name: output | |
shell: bash | |
run: | | |
echo build-uuid: ${{ steps.awscurl-polling-action.outputs.build-uuid }} | |
echo Status: ${{ steps.awscurl-polling-action.outputs.status }} | |
echo ${{ steps.awscurl-polling-action.outputs.final-message }} | |
# - name: Publish to NuGet | |
# shell: bash | |
# run: | | |
# node packages/Be.Vlaanderen.Basisregisters.Build.Pipeline/Content/ci-nuget.js dist/nuget/$LIBNAME.Api.$SEMVER.nupkg | |
# env: | |
# LIBNAME: Be.Vlaanderen.Basisregisters.OrganisationRegistry | |
# SEMVER: ${{ needs.release.outputs.version }} | |
# NUGET_HOST: ${{ secrets.NUGET_HOST }} | |
# NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }} |