Skip to content

Merge pull request #108 from qa-guru/front_minor_improvements #3

Merge pull request #108 from qa-guru/front_minor_improvements

Merge pull request #108 from qa-guru/front_minor_improvements #3

name: frontend_deploy_prod
on:
push:
branches:
- master
paths:
- '.github/workflows/niffler-ng-client-prod.yaml'
- 'niffler-ng-client/**'
jobs:
collect-versions:
uses: ./.github/workflows/versions.yml
with:
runner: niffler-prod-runner
deploy:
runs-on: niffler-prod-runner
needs: collect-versions
steps:
- 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=${{ needs.collect-versions.outputs.auth-ver }}" >> $GITHUB_ENV
echo "CURRENCY_VER=${{ needs.collect-versions.outputs.currency-ver }}" >> $GITHUB_ENV
echo "GATEWAY_VER=${{ needs.collect-versions.outputs.gateway-ver }}" >> $GITHUB_ENV
echo "SPEND_VER=${{ needs.collect-versions.outputs.spend-ver }}" >> $GITHUB_ENV
echo "USERDATA_VER=${{ needs.collect-versions.outputs.userdata-ver }}" >> $GITHUB_ENV
echo "FRONT_VER=${{ needs.collect-versions.outputs.front-ver }}" >> $GITHUB_ENV
echo "FRONT_IMAGE=niffler-ng-client" >> $GITHUB_ENV
- name: Docker login
run: |
docker login --username ${{ vars.DOCKER_HUB_ACC }} --password "${{ secrets.DOCKER_HUB_PASSWORD }}"
- name: build
working-directory: ./niffler-ng-client
run: |
pwd
IMAGE_TAG="${{ env.PREFIX }}/${{ env.FRONT_IMAGE }}-${{ env.PROFILE }}"
echo "### niffler-front version will be used: ${IMAGE_TAG}:${{ env.FRONT_VER }} ###"
docker build --build-arg NPM_COMMAND=build:prod --build-arg VERSION=${{ env.FRONT_VER }} -t ${IMAGE_TAG}:${{ env.FRONT_VER }} -t ${IMAGE_TAG}:latest .
docker push ${IMAGE_TAG}:${{ env.FRONT_VER }}
docker push ${IMAGE_TAG}:latest
- name: deploy
run: |
docker compose -f docker-compose.ci.yml pull frontend.niffler.dc
docker compose -f docker-compose.ci.yml stop frontend.niffler.dc && docker compose -f docker-compose.ci.yml up -d --no-deps frontend.niffler.dc
docker system prune -a -f
echo "Done!"