You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by kd...@apache.org on 2022/07/19 13:52:00 UTC

[nifi] branch main updated: NIFI-10249 Enabled Parallel Builds in GitHub Workflow

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

kdoran pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new 8185ad0598 NIFI-10249 Enabled Parallel Builds in GitHub Workflow
8185ad0598 is described below

commit 8185ad05986d4b2c24cb892adce0422031cb1d06
Author: exceptionfactory <ex...@apache.org>
AuthorDate: Mon Jul 18 14:15:20 2022 -0500

    NIFI-10249 Enabled Parallel Builds in GitHub Workflow
    
    - Upgraded maven-enforcer-plugin from 3.0.0 to 3.1.0
    - Upgraded maven-dependency-plugin from 3.2.0 to 3.3.0
    - Upgraded checkstyle from 9.2.1 to 9.3
    - Upgraded buildnumber-maven-plugin from 1.4 to 3.0.0
    
    This closes #6222.
    
    Signed-off-by: Kevin Doran <kd...@apache.org>
---
 .github/workflows/ci-workflow.yml | 25 ++++++++++++-------------
 pom.xml                           | 14 ++++----------
 2 files changed, 16 insertions(+), 23 deletions(-)

diff --git a/.github/workflows/ci-workflow.yml b/.github/workflows/ci-workflow.yml
index 7511137136..abf17320d4 100644
--- a/.github/workflows/ci-workflow.yml
+++ b/.github/workflows/ci-workflow.yml
@@ -33,6 +33,7 @@ env:
     -nsu
     -ntp
     -ff
+    --threads 1C
   MAVEN_BUILD_PROFILES: >-
     -P include-grpc
     -P skip-nifi-bin-assembly
@@ -57,12 +58,18 @@ jobs:
     steps:
       - name: Checkout Code
         uses: actions/checkout@v3
+      - name: Cache Maven Modules
+        uses: actions/cache@v3
+        with:
+          path: |
+            ~/.m2/repository
+          # Cache Maven modules using a cache key different from setup-java steps
+          key: ${{ runner.os }}-maven-static-analysis-${{ hashFiles('**/pom.xml') }}
       - name: Set up Java 17
         uses: actions/setup-java@v3
         with:
           distribution: 'zulu'
           java-version: '17'
-          cache: 'maven'
       - name: Maven Build
         run: >
           mvn validate
@@ -91,9 +98,7 @@ jobs:
           path: |
             ~/.npm
             **/node_modules
-          key: ${{ runner.os }}-npm16-${{ hashFiles('**/package-lock.json') }}
-          restore-keys: |
-            ${{ runner.os }}-npm16-
+          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
       - name: Set up Java 17
         uses: actions/setup-java@v3
         with:
@@ -148,9 +153,7 @@ jobs:
           path: |
             ~/.npm
             **/node_modules
-          key: ${{ runner.os }}-npm16-${{ hashFiles('**/package-lock.json') }}
-          restore-keys: |
-            ${{ runner.os }}-npm16-
+          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
       - name: Set up Java 11
         uses: actions/setup-java@v3
         with:
@@ -205,9 +208,7 @@ jobs:
           path: |
             ~/.npm
             **/node_modules
-          key: ${{ runner.os }}-npm16-${{ hashFiles('**/package-lock.json') }}
-          restore-keys: |
-            ${{ runner.os }}-npm16-
+          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
       - name: Set up Java 8
         uses: actions/setup-java@v3
         with:
@@ -268,9 +269,7 @@ jobs:
           path: |
             ${{ steps.npm-cache-directory.outputs.directory }}
             **/node_modules
-          key: ${{ runner.os }}-npm16-${{ hashFiles('**/package-lock.json') }}
-          restore-keys: |
-            ${{ runner.os }}-npm16-
+          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
       - name: Set up Java 8
         uses: actions/setup-java@v3
         with:
diff --git a/pom.xml b/pom.xml
index e94680a5d0..d390a7db1a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -709,7 +709,7 @@
                 <plugin>
                     <groupId>org.codehaus.mojo</groupId>
                     <artifactId>buildnumber-maven-plugin</artifactId>
-                    <version>1.4</version>
+                    <version>3.0.0</version>
                 </plugin>
                 <plugin>
                     <groupId>org.antlr</groupId>
@@ -724,14 +724,14 @@
                         <dependency>
                             <groupId>com.puppycrawl.tools</groupId>
                             <artifactId>checkstyle</artifactId>
-                            <version>9.2.1</version>
+                            <version>9.3</version>
                         </dependency>
                     </dependencies>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-dependency-plugin</artifactId>
-                    <version>3.2.0</version>
+                    <version>3.3.0</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.rat</groupId>
@@ -797,7 +797,7 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-enforcer-plugin</artifactId>
-                <version>3.0.0</version>
+                <version>3.1.0</version>
                 <executions>
                     <execution>
                         <id>enforce-maven-version</id>
@@ -975,12 +975,6 @@
             </build>
         </profile>
         <profile>
-            <!-- Checks style and licensing requirements. This is a good
-                idea to run for contributions and for the release process. While it would
-                be nice to run always these plugins can considerably slow the build and have
-                proven to create unstable builds in our multi-module project and when building
-                using multiple threads. The stability issues seen with Checkstyle in multi-module
-                builds include false-positives and false negatives. -->
             <id>contrib-check</id>
             <build>
                 <plugins>