blob: 9d74ffa1d61ce870d8b415c4db2c61ac1925de7f [file] [log] [blame]
name: Integration
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v2
- name: Copy files
run: cp docker/latest/** ./
- name: Docker build
run: docker build -t apache/dubbo-admin-integration:latest .
- name: Prepare agent
run: mkdir jacoco && wget https://repo1.maven.org/maven2/org/jacoco/org.jacoco.agent/0.8.6/org.jacoco.agent-0.8.6-runtime.jar -O jacoco/jacoco.jar && wget https://repo1.maven.org/maven2/org/jacoco/org.jacoco.cli/0.8.6/org.jacoco.cli-0.8.6-nodeps.jar -O jacoco/jacoco-cli.jar
- name: Build provider and consumer image
run: ./mvnw --batch-mode --projects dubbo-admin-test --activate-profiles build-provider package && ./mvnw --batch-mode --projects dubbo-admin-test --activate-profiles build-consumer package
- name: Setup xvfb
run: sudo apt-get install xvfb ttf-wqy-zenhei -y && fc-cache -v
- name: Run integration test
run: xvfb-run --server-args="-screen 0, 1024x768x24" ./mvnw --batch-mode --projects dubbo-admin-test --activate-profiles dubbo-admin-integration-test -Ddocker.showLogs=true docker:stop docker:remove verify
- name: Save failure screenshots
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with:
name: failure-screenshots
path: dubbo-admin-test/target/screens/
- uses: actions/upload-artifact@v2
with:
name: screenshots
path: dubbo-admin-test/target/screens/
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 8
- name: Compile server project
run: ./mvnw clean package -DskipTests=true -pl dubbo-admin-server
- name: Generate report
run: java -jar jacoco/jacoco-cli.jar report jacoco/jacoco.exec --classfiles dubbo-admin-server/target/classes/ --sourcefiles dubbo-admin-server/src --xml jacoco/jacoco.xml
- name: Upload coverage to codecov
uses: codecov/codecov-action@v1
with:
flags: integration
directory: ./jacoco