adding ability to pull from different directories for test data & answer files #896
Workflow file for this run
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: "Maven: CI Builds" | |
on: # yamllint disable-line rule:truthy | |
push: | |
branches: [main, release/**, patch/**] | |
pull_request: | |
branches: [main, release/**, patch/**] | |
jobs: | |
build: | |
name: RHEL8 ${{ matrix.build-type }} build on Java ${{ matrix.java-version }} with compiler target ${{ matrix.java-compiler }} | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
java-compiler: ['11', '17'] | |
java-version: ['17'] | |
experimental: [false] | |
build-type: ["experimental"] | |
verify-build: [false] | |
include: | |
- java-compiler: '11' | |
java-version: '11' | |
experimental: false | |
build-type: "standard" | |
verify-build: true | |
continue-on-error: ${{ matrix.experimental }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
push: false | |
file: contrib/docker/Dockerfile.ci | |
build-args: | | |
java_version=${{ matrix.java-version }} | |
java_compiler=${{ matrix.java-compiler }} | |
verify_build=${{ matrix.verify-build }} | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
centos7-build: | |
name: Centos7 legacy build on Java 11 with compiler target 11 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
push: false | |
file: contrib/docker/Dockerfile.ci | |
build-args: | | |
target_os=centos7 | |
verify_build=false | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
macos-build: | |
name: MacOS non-standard build on Java 11 with compiler target 11 | |
runs-on: macos-14 | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Configure Java | |
uses: actions/setup-java@v4 | |
with: | |
java-version: '11' | |
cache: 'maven' | |
distribution: 'corretto' | |
overwrite-settings: false | |
- name: Build with Maven | |
run: mvn -B -e -ntp "-Dstyle.color=always" clean verify -Pdist | |
site-build: | |
name: Maven site build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Configure Java & Maven | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 11 | |
cache: "maven" | |
distribution: "corretto" | |
- name: Build with Maven | |
run: mvn -B -e -ntp "-Dstyle.color=always" site | |
error-prone-build: | |
name: Maven errorProne build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Configure Java & Maven | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 11 | |
cache: "maven" | |
distribution: "corretto" | |
- name: Build with Maven | |
run: mvn -B -e -ntp "-Dstyle.color=always" -PerrorProne verify -DskipTests | |
slack-notify: | |
if: ${{ github.event_name == 'push' && github.repository == 'NationalSecurityAgency/emissary' }} | |
needs: build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Publish to slack channel via bot token | |
id: slack | |
uses: slackapi/slack-github-action@v1.24.0 | |
with: | |
channel-id: ${{ secrets.SLACK_CHANNEL_ID }} | |
payload: | | |
{ | |
"unfurl_links": false, | |
"unfurl_media": false, | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "emissary-main -- Commit: <${{ github.event.pull_request.html_url || github.event.head_commit.url }}|${{ github.sha }}> merged by ${{ github.actor }}.\nCI Job Status: *${{ join(needs.*.result, ' ')}}*" | |
} | |
} | |
] | |
} | |
env: | |
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} |