2080: thread context was already set fix #2117
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will build a Java project with Gradle | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle | |
name: Run automated tests | |
on: | |
pull_request: | |
branches: [ master, '*-develop', 'mainline*' ] | |
jobs: | |
build-linux: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
cache: gradle | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.gradle/caches | |
~/.gradle/wrapper | |
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} | |
restore-keys: | | |
${{ runner.os }}-gradle- | |
- name: Gradle wrapper | |
run: gradle wrapper | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Run automated tests | |
run: ./gradlew test -PexcludeTests="**/userInterface/**" --no-daemon | |
build-windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
cache: gradle | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.gradle/caches | |
~/.gradle/wrapper | |
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} | |
restore-keys: | | |
${{ runner.os }}-gradle- | |
- name: Gradle wrapper | |
run: gradle wrapper | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Run automated tests | |
run: ./gradlew test -PexcludeTests="**/userInterface/**" --no-daemon | |
build-macos: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
cache: gradle | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.gradle/caches | |
~/.gradle/wrapper | |
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} | |
restore-keys: | | |
${{ runner.os }}-gradle- | |
- name: Gradle wrapper | |
run: gradle wrapper | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Run automated tests | |
run: ./gradlew test -PexcludeTests="**/userInterface/**" --no-daemon | |
static-tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
cache: gradle | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.gradle/caches | |
~/.gradle/wrapper | |
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} | |
restore-keys: | | |
${{ runner.os }}-gradle- | |
- name: Gradle wrapper | |
run: gradle wrapper | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- id: file_changes | |
uses: trilom/[email protected] | |
- name: Filter Java Files | |
id: filter_java_files | |
run: | | |
# Get modified and added files | |
MODIFIED_FILES=${{ steps.file_changes.outputs.files_modified }} | |
ADDED_FILES=${{ steps.file_changes.outputs.files_added }} | |
echo "Modified files: $MODIFIED_FILES" | |
echo "Added files: $ADDED_FILES" | |
# Simple approach using shell commands to filter Java files | |
# Remove brackets and quotes from the JSON arrays | |
MODIFIED_FILES=$(echo "$MODIFIED_FILES" | sed 's/^\[//;s/\]$//;s/"//g;s/,/ /g') | |
ADDED_FILES=$(echo "$ADDED_FILES" | sed 's/^\[//;s/\]$//;s/"//g;s/,/ /g') | |
# Combine the files and filter for .java files | |
ALL_FILES="$MODIFIED_FILES $ADDED_FILES" | |
JAVA_FILES="" | |
# If there are files to process | |
if [ ! -z "$ALL_FILES" ]; then | |
# Filter for Java files and format as JSON array | |
for file in $ALL_FILES; do | |
if [[ "$file" == *.java ]]; then | |
if [ -z "$JAVA_FILES" ]; then | |
JAVA_FILES="\"$file\"" | |
else | |
JAVA_FILES="$JAVA_FILES,\"$file\"" | |
fi | |
fi | |
done | |
fi | |
# Create a proper JSON array | |
JAVA_FILES="[$JAVA_FILES]" | |
echo "JAVA_FILES=$JAVA_FILES" >> $GITHUB_ENV | |
echo "Filtered Java Files: $JAVA_FILES" | |
- name: Run Code Style Check | |
run: ./gradlew checkstyleCI --no-daemon | |
env: | |
MODIFIED_FILES: ${{ env.JAVA_FILES }} | |
ACTIONS_STEP_DEBUG: true | |
- name: Run PMD Quality Check | |
run: ./gradlew pmdCI --no-daemon | |
env: | |
MODIFIED_FILES: ${{ env.JAVA_FILES }} |