name: Deploy frontend to production on: workflow_dispatch: inputs: frontend_image: description: "Frontend image to deploy" required: false type: string jobs: deploy-backend: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: ssh-key: ${{ secrets.DEPLOYMENT_KEY }} - id: get_beta_image if: ${{ inputs.frontend_image == '' }} uses: mikefarah/yq@v4 with: cmd: yq '.spec.template.spec.containers[0].image' ./kemkas-beta/kemkas-fe-deployment.yaml - run: | if [ -n "${{ inputs.frontend_image }}" ]; then echo "Image from INPUT" echo "IMAGE=${{ inputs.frontend_image }}" >> $GITHUB_ENV exit 0; fi if [ -n "${{ steps.get_beta_image.outputs.result }}" ]; then echo "Image from BETA" echo "IMAGE=${{ steps.get_beta_image.outputs.result }}" >> $GITHUB_ENV exit 0; fi echo "Image NOT SET !!!"; exit 1; - run: echo "deployment image will be set to ${{ env.IMAGE }}" - uses: mikefarah/yq@v4 with: cmd: yq -i '.spec.template.spec.containers[0].image = "${{ env.IMAGE }}"' ./kemkas/kemkas-fe-deployment.yaml - run: | git config --global user.name "Prod Frontend Deployment Bot" git config --global user.email "prod-fe-deployment-bot@kemkas.hu" git commit -a -m "prod deploy ${{ env.IMAGE }}" git push