Skip to content

ci: upgrade github actions (#41) #155

ci: upgrade github actions (#41)

ci: upgrade github actions (#41) #155

Workflow file for this run

name: Java CI
on:
push:
branches:
- main
pull_request:
branches: '*'
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # required by wagoid/commitlint-github-action to validate range of commits instead of just the latest one
- uses: wagoid/commitlint-github-action@v4
if: matrix.os == 'ubuntu-latest'
- name: Set up JDK 1.8
uses: actions/setup-java@v4
with:
distribution: corretto
java-version: 8
cache: maven
- run: rm -rf /tmp/*
if: matrix.os == 'ubuntu-latest'
continue-on-error: true
- name: Build with Maven (not Windows)
env:
AWS_REGION: us-west-2
run: mvn -ntp -U clean verify
if: matrix.os != 'windows-latest'
- name: Build with Maven (Windows)
env:
AWS_REGION: us-west-2
run: mvn -ntp -U clean verify
shell: cmd
if: matrix.os == 'windows-latest'
- name: Upload Failed Test Report
uses: actions/upload-artifact@v3
if: failure()
with:
name: Failed Test Report
path: target/surefire-reports
- name: Upload Coverage
uses: actions/upload-artifact@v3
if: matrix.os == 'ubuntu-latest'
with:
name: Coverage Report ${{ matrix.os }}
path: target/jacoco-report
- name: Convert Jacoco unit test report to Cobertura
if: matrix.os == 'ubuntu-latest'
run: python3 .github/scripts/cover2cover.py target/jacoco-report/jacoco.xml src/main/java > target/jacoco-report/cobertura.xml
- name: cobertura-report-unit-test
if: matrix.os == 'ubuntu-latest'
uses: 5monkeys/cobertura-action@v14
continue-on-error: true
with:
# The GITHUB_TOKEN for this repo
repo_token: ${{ github.token }}
# Path to the cobertura file.
path: target/jacoco-report/cobertura.xml
# If files with 100% should be skipped from report.
skip_covered: false
# Minimum allowed coverage percentage as an integer.
minimum_coverage: 65
# Show line rate as specific column.
show_line: true
# Show branch rate as specific column.
show_branch: true
# Use class names instead of the filename
show_class_names: true
# Use a unique name for the report and comment
report_name: Unit Tests Coverage Report
only_changed_files: true