Skip to content

Merge pull request #79 from qa-guru/friends_refactoring #7

Merge pull request #79 from qa-guru/friends_refactoring

Merge pull request #79 from qa-guru/friends_refactoring #7

name: userdata_deploy_prod
on:
push:
branches:
- master
paths:
- 'niffler-userdata/**'
jobs:
checkout:
runs-on: prod-runner
steps:
- uses: actions/checkout@v3
deploy:
runs-on: prod-runner
needs: checkout
steps:
- name: Set front version
uses: falti/[email protected]
id: dotenv
- name: Retrieve niffler-auth version
run: |
echo "::set-output name=version::$(bash ./gradlew :niffler-auth:printVersion -q)"
id: auth_version
- name: Retrieve niffler-currency version
run: |
echo "::set-output name=version::$(bash ./gradlew :niffler-currency:printVersion -q)"
id: currency_version
- name: Retrieve niffler-gateway version
run: |
echo "::set-output name=version::$(bash ./gradlew :niffler-gateway:printVersion -q)"
id: gateway_version
- name: Retrieve niffler-spend version
run: |
echo "::set-output name=version::$(bash ./gradlew :niffler-spend:printVersion -q)"
id: spend_version
- name: Retrieve niffler-userdata version
run: |
echo "::set-output name=version::$(bash ./gradlew :niffler-userdata:printVersion -q)"
id: userdata_version
- name: Push required props to GITHUB_ENV
run: |
echo "PROFILE=prod" >> $GITHUB_ENV
echo "PREFIX=${{ vars.DOCKER_HUB_ACC }}" >> $GITHUB_ENV
echo "VAULT_TOKEN=${{ secrets.VAULT_TOKEN }}" >> $GITHUB_ENV
echo "AUTH_VER=${{ steps.auth_version.outputs.version }}" >> $GITHUB_ENV
echo "CURRENCY_VER=${{ steps.currency_version.outputs.version }}" >> $GITHUB_ENV
echo "GATEWAY_VER=${{ steps.gateway_version.outputs.version }}" >> $GITHUB_ENV
echo "SPEND_VER=${{ steps.spend_version.outputs.version }}" >> $GITHUB_ENV
echo "USERDATA_VER=${{ steps.userdata_version.outputs.version }}" >> $GITHUB_ENV
echo "FRONT_VER=${{ steps.dotenv.outputs.front_version }}" >> $GITHUB_ENV
echo "FRONT_IMAGE=niffler-frontend" >> $GITHUB_ENV
- name: deploy
working-directory: ./
run: |
pwd
docker login --username ${{ vars.DOCKER_HUB_ACC }} --password "${{ secrets.DOCKER_HUB_PASSWORD }}"
echo "### niffler-auth version will be used: ${{ env.AUTH_VER }}"
echo "### niffler-currency version will be used: ${{ env.CURRENCY_VER }}"
echo "### niffler-gateway version will be used: ${{ env.GATEWAY_VER }}"
echo "### niffler-spend version will be used: ${{ env.SPEND_VER }}"
echo "### niffler-userdata version will be used: ${{ env.USERDATA_VER }}"
echo "### niffler-front version will be used: ${{ env.PREFIX }}/${{ env.FRONT_IMAGE }}-${{ env.PROFILE }}:${{ env.FRONT_VER }}"
bash ./gradlew :niffler-userdata:jib -Pskipjaxb -x :niffler-e-2-e-tests:test
docker-compose -f docker-compose.ci.yml pull userdata.niffler.dc
docker-compose -f docker-compose.ci.yml stop userdata.niffler.dc && docker-compose -f docker-compose.ci.yml up -d --no-deps userdata.niffler.dc
docker system prune -a -f
echo "Done!"