Skip to content

Install Kotlin via SDKMAN! in CI workflows #31

Install Kotlin via SDKMAN! in CI workflows

Install Kotlin via SDKMAN! in CI workflows #31

Workflow file for this run

name: bld-ci
on: [push, pull_request, workflow_dispatch]
jobs:
build-bld-project:
runs-on: ubuntu-latest
env:
COVERAGE_SDK: "17"
COVERAGE_KOTLIN: "2.0.0"
strategy:
matrix:
java-version: [17, 21, 22]
kotlin-version: [ 1.9.24, 2.0.0 ]
steps:
- name: Checkout source repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up JDK ${{ matrix.java-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
run: ./bld download
- name: Compile source with bld
run: ./bld compile
- name: Run tests with bld
env:
CI_NAME: "GitHub CI"
ALPHAVANTAGE_API_KEY: ${{ secrets.ALPHAVANTAGE_API_KEY }}
CHATGPT_API_KEY: ${{ secrets.CHATGPT_API_KEY }}
OWM_API_KEY: ${{ secrets.OWM_API_KEY }}
PINBOARD_API_TOKEN: ${{ secrets.PINBOARD_API_TOKEN }}
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }}
MASTODON_HANDLE: ${{ secrets.MASTODON_HANDLE }}
MASTODON_INSTANCE: ${{ secrets.MASTODON_INSTANCE }}
EXCHANGERATE_API_KEY: ${{ secrets.EXCHANGERATE_API_KEY }}
run: ./bld jacoco
- name: Remove pom.xml
if: success() && matrix.java-version == env.COVERAGE_SDK && 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 && matrix.kotlin-version == env.COVERAGE_KOTLIN
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}