Cleaned up CI workflows

This commit is contained in:
Erik C. Thauvin 2024-07-12 15:30:59 -07:00
parent da0af8552e
commit f653a0be64
Signed by: erik
GPG key ID: 776702A6A2DA330E
3 changed files with 46 additions and 38 deletions

View file

@ -1,4 +1,8 @@
version: 2
version: 2.1
orbs:
sdkman: joshdholtz/sdkman@0.2.0
defaults: &defaults
working_directory: ~/repo
environment:
@ -6,10 +10,12 @@ defaults: &defaults
TERM: dumb
CI_NAME: "CircleCI"
orbs:
sdkman: joshdholtz/sdkman@0.2.0
defaults_bld: &defaults_bld
commands:
build_and_test:
parameters:
reports-dir:
type: string
default: "build/reports/test_results"
steps:
- checkout
- sdkman/setup-sdkman
@ -17,14 +23,18 @@ defaults_bld: &defaults_bld
candidate: kotlin
version: 2.0.0
- run:
name: Download the bld dependencies
name: Download dependencies
command: ./bld download
- run:
name: Compile source with bld
name: Compile source
command: ./bld compile
- run:
name: Run tests with bld
command: ./bld test
name: Run tests
command: ./bld jacoco -reports-dir=<< parameters.reports-dir >>
- store_test_results:
path: << parameters.reports-dir >>
- store_artifacts:
path: build/reports/jacoco/test/html
jobs:
bld_jdk17:
@ -33,7 +43,8 @@ jobs:
docker:
- image: cimg/openjdk:17.0
<<: *defaults_bld
steps:
- build_and_test
bld_jdk20:
<<: *defaults
@ -41,10 +52,10 @@ jobs:
docker:
- image: cimg/openjdk:20.0
<<: *defaults_bld
steps:
- build_and_test
workflows:
version: 2
bld:
jobs:
- bld_jdk17

View file

@ -1,21 +1,20 @@
name: bld-ci
on: [push, pull_request, workflow_dispatch]
on: [ push, pull_request, workflow_dispatch ]
env:
COVERAGE_JDK: "21"
COVERAGE_KOTLIN: "2.0.0"
KOTLIN_HOME: /usr/share/kotlinc
jobs:
build-bld-project:
runs-on: ubuntu-latest
env:
COVERAGE_SDK: "17"
strategy:
matrix:
java-version: [17, 21, 22]
kotlin-version: [1.9.24, 2.0.0]
java-version: [ 17, 21, 22 ]
kotlin-version: [ 1.9.24, 2.0.0 ]
steps:
- name: Checkout source repository
@ -23,31 +22,29 @@ jobs:
with:
fetch-depth: 0
- name: Set up JDK ${{ matrix.java-version }}
- name: Set up JDK ${{ matrix.java-version }} with Kotlin ${{ matrix.kotlin-version }}
uses: actions/setup-java@v4
with:
distribution: "zulu"
java-version: ${{ matrix.java-version }}
- name: Grant bld execute permission
run: chmod +x bld
- name: Download the bld dependencies
- name: Download dependencies
run: ./bld download
- name: Compile source with bld
- name: Compile source
run: ./bld compile
- name: Run tests with bld
- name: Run tests
run: ./bld jacoco
- name: Remove pom.xml
if: success() && matrix.java-version == env.COVERAGE_SDK
if: success() && matrix.java-version == env.COVERAGE_JDK && matrix.kotlin-version == env.COVERAGE_KOTLIN
run: rm -rf pom.xml
- name: SonarCloud Scan
uses: sonarsource/sonarcloud-github-action@master
if: success() && matrix.java-version == env.COVERAGE_SDK
if: success() && matrix.java-version == env.COVERAGE_JDK && matrix.kotlin-version == env.COVERAGE_KOTLIN
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

Binary file not shown.