diff --git a/.circleci/config.yml b/.circleci/config.yml index d21cbc7..ade5000 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -30,19 +30,19 @@ defaults_gradle: &defaults_gradle path: build/reports/ jobs: - build_gradle_jdk14: + build_gradle_jdk18: <<: *defaults docker: - - image: openjdk:14-jdk + - image: cimg/openjdk:18.0 <<: *defaults_gradle - build_gradle_jdk8: + build_gradle_jdk11: <<: *defaults docker: - - image: circleci/openjdk:8-jdk + - image: cimg/openjdk:11.0 <<: *defaults_gradle @@ -50,5 +50,5 @@ workflows: version: 2 gradle: jobs: - - build_gradle_jdk8 - - build_gradle_jdk14 + - build_gradle_jdk11 + - build_gradle_jdk18 diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index f1ac387..a0b7843 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -1,19 +1,61 @@ -name: Java CI with Gradle +name: gradle-ci on: [push, pull_request, workflow_dispatch] jobs: build: - runs-on: ubuntu-latest + env: + GRADLE_OPTS: "-Dorg.gradle.jvmargs=-XX:MaxMetaspaceSize=512m" + SONAR_JDK: "11" + + strategy: + matrix: + java-version: [ 11, 18 ] + steps: - - uses: actions/checkout@v2 - - name: Set up JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 - - name: Grant execute permission for gradlew - run: chmod +x gradlew - - name: Test with Gradle - run: ./gradlew check + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Set up JDK ${{ matrix.java-version }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + + - name: Grant execute permission for gradlew + run: chmod +x gradlew + + - name: Cache SonarCloud packages + if: matrix.java-version == env.SONAR_JDK + uses: actions/cache@v1 + with: + path: ~/.sonar/cache + key: ${{ runner.os }}-sonar + restore-keys: ${{ runner.os }}-sonar + + - name: Cache Gradle packages + uses: actions/cache@v2 + with: + path: | + ~/.gradle/caches + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ matrix.java-version }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-gradle-${{ matrix.java-version }}- + + - name: Test with Gradle + run: ./gradlew build check --stacktrace + + - name: SonarCloud + if: success() && matrix.java-version == env.SONAR_JDK + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + run: ./gradlew sonarqube + + - name: Cleanup Gradle Cache + run: | + rm -f ~/.gradle/caches/modules-2/modules-2.lock + rm -f ~/.gradle/caches/modules-2/gc.properties diff --git a/.gitignore b/.gitignore index f007981..13a066e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,22 +1,7 @@ -.vscode/* !.vscode/extensions.json !.vscode/launch.json !.vscode/settings.json !.vscode/tasks.json - -__pycache__ -.classpath -.DS_Store -.gradle -.history -.kobalt -.mtj.tmp/ -.mvn/timing.properties -.mvn/wrapper/maven-wrapper.jar -.nb-gradle -.project -.scannerwork -.settings *.class *.code-workspace *.ctxt @@ -27,7 +12,21 @@ __pycache__ *.sublime-* *.tar.gz *.zip -/**/.idea_modules/ +.DS_Store +.classpath +.gradle +.history +.kobalt +.mtj.tmp/ +.mvn/timing.properties +.mvn/wrapper/maven-wrapper.jar +.nb-gradle +.project +.scannerwork +.settings +.vscode/* +/**/.idea/$CACHE_FILE$ +/**/.idea/$PRODUCT_WORKSPACE_FILE$ /**/.idea/**/caches/build_file_checksums.ser /**/.idea/**/contentModel.xml /**/.idea/**/dataSources.ids @@ -48,8 +47,10 @@ __pycache__ /**/.idea/**/uiDesigner.xml /**/.idea/**/usage.statistics.xml /**/.idea/**/workspace.xml -/**/.idea/$CACHE_FILE$ -/**/.idea/$PRODUCT_WORKSPACE_FILE$ +/**/.idea/sonarlint* +/**/.idea_modules/ +Thumbs.db +__pycache__ atlassian-ide-plugin.xml bin/ build/ @@ -71,6 +72,7 @@ lib/kotlin* libs/ local.properties out/ +pom.xml.asc pom.xml.next pom.xml.releaseBackup pom.xml.tag @@ -80,5 +82,4 @@ project.properties release.properties target/ test-output -Thumbs.db venv diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 26820aa..f30e74b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,4 @@ -image: gradle:alpine +image: gradle:7-jdk11 variables: GRADLE_OPTS: "-Dorg.gradle.daemon=false" @@ -12,7 +12,7 @@ stages: build: stage: build - script: ./gradlew --build-cache assemble + script: gradle --build-cache assemble cache: key: "$CI_COMMIT_REF_NAME" policy: push @@ -22,7 +22,7 @@ build: test: stage: test - script: ./gradlew check + script: gradle check cache: key: "$CI_COMMIT_REF_NAME" policy: pull diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 61a9130..fb7f4a8 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/.idea/copyright/Erik_s_Copyright_Notice.xml b/.idea/copyright/Erik_s_Copyright_Notice.xml index 08660a1..1c363f3 100644 --- a/.idea/copyright/Erik_s_Copyright_Notice.xml +++ b/.idea/copyright/Erik_s_Copyright_Notice.xml @@ -1,6 +1,6 @@ - \ No newline at end of file diff --git a/.idea/isgd-shorten.iml b/.idea/isgd-shorten.iml deleted file mode 100644 index 78b2cc5..0000000 --- a/.idea/isgd-shorten.iml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml index ac476f9..4290988 100644 --- a/.idea/jarRepositories.xml +++ b/.idea/jarRepositories.xml @@ -26,5 +26,20 @@