You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by pp...@apache.org on 2020/08/25 20:08:03 UTC

[camel-quarkus] branch master updated: Fix #1602 Speed up the CI

This is an automated email from the ASF dual-hosted git repository.

ppalaga pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git


The following commit(s) were added to refs/heads/master by this push:
     new 76d4775  Fix #1602 Speed up the CI
76d4775 is described below

commit 76d4775ba8ea59e5ea084f010ab22bc307af21af
Author: Peter Palaga <pp...@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 1e2f170..d355556 100644
--- a/.github/workflows/ci-build.yaml
+++ b/.github/workflows/ci-build.yaml
@@ -90,10 +90,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: |
@@ -117,13 +116,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:
@@ -151,14 +150,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}}
@@ -220,6 +306,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[*]}"
@@ -228,6 +315,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