Update dependency org.apache.maven:maven-core to v3.9.9 #1220
This file contains 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
name: Build | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
# For maven project | |
build: | |
strategy: | |
max-parallel: 1 | |
matrix: | |
os: [ ubuntu-latest, windows-latest, macos-latest ] | |
java: [ 17 ] | |
runs-on: ${{ matrix.os }} | |
name: Maven Build with Java ${{ matrix.java }} on ${{ matrix.os }} | |
steps: | |
- name: "Checkout" | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Java ${{ matrix.java }} | |
uses: actions/setup-java@v1 | |
with: | |
java-version: ${{ matrix.java }} | |
- name: "Cache Local Maven Repository" | |
uses: actions/cache@v3 | |
with: | |
path: ~/.m2 | |
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} | |
restore-keys: ${{ runner.os }}-m2 | |
- name: "CheckStyle" | |
run: mvn validate --errors | |
- name: "Compile and Install" | |
run: mvn clean install -DskipTests --errors | |
- name: "Unit Tests" | |
run: mvn test --errors --fail-at-end | |
- name: "Integration Tests" | |
run: mvn failsafe:integration-test --errors --fail-at-end | |
# The following is only executed on Ubuntu on Java 17 | |
- name: "JaCoCo Coverage Report" | |
if: matrix.os == 'ubuntu-latest' && matrix.java == 17 && github.repository == 'castor-software/depclean' | |
run: mvn jacoco:report | |
- name: "Codecov" | |
if: matrix.os == 'ubuntu-latest' && matrix.java == 17 && github.repository == 'castor-software/depclean' | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
files: ./depclean-maven-plugin/target/site/jacoco/jacoco.xml,./depclean-core/target/site/jacoco/jacoco.xml | |
flags: unittests | |
- name: "Cache SonarCloud" | |
if: matrix.os == 'ubuntu-latest' && matrix.java == 17 && github.repository == 'castor-software/depclean' | |
uses: actions/cache@v3 | |
with: | |
path: ~/.sonar/cache | |
key: ${{ runner.os }}-sonar | |
restore-keys: ${{ runner.os }}-sonar | |
- name: "SonarCloud" | |
if: matrix.os == 'ubuntu-latest' && matrix.java == 17 && github.repository == 'castor-software/depclean' | |
run: mvn sonar:sonar -Dsonar.projectKey=castor-software_depclean -Dsonar.organization=castor-software -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_TOKEN }} -Dsonar.java.source=17 -Dsonar.java.target=17 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
# -------------------------------------------------------------------------------------------------------------------- | |
# For Gradle module | |
gradle: | |
name: Gradle build with Java 17 on ubuntu-latest | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4.2.1 | |
- name: Validate Gradle wrapper | |
uses: gradle/wrapper-validation-action@v1.1.0 | |
- name: Java 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: 'adopt-hotspot' | |
- name: Cache Gradle packages | |
uses: actions/cache@v3.3.3 | |
with: | |
path: | | |
~/.gradle/caches | |
~/.gradle/wrapper | |
~/.m2 | |
key: ${{ runner.os }}-m2-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', '**/pom.xml') }} | |
restore-keys: ${{ runner.os }}-m2- | |
# solving issues with current working directory | |
# working-directory: ~/depclean-gradle-plugin | |
# with: | |
# files: ./depclean-gradle-plugin | |
# path: ~/depclean-gradle-plugin | |
- name: Build with maven (Getting missing dependencies) | |
run: mvn clean install -q | |
- name: Build with Gradle | |
run: | | |
# home is not the repoistory root but `/home/runner`, so chdir to repository root and then use relative paths to current repository root | |
# getting correct directory now | |
# getting executable permission error on the binary | |
chmod +x ./depclean-gradle-plugin/gradlew | |
./depclean-gradle-plugin/gradlew build -p ./depclean-gradle-plugin/ -x test | |