Skip to content

Avoid locking JARs on Windows when opening input streams #4059

Avoid locking JARs on Windows when opening input streams

Avoid locking JARs on Windows when opening input streams #4059

Workflow file for this run

name: SmallRye Build
on:
push:
branches:
- 'main'
- 'main-[1-9].[0-9]'
- '[1-9].[0-9].x'
- '[1-9].x'
- '1.x'
- '!dependabot/**'
paths-ignore:
- '.gitignore'
- 'CODEOWNERS'
- 'LICENSE'
- 'NOTICE'
- 'README*'
pull_request:
branches:
- 'main'
- 'main-[1-9].[0-9]'
- '[1-9].[0-9].x'
- '[1-9].x'
- '1.x'
paths-ignore:
- '.gitignore'
- 'CODEOWNERS'
- 'LICENSE'
- 'NOTICE'
- 'README*'
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
java: [ 17, 21 ]
name: build with jdk ${{matrix.java}}
steps:
- uses: actions/checkout@v4
name: checkout
- uses: actions/setup-java@v4
name: set up jdk ${{matrix.java}}
with:
distribution: 'temurin'
java-version: ${{matrix.java}}
- name: maven cache
uses: actions/cache@v4
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: build with maven
run: mvn -B formatter:validate impsort:check install javadoc:javadoc -Pcoverage -Pgradle-smoke-test
## Store information about the build context for Sonar scan in separate job
- name: Save Build Context
run: echo "$GITHUB_CONTEXT" > target/build-context.json
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
## ! Remove this step in a follow-up PR
## Copy aggregrate coverage report to the testsuite/extra project where it is expected by sonar.yml
- name: copy coverage report (temporary)
run: cp -R testsuite/coverage/target/site testsuite/extra/target
## Attach target directories for safe Sonar scan in separate job
- name: Attach Build Output
if: matrix.java == '17'
uses: actions/upload-artifact@v4
with:
name: target
path: |
**/target/
!**/target/site/apidocs/**/*
!**/target/node/**/*
!**/target/**/*.jar
!**/target/**/*.war
!**/target/failsafe-reports/**/*
!**/target/surefire-reports/**/*
!**/target/maven-it/**/*
tck-reporting:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- tck-version: "2.0.1"
- tck-version: "3.0"
- tck-version: "3.1.2"
name: MicroProfile OpenAPI TCK ${{ matrix.tck-version }}
steps:
- uses: actions/checkout@v4
name: checkout
- name: maven cache
uses: actions/cache@v4
with:
path: ~/.m2
key: ${{ runner.os }}-m2-tck-${{ matrix.tck-version }}-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- uses: actions/setup-java@v4
name: set up jdk
with:
distribution: 'temurin'
java-version: 17
- name: build with maven
run: mvn -B install -pl '!testsuite/coverage,!testsuite/data,!testsuite/extra,!tools,!tools/gradle-plugin,!tools/maven-plugin,!ui,!ui/open-api-ui,!ui/open-api-ui-forms' -DskipTests
- uses: actions/setup-java@v4
name: set up jdk
with:
distribution: 'temurin'
java-version: 11
- name: execute tck ${{ matrix.tck-version }}
run: mvn -B test -f testsuite/tck/pom.xml -Dsmallrye.commit=$(git rev-parse HEAD) -Dversion.eclipse.microprofile.openapi=${{ matrix.tck-version }}
- uses: actions/upload-artifact@v4
name: tck-report
with:
name: "tck-report-${{ matrix.tck-version }}"
path: "testsuite/tck/target/surefire-reports/microprofile-openapi-tck-report.html"