Cleaned up CI workflows
This commit is contained in:
parent
db0e4d30f1
commit
c3a8018cc3
8 changed files with 68 additions and 60 deletions
|
@ -1,4 +1,8 @@
|
|||
version: 2
|
||||
version: 2.1
|
||||
|
||||
orbs:
|
||||
sdkman: joshdholtz/sdkman@0.2.0
|
||||
|
||||
defaults: &defaults
|
||||
working_directory: ~/repo
|
||||
environment:
|
||||
|
@ -6,26 +10,31 @@ defaults: &defaults
|
|||
TERM: dumb
|
||||
CI_NAME: "CircleCI"
|
||||
|
||||
defaults_bld: &defaults_bld
|
||||
commands:
|
||||
build_and_test:
|
||||
parameters:
|
||||
reports-dir:
|
||||
type: string
|
||||
default: "build/reports/test_results"
|
||||
steps:
|
||||
- checkout
|
||||
- sdkman/setup-sdkman
|
||||
- sdkman/sdkman-install:
|
||||
candidate: kotlin
|
||||
version: 2.0.0
|
||||
- run:
|
||||
name: Install Kotlin via SDKMAN!
|
||||
command: |
|
||||
curl -s "https://get.sdkman.io" | bash
|
||||
echo sdkman_auto_answer=true > $HOME/.sdkman/etc/config
|
||||
echo sdkman_auto_selfupdate=true >> $HOME/.sdkman/etc/config
|
||||
source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
sdk install kotlin 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:
|
||||
|
@ -34,7 +43,8 @@ jobs:
|
|||
docker:
|
||||
- image: cimg/openjdk:17.0
|
||||
|
||||
<<: *defaults_bld
|
||||
steps:
|
||||
- build_and_test
|
||||
|
||||
bld_jdk20:
|
||||
<<: *defaults
|
||||
|
@ -42,10 +52,10 @@ jobs:
|
|||
docker:
|
||||
- image: cimg/openjdk:20.0
|
||||
|
||||
<<: *defaults_bld
|
||||
steps:
|
||||
- build_and_test
|
||||
|
||||
workflows:
|
||||
version: 2
|
||||
bld:
|
||||
jobs:
|
||||
- bld_jdk17
|
||||
|
|
48
.github/workflows/bld.yml
vendored
48
.github/workflows/bld.yml
vendored
|
@ -1,19 +1,29 @@
|
|||
name: bld-ci
|
||||
|
||||
on: [push, pull_request, workflow_dispatch]
|
||||
on: [ push, pull_request, workflow_dispatch ]
|
||||
|
||||
env:
|
||||
ALPHAVANTAGE_API_KEY: ${{ secrets.ALPHAVANTAGE_API_KEY }}
|
||||
CHATGPT_API_KEY: ${{ secrets.CHATGPT_API_KEY }}
|
||||
CI_NAME: "GitHub CI"
|
||||
COVERAGE_JDK: "21"
|
||||
COVERAGE_KOTLIN: "2.0.0"
|
||||
EXCHANGERATE_API_KEY: ${{ secrets.EXCHANGERATE_API_KEY }}
|
||||
KOTLIN_HOME: /usr/share/kotlinc
|
||||
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }}
|
||||
MASTODON_HANDLE: ${{ secrets.MASTODON_HANDLE }}
|
||||
MASTODON_INSTANCE: ${{ secrets.MASTODON_INSTANCE }}
|
||||
OWM_API_KEY: ${{ secrets.OWM_API_KEY }}
|
||||
PINBOARD_API_TOKEN: ${{ secrets.PINBOARD_API_TOKEN }}
|
||||
|
||||
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]
|
||||
java-version: [ 17, 21, 22 ]
|
||||
kotlin-version: [ 1.9.24, 2.0.0 ]
|
||||
|
||||
steps:
|
||||
- name: Checkout source repository
|
||||
|
@ -21,40 +31,28 @@ 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
|
||||
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 }}
|
||||
- name: Run tests
|
||||
run: ./bld jacoco
|
||||
|
||||
- name: Remove pom.xml
|
||||
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 && matrix.kotlin-version == env.COVERAGE_KOTLIN
|
||||
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 }}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
image: ubuntu:latest
|
||||
image: fedora:latest
|
||||
|
||||
variables:
|
||||
CI_NAME: "GitLab CI"
|
||||
|
@ -7,13 +7,13 @@ stages:
|
|||
- test
|
||||
|
||||
before_script:
|
||||
- apt-get update -qq && apt-get install -y curl zip
|
||||
- dnf -qy update && dnf -y install zip
|
||||
- curl -s "https://get.sdkman.io" | bash
|
||||
- echo sdkman_auto_answer=true > $HOME/.sdkman/etc/config
|
||||
- echo sdkman_auto_selfupdate=true >> $HOME/.sdkman/etc/config
|
||||
- source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
- sdk install java 17.0.11-tem
|
||||
- sdk install kotlin 2.0.0
|
||||
- sdk install java
|
||||
- sdk install kotlin
|
||||
- source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
|
||||
test:
|
||||
|
|
4
.idea/libraries/bld.xml
generated
4
.idea/libraries/bld.xml
generated
|
@ -2,12 +2,12 @@
|
|||
<library name="bld">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/lib/bld" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-1.9.1.jar!/" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.0.0-SNAPSHOT.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/bld" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-1.9.1-sources.jar!/" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.0.0-SNAPSHOT-sources.jar!/" />
|
||||
</SOURCES>
|
||||
<excluded>
|
||||
<root url="jar://$PROJECT_DIR$/lib/bld/bld-wrapper.jar!/" />
|
||||
|
|
|
@ -5,14 +5,14 @@ pipelines:
|
|||
- step:
|
||||
name: Test with bld
|
||||
script:
|
||||
# Install Java & Kotlin via SDKMAN!
|
||||
# Install latest Java & Kotlin via SDKMAN!
|
||||
- apt-get update -qq && apt-get install -y curl zip
|
||||
- curl -s "https://get.sdkman.io" | bash
|
||||
- echo sdkman_auto_answer=true > $HOME/.sdkman/etc/config
|
||||
- echo sdkman_auto_selfupdate=true >> $HOME/.sdkman/etc/config
|
||||
- source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
- sdk install java 17.0.11-tem
|
||||
- sdk install kotlin 2.0.0
|
||||
- sdk install java
|
||||
- sdk install kotlin
|
||||
- source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
# Download, compile and test with bld
|
||||
- ./bld download
|
||||
|
|
Binary file not shown.
|
@ -7,4 +7,4 @@ bld.extension-jacoco=com.uwyn.rife2:bld-jacoco-report:0.9.6
|
|||
bld.extension-kotlin=com.uwyn.rife2:bld-kotlin:1.0.0-SNAPSHOT
|
||||
bld.repositories=MAVEN_LOCAL,MAVEN_CENTRAL,RIFE2_SNAPSHOTS,RIFE2_RELEASES
|
||||
bld.sourceDirectories=
|
||||
bld.version=1.9.1
|
||||
bld.version=2.0.0-SNAPSHOT
|
||||
|
|
|
@ -49,7 +49,7 @@ class ChatGptTest : LocalProperties() {
|
|||
|
||||
@Test
|
||||
fun testChatOnCoverage() {
|
||||
if (System.getenv("CI") == null || System.getenv("COVERAGE_SDK") != null) {
|
||||
if (System.getenv("CI") == null || System.getenv("COVERAGE_JDK") != null) {
|
||||
assertThat(
|
||||
ChatGpt.chat("how do I encode a URL in java?", getProperty(ChatGpt.API_KEY_PROP), 60)
|
||||
).contains("URLEncoder")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue