FE: Enhancement 4 create topic button #78
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "E2E: PR healthcheck" | |
on: | |
pull_request_target: | |
types: [ "opened", "edited", "reopened", "synchronize" ] | |
paths: | |
- "api/**" | |
- "contract/**" | |
- "frontend/**" | |
- "e2e-tests/**" | |
- "pom.xml" | |
permissions: # TODO remove when public | |
statuses: write | |
contents: read | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
token: ${{ github.token }} # TODO remove when public | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Configure AWS credentials | |
uses: aws-actions/configure-aws-credentials@v3 | |
with: | |
aws-access-key-id: ${{ secrets.S3_AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.S3_AWS_SECRET_ACCESS_KEY }} | |
aws-region: eu-central-1 | |
- name: Set up environment | |
id: set_env_values | |
run: | | |
cat "./e2e-tests/.env.ci" >> "./e2e-tests/.env" | |
- name: Pull with Docker | |
id: pull_chrome | |
run: | | |
docker pull selenoid/vnc_chrome:103.0 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'zulu' | |
cache: 'maven' | |
- name: Build with Maven | |
id: build_app | |
run: | | |
./mvnw -B -ntp versions:set -DnewVersion=${{ github.event.pull_request.head.sha }} | |
./mvnw -B -V -ntp clean install -Pprod -Dmaven.test.skip=true ${{ github.event.inputs.extraMavenOptions }} | |
- name: Compose with Docker | |
id: compose_app | |
# use the following command until #819 will be fixed | |
run: | | |
docker-compose -f e2e-tests/docker/selenoid-git.yaml up -d | |
docker-compose -f ./documentation/compose/e2e-tests.yaml up -d && until [ "$(docker exec kafbat-ui wget --spider --server-response http://localhost:8080/actuator/health 2>&1 | grep -c 'HTTP/1.1 200 OK')" == "1" ]; do echo "Waiting for kafka-ui ..." && sleep 1; done | |
- name: Run test suite | |
run: | | |
./mvnw -B -ntp versions:set -DnewVersion=${{ github.event.pull_request.head.sha }} | |
./mvnw -B -V -ntp -Dsurefire.suiteXmlFiles='src/test/resources/smoke.xml' -f 'e2e-tests' test -Pprod | |
- name: Generate allure report | |
uses: simple-elf/allure-report-action@master | |
if: always() | |
id: allure-report | |
with: | |
allure_results: ./e2e-tests/allure-results | |
gh_pages: allure-results | |
allure_report: allure-report | |
subfolder: allure-results | |
report_url: "http://kafkaui-allure-reports.s3-website.eu-central-1.amazonaws.com" | |
- uses: jakejarvis/s3-sync-action@master | |
if: always() | |
env: | |
AWS_S3_BUCKET: 'kafkaui-allure-reports' | |
AWS_REGION: 'eu-central-1' | |
SOURCE_DIR: 'allure-history/allure-results' | |
- name: Deploy report to Amazon S3 | |
if: always() | |
uses: Sibz/[email protected] | |
with: | |
authToken: ${{secrets.GITHUB_TOKEN}} | |
context: "Click Details button to open Allure report" | |
state: "success" | |
sha: ${{ github.event.pull_request.head.sha || github.sha }} | |
target_url: http://kafkaui-allure-reports.s3-website.eu-central-1.amazonaws.com/${{ github.run_number }} | |
- name: Dump docker logs on failure | |
if: failure() | |
uses: jwalton/[email protected] |