This is an automated email from the ASF dual-hosted git repository. ppalaga pushed a commit to branch 1.0.x in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit 92e5177380bbc241e65dfd7b2c7ddb28673d2f4f Author: Peter Palaga <ppal...@redhat.com> AuthorDate: Tue Aug 25 15:47:36 2020 +0200 Fix #1602 Speed up the CI --- .github/workflows/ci-build.yaml | 156 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 146 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci-build.yaml b/.github/workflows/ci-build.yaml index a79b350..a0f2c034 100644 --- a/.github/workflows/ci-build.yaml +++ b/.github/workflows/ci-build.yaml @@ -88,10 +88,9 @@ jobs: && ./mvnw -B clean install -DskipTests -DskipITs - name: Checkout uses: actions/checkout@v2 - - name: Build Project + - name: mvn clean install -DskipTests run: | - ./mvnw -V -ntp ${BRANCH_OPTIONS} \ - clean install + ./mvnw -V -ntp ${BRANCH_OPTIONS} clean install -DskipTests -Dquarkus.build.skip - name: Fail if there are uncommitted changes shell: bash run: | @@ -115,13 +114,13 @@ jobs: CATEGORIES=$(cat tooling/scripts/test-categories.yaml | yq r - --printMode p "*." | sed "s/\(.*\)/'\1'/" | sed ':a;N;$!ba;s/\n/,/g') echo "::set-output name=matrix::{'category': [${CATEGORIES}]}" - build-alternative-jvm: + functional-extension-tests: runs-on: ubuntu-latest needs: build strategy: fail-fast: false matrix: - java: [ '8' , '14' ] + java: [ '11' ] env: MAVEN_OPTS: -Xmx3000m steps: @@ -149,14 +148,101 @@ jobs: df -h / tar -xzf ../maven-repo.tgz -C ~ df -h / - - name: Build on ${{ matrix.java }} + - name: cd extensions-core && mvn test run: | - ./mvnw -V -ntp ${BRANCH_OPTIONS} \ - clean verify - - name: Fail if there are uncommitted changes + cd extensions-core + ../mvnw -V -ntp ${BRANCH_OPTIONS} \ + -Dformatter.skip -Dimpsort.skip -Denforce=false -Dcamel-quarkus.update-extension-doc-page.skip \ + test + - name: cd extensions && mvn test + run: | + cd extensions + ../mvnw -V -ntp ${BRANCH_OPTIONS} \ + -Dformatter.skip -Dimpsort.skip -Denforce=false -Dcamel-quarkus.update-extension-doc-page.skip \ + test + + extensions-jvm-tests: + runs-on: ubuntu-latest + needs: build + strategy: + fail-fast: false + matrix: + java: [ '8' , '11', '14' ] + env: + MAVEN_OPTS: -Xmx3000m + steps: + - name: Setup apache-snapshots profile + if: github.ref == 'refs/heads/camel-master' || github.base_ref == 'camel-master' + run: | + echo '::set-env name=BRANCH_OPTIONS::-Papache-snapshots' + - name: Setup oss-snapshots profile + if: github.ref == 'refs/heads/quarkus-master' || github.base_ref == 'quarkus-master' + run: | + echo '::set-env name=BRANCH_OPTIONS::-Poss-snapshots -Dquarkus.version=999-SNAPSHOT' + - uses: actions/checkout@v2 + - name: Set up JDK ${{ matrix.java }} + uses: AdoptOpenJDK/install-jdk@v1 + with: + version: ${{ matrix.java }} + - name: Download Maven Repo + uses: actions/download-artifact@v1 + with: + name: maven-repo + path: .. + - name: Extract Maven Repo shell: bash run: | - [[ -z $(git status --porcelain) ]] || { echo 'There are uncommitted changes'; git status; exit 1; } + df -h / + tar -xzf ../maven-repo.tgz -C ~ + df -h / + - name: cd extensions-jvm && mvn clean test + run: | + cd extensions-jvm + ../mvnw -V -ntp ${BRANCH_OPTIONS} \ + -Dformatter.skip -Dimpsort.skip -Denforce=false \ + clean test + + integration-tests-alternative-jvm: + runs-on: ubuntu-latest + needs: build + if: github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'JVM') + strategy: + fail-fast: false + matrix: + java: [ '8' , '14' ] + env: + MAVEN_OPTS: -Xmx3000m + steps: + - name: Setup apache-snapshots profile + if: github.ref == 'refs/heads/camel-master' || github.base_ref == 'camel-master' + run: | + echo '::set-env name=BRANCH_OPTIONS::-Papache-snapshots' + - name: Setup oss-snapshots profile + if: github.ref == 'refs/heads/quarkus-master' || github.base_ref == 'quarkus-master' + run: | + echo '::set-env name=BRANCH_OPTIONS::-Poss-snapshots -Dquarkus.version=999-SNAPSHOT' + - uses: actions/checkout@v2 + - name: Set up JDK ${{ matrix.java }} + uses: AdoptOpenJDK/install-jdk@v1 + with: + version: ${{ matrix.java }} + - name: Download Maven Repo + uses: actions/download-artifact@v1 + with: + name: maven-repo + path: .. + - name: Extract Maven Repo + shell: bash + run: | + df -h / + tar -xzf ../maven-repo.tgz -C ~ + df -h / + - name: cd integration-tests && mvn clean verify + run: | + cd integration-tests + ../mvnw -V -ntp ${BRANCH_OPTIONS} \ + -Dformatter.skip -Dimpsort.skip -Denforce=false \ + clean verify native-tests: name: Native Tests - ${{matrix.category}} @@ -218,6 +304,7 @@ jobs: do modules+=("integration-tests/$i"); done IFS=, eval ./mvnw -V -ntp ${BRANCH_OPTIONS} clean verify \ + -Dformatter.skip -Dimpsort.skip -Denforce=false \ -Dnative \ -Ddocker \ -pl "${modules[*]}" @@ -226,6 +313,55 @@ jobs: run: | [[ -z $(git status --porcelain) ]] || { echo 'There are uncommitted changes'; git status; exit 1; } + examples-tests: + needs: build + runs-on: ubuntu-latest + if: github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'JVM') + strategy: + fail-fast: false + matrix: + java: [ '8' , '11', '14' ] + steps: + - name: Setup apache-snapshots profile + if: github.ref == 'refs/heads/camel-master' || github.base_ref == 'camel-master' + run: | + echo '::set-env name=BRANCH_OPTIONS::-Papache-snapshots' + - name: Setup oss-snapshots profile + if: github.ref == 'refs/heads/quarkus-master' || github.base_ref == 'quarkus-master' + run: | + echo '::set-env name=BRANCH_OPTIONS::-Poss-snapshots -Dquarkus.version=999-SNAPSHOT' + - name: Activate native tests on Java 11 + if: matrix.java == '11' + run: | + echo '::set-env name=MVN_TARGETS::-Pnative,docker clean verify' + - name: Do not activate native tests on Java non-11 + if: matrix.java != '11' + run: | + echo '::set-env name=MVN_TARGETS::clean test' + - name: Checkout + uses: actions/checkout@v2 + - name: Set up JDK 11 + uses: AdoptOpenJDK/install-jdk@v1 + with: + version: ${{ matrix.java }} + - name: Download Maven Repo + uses: actions/download-artifact@v1 + with: + name: maven-repo + path: .. + - name: Extract Maven Repo + shell: bash + run: | + df -h / + tar -xzf ../maven-repo.tgz -C ~ + df -h / + - name: cd examples && mvn clean test/verify + run: | + cd examples + ../mvnw -V -ntp ${BRANCH_OPTIONS} \ + -Dformatter.skip -Dimpsort.skip -Denforce=false \ + ${MVN_TARGETS} + # memoryhogs: # runs-on: ubuntu-latest # needs: build