Skip to content

Merge pull request #5658 from bndtools/dependabot/github_actions/step… #3381

Merge pull request #5658 from bndtools/dependabot/github_actions/step…

Merge pull request #5658 from bndtools/dependabot/github_actions/step… #3381

Workflow file for this run

name: 'CI Build'
on:
push:
branches-ignore:
- 'dependabot/**'
paths:
- '**'
- '!docs/**'
- '!.github/**'
- '.github/**/*ci*'
pull_request:
paths:
- '**'
- '!docs/**'
- '!.github/**'
- '.github/**/*ci*'
env:
LC_ALL: en_US.UTF-8
GRADLE_OPTS: >-
-Dorg.gradle.parallel=true
MAVEN_OPTS: >-
-Dhttp.keepAlive=false
-Dmaven.wagon.http.pool=false
-Dmaven.wagon.http.retryHandler.count=3
defaults:
run:
shell: bash
permissions:
contents: read
jobs:
build:
strategy:
fail-fast: ${{ (github.repository != 'bndtools/bnd') || ((github.ref != 'refs/heads/master') && (github.ref != 'refs/heads/next')) || (github.event_name == 'pull_request') }}
matrix:
os:
- 'ubuntu-latest'
java:
- '19'
runner:
- 'xvfb-run --auto-servernum {0}'
include:
- os: 'ubuntu-latest'
java: '17'
runner: 'xvfb-run --auto-servernum {0}'
canonical: ${{ (github.repository == 'bndtools/bnd') && ((github.ref == 'refs/heads/master') || (github.ref == 'refs/heads/next')) && (github.event_name != 'pull_request') }}
fetch-depth: '0'
- os: 'windows-latest'
java: '17'
runner: '{0}'
name: Build JDK${{ matrix.java }} ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps:
- name: Harden Runner
uses: step-security/harden-runner@128a63446a954579617e875aaab7d2978154e969
with:
egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs
- name: Git Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
with:
fetch-depth: ${{ matrix.fetch-depth }}
- name: Set up Java ${{ matrix.java }}
uses: actions/setup-java@5ffc13f4174014e2d4d4572b3d74c3fa61aeb2c2
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
- name: Set up Gradle
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
- name: Build
id: build
run: |
${{ format(matrix.runner, './.github/scripts/ci-build.sh') }}
- name: Configure settings.xml for Publish
if: ${{ matrix.canonical }}
uses: actions/setup-java@5ffc13f4174014e2d4d4572b3d74c3fa61aeb2c2
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
server-id: bndtools.jfrog.io
server-username: JFROG_USERNAME
server-password: JFROG_PASSWORD
- name: Publish
id: publish
if: ${{ matrix.canonical }}
run: |
./.github/scripts/ci-publish.sh
env:
CANONICAL: ${{ matrix.canonical }}
JFROG_USERNAME: ${{ secrets.JFROG_USERNAME }}
JFROG_PASSWORD: ${{ secrets.JFROG_PASSWORD }}
- name: Upload Test Reports
if: ${{ always() && ((steps.build.outcome == 'success') || (steps.build.outcome == 'failure')) }}
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce
with:
name: Build_JDK${{ matrix.java }}_${{ matrix.os }}-test-reports
path: |
*/generated/test-reports/*/TEST-*.xml
maven/*/target/surefire-reports/TEST-*.xml
gradle-plugins/*/build/test-results/*/TEST-*.xml