NIFI-13160 Support Skipping Frontend Unit Tests

This closes #8757

- Added frontend.skipTests property to nifi-web-frontend Maven configuration with default value of false
- Configured lint and unit-test execution goals to depend on frontend.skipTests
- Added paths-filter GitHub Actions step for conditional enabling of frontend tests

Signed-off-by: Joseph Witt <joewitt@apache.org>
This commit is contained in:
exceptionfactory 2024-05-06 16:24:08 -05:00 committed by Joseph Witt
parent 52e257e16c
commit 6b8c19c761
No known key found for this signature in database
GPG Key ID: 9093BF854F811A1A
2 changed files with 29 additions and 0 deletions

View File

@ -77,6 +77,7 @@ concurrency:
permissions:
security-events: write
contents: read
pull-requests: read
jobs:
static-analysis:
@ -158,10 +159,18 @@ jobs:
distribution: 'corretto'
java-version: '21'
cache: 'maven'
- name: Evaluate Changed Paths
uses: dorny/paths-filter@v3
id: changes
with:
filters: |
frontend:
- 'nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/**'
- name: Maven Compile
env:
MAVEN_OPTS: >-
${{ env.COMPILE_MAVEN_OPTS }}
-Dfrontend.skipTests=${{ !steps.changes.outputs.frontend }}
run: >
${{ env.MAVEN_COMMAND }}
${{ env.MAVEN_COMPILE_COMMAND }}
@ -169,6 +178,7 @@ jobs:
env:
MAVEN_OPTS: >-
${{ env.DEFAULT_MAVEN_OPTS }}
-Dfrontend.skipTests=${{ !steps.changes.outputs.frontend }}
run: >
${{ env.MAVEN_COMMAND }}
jacoco:prepare-agent
@ -220,10 +230,18 @@ jobs:
distribution: 'zulu'
java-version: '21'
cache: 'maven'
- name: Evaluate Changed Paths
uses: dorny/paths-filter@v3
id: changes
with:
filters: |
frontend:
- 'nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/**'
- name: Maven Compile
env:
MAVEN_OPTS: >-
${{ env.COMPILE_MAVEN_OPTS }}
-Dfrontend.skipTests=${{ !steps.changes.outputs.frontend }}
run: >
${{ env.MAVEN_COMMAND }}
${{ env.MAVEN_COMPILE_COMMAND }}
@ -287,10 +305,18 @@ jobs:
distribution: 'zulu'
java-version: '21'
cache: 'maven'
- name: Evaluate Changed Paths
uses: dorny/paths-filter@v3
id: changes
with:
filters: |
frontend:
- 'nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/**'
- name: Maven Compile
env:
MAVEN_OPTS: >-
${{ env.COMPILE_MAVEN_OPTS }}
-Dfrontend.skipTests=${{ !steps.changes.outputs.frontend }}
run: >
${{ env.MAVEN_COMMAND_WINDOWS }}
${{ env.MAVEN_COMPILE_COMMAND }}

View File

@ -36,6 +36,7 @@
Ex: 'purple' // will overwrite the 'material' theme file with the 'purple' theme.
-->
<frontend.theme>material</frontend.theme>
<frontend.skipTests>true</frontend.skipTests>
</properties>
<build>
@ -160,6 +161,7 @@
<configuration>
<arguments>nx lint</arguments>
<workingDirectory>${frontend.working.dir}</workingDirectory>
<skip>${frontend.skipTests}</skip>
</configuration>
</execution>
@ -175,6 +177,7 @@
<configuration>
<arguments>nx test --maxWorkers=2</arguments>
<workingDirectory>${frontend.working.dir}</workingDirectory>
<skip>${frontend.skipTests}</skip>
</configuration>
</execution>