|
@@ -1,105 +0,0 @@
|
|
|
-name: "Infra: Feature Testing: Init env"
|
|
|
-on:
|
|
|
- workflow_dispatch:
|
|
|
-
|
|
|
- pull_request:
|
|
|
- types: ['labeled']
|
|
|
-jobs:
|
|
|
- build:
|
|
|
- if: ${{ github.event.label.name == 'status/feature_testing' || github.event.label.name == 'status/feature_testing_public' }}
|
|
|
- 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='pr${{ github.event.pull_request.number }}'
|
|
|
- echo "tag=${tag}" >> $GITHUB_OUTPUT
|
|
|
- env:
|
|
|
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
- - 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: eu-central-1
|
|
|
- - name: Login to Amazon ECR
|
|
|
- id: login-ecr
|
|
|
- uses: aws-actions/amazon-ecr-login@v1
|
|
|
- - 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: 297478128798.dkr.ecr.eu-central-1.amazonaws.com/kafka-ui:${{ 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
|
|
|
- outputs:
|
|
|
- tag: ${{ steps.extract_branch.outputs.tag }}
|
|
|
- make-branch-env:
|
|
|
- needs: build
|
|
|
- runs-on: ubuntu-latest
|
|
|
- steps:
|
|
|
- - name: clone
|
|
|
- run: |
|
|
|
- git clone https://infra-tech:${{ secrets.INFRA_USER_ACCESS_TOKEN }}@github.com/provectus/kafka-ui-infra.git --branch envs
|
|
|
- - name: create deployment
|
|
|
- run: |
|
|
|
- cd kafka-ui-infra/aws-infrastructure4eks/argocd/scripts
|
|
|
- echo "Branch:${{ needs.build.outputs.tag }}"
|
|
|
- ./kafka-ui-deployment-from-branch.sh ${{ needs.build.outputs.tag }} ${{ github.event.label.name }} ${{ secrets.FEATURE_TESTING_UI_PASSWORD }}
|
|
|
- git config --global user.email "infra-tech@provectus.com"
|
|
|
- git config --global user.name "infra-tech"
|
|
|
- git add ../kafka-ui-from-branch/
|
|
|
- git commit -m "added env:${{ needs.build.outputs.deploy }}" && git push || true
|
|
|
-
|
|
|
- - name: update status check for private deployment
|
|
|
- if: ${{ github.event.label.name == 'status/feature_testing' }}
|
|
|
- uses: Sibz/github-status-action@v1.1.6
|
|
|
- with:
|
|
|
- authToken: ${{secrets.GITHUB_TOKEN}}
|
|
|
- context: "Click Details button to open custom deployment page"
|
|
|
- state: "success"
|
|
|
- sha: ${{ github.event.pull_request.head.sha || github.sha }}
|
|
|
- target_url: "http://${{ needs.build.outputs.tag }}.internal.kafka-ui.provectus.io"
|
|
|
-
|
|
|
- - name: update status check for public deployment
|
|
|
- if: ${{ github.event.label.name == 'status/feature_testing_public' }}
|
|
|
- uses: Sibz/github-status-action@v1.1.6
|
|
|
- with:
|
|
|
- authToken: ${{secrets.GITHUB_TOKEN}}
|
|
|
- context: "Click Details button to open custom deployment page"
|
|
|
- state: "success"
|
|
|
- sha: ${{ github.event.pull_request.head.sha || github.sha }}
|
|
|
- target_url: "http://${{ needs.build.outputs.tag }}.internal.kafka-ui.provectus.io"
|