Skip to content

Merge pull request #186 from openapi-processor/dependabot/gradle/org.… #603

Merge pull request #186 from openapi-processor/dependabot/gradle/org.…

Merge pull request #186 from openapi-processor/dependabot/gradle/org.… #603

Workflow file for this run

name: build
on:
push:
branches:
- '**'
paths-ignore:
- 'gradle.properties'
- 'LICENSE'
- 'README.adoc'
- 'docs/**'
tags-ignore:
- 'v*'
workflow_dispatch:
jobs:
version:
name: check version
runs-on: ubuntu-latest
outputs:
BUILD_VERSION: ${{ env.BUILD_VERSION }}
steps:
- name: Set up Homebrew
id: set-up-homebrew
uses: Homebrew/actions/setup-homebrew@master
- name: checkout
uses: actions/checkout@v4
- name: install dasel
run: |
brew install dasel
cat $GITHUB_ENV
- name: extract version
run: |
version=`dasel -r toml -f gradle/libs.versions.toml versions.processor`
echo BUILD_VERSION="${version#projectVersion=}" >> $GITHUB_ENV
cat $GITHUB_ENV
- name: actor
run: echo ${{ github.actor }} ${{ github.actor == 'hauner' }}
test:
name: test
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
steps:
- name: checkout
uses: actions/checkout@v4
with:
submodules: true
- name: set up jdk
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: |
11
17
- name: set up gradle
uses: gradle/actions/setup-gradle@v4
- name: run tests
run: |
./gradlew javaToolchains check --warning-mode all --stacktrace
- name: archive test results
uses: actions/upload-artifact@v4
if: always()
with:
name: test-results-${{ matrix.os }}
path: '*/build/reports'
publish:
if: contains(needs.version.outputs.BUILD_VERSION, 'SNAPSHOT') && github.actor == 'hauner'
needs: [version, test]
name: publish snapshot
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: set up jdk
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: |
11
17
- name: set up gradle
uses: gradle/actions/setup-gradle@v4
- name: publish snapshot
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ORG_GRADLE_PROJECT_signKey: ${{ secrets.SIGN_KEY_ORG }}
ORG_GRADLE_PROJECT_signPwd: ${{ secrets.SIGN_PWD }}
PUBLISH_USER: ${{ secrets.PUBLISH_USER }}
PUBLISH_KEY: ${{ secrets.PUBLISH_KEY }}
run: |
./gradlew publishToSonatype --stacktrace
sonar:
needs: [publish]
name: sonar
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: cache sonar
uses: actions/cache@v4
with:
path: |
~/.sonar/cache
key: sonar-${{ runner.os }}
restore-keys: |
sonar-${{ runner.os }}
- name: set up jdk
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: |
11
17
- name: set up gradle
uses: gradle/actions/setup-gradle@v4
- name: run sonar
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: |
./gradlew check sonar --stacktrace