Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor CI, remove "os" from matrix #137

Merged
merged 12 commits into from
Apr 29, 2024
24 changes: 17 additions & 7 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,22 @@ on:
paths-ignore:
- "README.md"
- "release-notes/*"
env:
JODA_DEFAULT: '2.10.14'
JODA_MIN: '2.9'
JODA_MAX: '2.12.7'
jobs:
build:
runs-on: ${{ matrix.os }}
runs-on: 'ubuntu-20.04'
strategy:
fail-fast: false
matrix:
java_version: ['8', '11', '17', '21']
joda_version: ['2.9', '2.10.14', '2.12.7']
os: ['ubuntu-20.04']
java_version: ['8', '17', '21']
joda_version: [$JODA_DEFAULT, $JODA_MIN, $JODA_MAX]
include:
- java_version: '8'
joda_version: $JODA_DEFAULT
snapshot: 1
env:
JAVA_OPTS: "-XX:+TieredCompilation -XX:TieredStopAtLevel=1"
steps:
Expand All @@ -41,6 +48,9 @@ jobs:
# See https://github.com/actions/setup-java/blob/v2/docs/advanced-usage.md#Publishing-using-Apache-Maven
# gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} # Value of the GPG private key to import
# gpg-passphrase: MAVEN_GPG_PASSPHRASE # env variable for GPG private key passphrase
- name: Is snapshot?
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Debugging: will remove in near future if and when things work as expected.

if: matrix.snapshot
run: echo "Job DOES have 'matrix.snapshot'!"
- name: Build
# Note: build separately first with default joda
run: ./mvnw -B -q -ff -ntp -DskipTests clean package
Expand All @@ -51,17 +61,17 @@ jobs:
id: projectVersion
run: echo "version=$(./mvnw org.apache.maven.plugins:maven-help-plugin:3.3.0:evaluate -DforceStdout -Dexpression=project.version -q)" >> $GITHUB_OUTPUT
- name: Deploy snapshot
if: github.event_name != 'pull_request' && matrix.java_version == '8' && matrix.joda_version == '2.10.14' && endsWith(steps.projectVersion.outputs.version, '-SNAPSHOT')
if: github.event_name != 'pull_request' && ${{ matrix.snapshot }} && endsWith(steps.projectVersion.outputs.version, '-SNAPSHOT')
env:
CI_DEPLOY_USERNAME: ${{ secrets.CI_DEPLOY_USERNAME }}
CI_DEPLOY_PASSWORD: ${{ secrets.CI_DEPLOY_PASSWORD }}
# MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }}
run: ./mvnw -B -q -ff -DskipTests -ntp source:jar deploy
- name: Generate code coverage
if: github.event_name != 'pull_request' && matrix.java_version == '8' && matrix.joda_version == '2.10.14' && endsWith(steps.projectVersion.outputs.version, '-SNAPSHOT')
if: github.event_name != 'pull_request' && ${{ matrix.snapshot }} && endsWith(steps.projectVersion.outputs.version, '-SNAPSHOT')
run: ./mvnw -B -q -ff -ntp test
- name: Publish code coverage
if: github.event_name != 'pull_request' && matrix.java_version == '8' && matrix.joda_version == '2.10.14' && endsWith(steps.projectVersion.outputs.version, '-SNAPSHOT')
if: github.event_name != 'pull_request' && ${{ matrix.snapshot }} && endsWith(steps.projectVersion.outputs.version, '-SNAPSHOT')
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
Expand Down
Loading