1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- name: "Infra: Image Testing: Deploy"
- on:
- workflow_dispatch:
- pull_request:
- types: ['labeled']
- jobs:
- build:
- if: ${{ github.event.label.name == 'status/image_testing' }}
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
- with:
- ref: ${{ github.event.pull_request.head.sha }}
- - name: get branch name
- id: extract_branch
- run: |
- tag='${{ github.event.pull_request.number }}'
- echo "tag=${tag}" >> $GITHUB_OUTPUT
- - name: Set up JDK
- uses: actions/setup-java@v3
- with:
- java-version: '17'
- distribution: 'zulu'
- cache: 'maven'
- - name: Build
- id: build
- run: |
- ./mvnw -B -ntp versions:set -DnewVersion=$GITHUB_SHA
- ./mvnw -B -V -ntp clean package -Pprod -DskipTests
- export VERSION=$(./mvnw -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec)
- echo "version=${VERSION}" >> $GITHUB_OUTPUT
- - name: Set up QEMU
- uses: docker/setup-qemu-action@v2
- - name: Set up Docker Buildx
- id: buildx
- uses: docker/setup-buildx-action@v2
- - name: Cache Docker layers
- uses: actions/cache@v3
- with:
- path: /tmp/.buildx-cache
- key: ${{ runner.os }}-buildx-${{ github.sha }}
- restore-keys: |
- ${{ runner.os }}-buildx-
- - name: Configure AWS credentials for Kafka-UI account
- uses: aws-actions/configure-aws-credentials@v3
- with:
- aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
- aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- aws-region: us-east-1
- - name: Login to Amazon ECR
- id: login-ecr
- uses: aws-actions/amazon-ecr-login@v1
- with:
- registry-type: 'public'
- - name: Build and push
- id: docker_build_and_push
- uses: docker/build-push-action@v4
- with:
- builder: ${{ steps.buildx.outputs.name }}
- context: kafka-ui-api
- push: true
- tags: public.ecr.aws/provectus/kafka-ui-custom-build:${{ steps.extract_branch.outputs.tag }}
- build-args: |
- JAR_FILE=kafka-ui-api-${{ steps.build.outputs.version }}.jar
- cache-from: type=local,src=/tmp/.buildx-cache
- cache-to: type=local,dest=/tmp/.buildx-cache
- - name: make comment with private deployment link
- uses: peter-evans/create-or-update-comment@v3
- with:
- issue-number: ${{ github.event.pull_request.number }}
- body: |
- Image published at public.ecr.aws/provectus/kafka-ui-custom-build:${{ steps.extract_branch.outputs.tag }}
- outputs:
- tag: ${{ steps.extract_branch.outputs.tag }}
|