From 3cb6de1f218bf5c3892052eb0675f0725caed4dd Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:26:31 +0100 Subject: [PATCH 01/12] Extract constants. Optimize OutputStream creation. --- .../dke/data/agrirouter/api/env/Constants.java | 11 +++++++++++ .../mqtt/client/MqttOptionService.java | 14 ++++++++------ .../common/ssl/KeyStoreCreationService.java | 17 ++++++++--------- 3 files changed, 27 insertions(+), 15 deletions(-) create mode 100644 agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java diff --git a/agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java b/agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java new file mode 100644 index 00000000..818e3856 --- /dev/null +++ b/agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java @@ -0,0 +1,11 @@ +package com.dke.data.agrirouter.api.env; + +/** + * Constants for the SDK. + */ +public interface Constants { + String DEFAULT_PASSWORD = "changeit"; + String PROTOCOL = "TLSv1.2"; + String CERT_ALIAS = "cert-alias"; + String KEY_ALIAS = "key-alias"; +} \ No newline at end of file diff --git a/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java b/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java index f52b88cc..2d8c8dd3 100644 --- a/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java +++ b/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java @@ -3,18 +3,20 @@ import com.dke.data.agrirouter.api.dto.onboard.OnboardingResponse; import com.dke.data.agrirouter.api.dto.onboard.RouterDevice; import com.dke.data.agrirouter.api.enums.CertificationType; +import com.dke.data.agrirouter.api.env.Constants; import com.dke.data.agrirouter.api.env.Environment; import com.dke.data.agrirouter.api.exception.CouldNotCreateMqttOptionException; import com.dke.data.agrirouter.impl.EnvironmentalService; import com.dke.data.agrirouter.impl.common.ssl.KeyStoreCreationService; +import org.eclipse.paho.client.mqttv3.MqttConnectOptions; + +import javax.net.SocketFactory; +import javax.net.ssl.KeyManagerFactory; +import javax.net.ssl.SSLContext; import java.security.KeyManagementException; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.UnrecoverableKeyException; -import javax.net.SocketFactory; -import javax.net.ssl.KeyManagerFactory; -import javax.net.ssl.SSLContext; -import org.eclipse.paho.client.mqttv3.MqttConnectOptions; /** Creating MQTT options for the MQTT client. */ public class MqttOptionService extends EnvironmentalService { @@ -90,7 +92,7 @@ private SocketFactory getSocketFactory( if (certificationType == CertificationType.PEM) { kmf.init( this.keyStoreCreationService.createAndReturnKeystoreFromPEM(certificate, password), - "changeit".toCharArray()); + Constants.DEFAULT_PASSWORD.toCharArray()); } else { if (certificationType == CertificationType.P12) { kmf.init( @@ -98,7 +100,7 @@ private SocketFactory getSocketFactory( password.toCharArray()); } } - SSLContext context = SSLContext.getInstance("TLSv1.2"); + SSLContext context = SSLContext.getInstance(Constants.PROTOCOL); context.init(kmf.getKeyManagers(), null, null); return context.getSocketFactory(); } catch (NoSuchAlgorithmException e) { diff --git a/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java b/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java index b27703ea..001470a3 100644 --- a/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java +++ b/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java @@ -1,11 +1,14 @@ package com.dke.data.agrirouter.impl.common.ssl; +import com.dke.data.agrirouter.api.env.Constants; import com.dke.data.agrirouter.api.exception.CouldNotCreateDynamicKeyStoreException; import com.dke.data.agrirouter.api.service.HasLogger; import java.io.ByteArrayInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Paths; import java.security.*; import java.security.cert.Certificate; import java.security.cert.CertificateException; @@ -21,16 +24,12 @@ public class KeyStoreCreationService implements HasLogger { - public static final String TEMPORARY_KEY_PASSWORD = "changeit"; - private static final String BEGIN_DELIMITER_PRIVATE_KEY = "-----BEGIN ENCRYPTED PRIVATE KEY-----"; private static final String END_DELIMITER_PRIVATE_KEY = "-----END ENCRYPTED PRIVATE KEY-----"; private static final String BEGIN_DELIMITER_CERTIFICATE = "-----BEGIN CERTIFICATE-----"; private static final String END_DELIMITER_CERTIFICATE = "-----END CERTIFICATE-----"; - private static final String DEFAULT_PASSWORD = "changeit"; - public SocketFactory getSocketFactory( List rootCertificates, String certificate, String password) throws Exception { this.logMethodBegin(rootCertificates, certificate, password); @@ -154,8 +153,8 @@ String createKeyStoreInClasspath(X509Certificate cert, PrivateKey key) this.getNativeLogger().trace("Store keystore within temporary folder."); keystore.store( - new FileOutputStream("./target/test-classes/" + tmpKeystoreName + ".jks"), - TEMPORARY_KEY_PASSWORD.toCharArray()); + Files.newOutputStream(Paths.get("./target/test-classes/" + tmpKeystoreName + ".jks")), + Constants.DEFAULT_PASSWORD.toCharArray()); this.logMethodEnd(tmpKeystoreName); return tmpKeystoreName; @@ -226,17 +225,17 @@ private KeyStore createKeyStore(X509Certificate x509Certificate, PrivateKey key) this.getNativeLogger().trace("Create JKS keystore."); KeyStore keystore = KeyStore.getInstance("JKS"); keystore.load(null); - keystore.setCertificateEntry("cert-alias", x509Certificate); + keystore.setCertificateEntry(Constants.CERT_ALIAS, x509Certificate); this.getNativeLogger().trace("Add certificate to the key store."); keystore.setKeyEntry( - "key-alias", key, getDefaultPassword(), new Certificate[] {x509Certificate}); + Constants.KEY_ALIAS, key, getDefaultPassword(), new Certificate[] {x509Certificate}); this.logMethodEnd(keystore); return keystore; } private static char[] getDefaultPassword() { - return DEFAULT_PASSWORD.toCharArray(); + return Constants.DEFAULT_PASSWORD.toCharArray(); } } From 8f6b00c91723a44c91e9b3867b58ad21731e48cd Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:28:44 +0100 Subject: [PATCH 02/12] Reformat files. --- .../com/dke/data/agrirouter/api/env/Constants.java | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java b/agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java index 818e3856..a877157d 100644 --- a/agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java +++ b/agrirouter-sdk-java-api/src/main/java/com/dke/data/agrirouter/api/env/Constants.java @@ -1,11 +1,9 @@ package com.dke.data.agrirouter.api.env; -/** - * Constants for the SDK. - */ +/** Constants for the SDK. */ public interface Constants { - String DEFAULT_PASSWORD = "changeit"; - String PROTOCOL = "TLSv1.2"; - String CERT_ALIAS = "cert-alias"; - String KEY_ALIAS = "key-alias"; -} \ No newline at end of file + String DEFAULT_PASSWORD = "changeit"; + String PROTOCOL = "TLSv1.2"; + String CERT_ALIAS = "cert-alias"; + String KEY_ALIAS = "key-alias"; +} From c7151ac6a4c189e57ddb895e47670d7b379f7aa1 Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:28:55 +0100 Subject: [PATCH 03/12] Reformat files. --- .../java/com/dke/data/agrirouter/impl/RequestFactory.java | 3 ++- .../agrirouter/impl/common/ssl/KeyStoreCreationService.java | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/RequestFactory.java b/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/RequestFactory.java index ffba1af0..5c0c1075 100644 --- a/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/RequestFactory.java +++ b/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/RequestFactory.java @@ -1,6 +1,7 @@ package com.dke.data.agrirouter.impl; import com.dke.data.agrirouter.api.enums.CertificationType; +import com.dke.data.agrirouter.api.env.Constants; import com.dke.data.agrirouter.api.env.Environment; import com.dke.data.agrirouter.api.exception.CertificationTypeNotSupportedException; import com.dke.data.agrirouter.api.exception.CouldNotCreateDynamicKeyStoreException; @@ -64,7 +65,7 @@ private static Client createClient( case PEM: return ClientBuilder.newBuilder() .withConfig(clientConfig) - .keyStore(keyStore, KeyStoreCreationService.TEMPORARY_KEY_PASSWORD) + .keyStore(keyStore, Constants.DEFAULT_PASSWORD) .build(); case P12: return ClientBuilder.newBuilder() diff --git a/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java b/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java index 001470a3..a9461869 100644 --- a/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java +++ b/agrirouter-sdk-java-impl/src/main/java/com/dke/data/agrirouter/impl/common/ssl/KeyStoreCreationService.java @@ -4,7 +4,6 @@ import com.dke.data.agrirouter.api.exception.CouldNotCreateDynamicKeyStoreException; import com.dke.data.agrirouter.api.service.HasLogger; import java.io.ByteArrayInputStream; -import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.nio.file.Files; @@ -153,8 +152,8 @@ String createKeyStoreInClasspath(X509Certificate cert, PrivateKey key) this.getNativeLogger().trace("Store keystore within temporary folder."); keystore.store( - Files.newOutputStream(Paths.get("./target/test-classes/" + tmpKeystoreName + ".jks")), - Constants.DEFAULT_PASSWORD.toCharArray()); + Files.newOutputStream(Paths.get("./target/test-classes/" + tmpKeystoreName + ".jks")), + Constants.DEFAULT_PASSWORD.toCharArray()); this.logMethodEnd(tmpKeystoreName); return tmpKeystoreName; From 8fc291571b5661468b6667c629df39385d982778 Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:30:26 +0100 Subject: [PATCH 04/12] Reformat files. --- .../convenience/mqtt/client/MqttOptionService.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java b/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java index 2d8c8dd3..216b7376 100644 --- a/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java +++ b/agrirouter-sdk-java-convenience/src/main/java/com/dke/data/agrirouter/convenience/mqtt/client/MqttOptionService.java @@ -8,15 +8,14 @@ import com.dke.data.agrirouter.api.exception.CouldNotCreateMqttOptionException; import com.dke.data.agrirouter.impl.EnvironmentalService; import com.dke.data.agrirouter.impl.common.ssl.KeyStoreCreationService; -import org.eclipse.paho.client.mqttv3.MqttConnectOptions; - -import javax.net.SocketFactory; -import javax.net.ssl.KeyManagerFactory; -import javax.net.ssl.SSLContext; import java.security.KeyManagementException; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.UnrecoverableKeyException; +import javax.net.SocketFactory; +import javax.net.ssl.KeyManagerFactory; +import javax.net.ssl.SSLContext; +import org.eclipse.paho.client.mqttv3.MqttConnectOptions; /** Creating MQTT options for the MQTT client. */ public class MqttOptionService extends EnvironmentalService { @@ -92,7 +91,7 @@ private SocketFactory getSocketFactory( if (certificationType == CertificationType.PEM) { kmf.init( this.keyStoreCreationService.createAndReturnKeystoreFromPEM(certificate, password), - Constants.DEFAULT_PASSWORD.toCharArray()); + Constants.DEFAULT_PASSWORD.toCharArray()); } else { if (certificationType == CertificationType.P12) { kmf.init( From b87b50cdd59e426d1669c7044f8ba52a6147b869 Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:32:05 +0100 Subject: [PATCH 05/12] Update version for the next release. --- agrirouter-sdk-java-api/pom.xml | 2 +- agrirouter-sdk-java-convenience/pom.xml | 2 +- agrirouter-sdk-java-impl/pom.xml | 2 +- agrirouter-sdk-java-tests/pom.xml | 2 +- pom.xml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/agrirouter-sdk-java-api/pom.xml b/agrirouter-sdk-java-api/pom.xml index 281c7bc8..52838434 100644 --- a/agrirouter-sdk-java-api/pom.xml +++ b/agrirouter-sdk-java-api/pom.xml @@ -6,7 +6,7 @@ com.agrirouter.api agrirouter-sdk-java - 2.0.0-SNAPSHOT + 2.3.0 AGRIROUTER SDK JAVA - API agrirouter-sdk-java-api diff --git a/agrirouter-sdk-java-convenience/pom.xml b/agrirouter-sdk-java-convenience/pom.xml index d1b341de..d2ade9b1 100644 --- a/agrirouter-sdk-java-convenience/pom.xml +++ b/agrirouter-sdk-java-convenience/pom.xml @@ -5,7 +5,7 @@ com.agrirouter.api agrirouter-sdk-java - 2.0.0-SNAPSHOT + 2.3.0 AGRIROUTER SDK JAVA - CONVENIENCE agrirouter-sdk-java-convenience diff --git a/agrirouter-sdk-java-impl/pom.xml b/agrirouter-sdk-java-impl/pom.xml index e72ac42c..60e3fd1c 100644 --- a/agrirouter-sdk-java-impl/pom.xml +++ b/agrirouter-sdk-java-impl/pom.xml @@ -6,7 +6,7 @@ com.agrirouter.api agrirouter-sdk-java - 2.0.0-SNAPSHOT + 2.3.0 AGRIROUTER SDK JAVA - IMPL agrirouter-sdk-java-impl diff --git a/agrirouter-sdk-java-tests/pom.xml b/agrirouter-sdk-java-tests/pom.xml index 080d0a9b..6f34fdac 100644 --- a/agrirouter-sdk-java-tests/pom.xml +++ b/agrirouter-sdk-java-tests/pom.xml @@ -5,7 +5,7 @@ agrirouter-sdk-java com.agrirouter.api - 2.0.0-SNAPSHOT + 2.3.0 4.0.0 AGRIROUTER SDK JAVA - TESTS diff --git a/pom.xml b/pom.xml index 8c185a92..78dc2922 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.agrirouter.api agrirouter-sdk-java - 2.0.0-SNAPSHOT + 2.3.0 pom AGRIROUTER SDK JAVA From 448de8664d9b80bf6396b9233b8d6c31239872ef Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:34:30 +0100 Subject: [PATCH 06/12] Update build configs. --- .github/workflows/codeql-analysis.yml | 2 -- .github/workflows/continuous_integration.yml | 14 ++++++++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 69ad51b4..1fd9387e 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -4,11 +4,9 @@ on: push: branches: - "main" - - "releases/**" pull_request: branches: - "main" - - "releases/**" jobs: analyze: diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml index 06a83aa9..e840be69 100644 --- a/.github/workflows/continuous_integration.yml +++ b/.github/workflows/continuous_integration.yml @@ -4,11 +4,9 @@ on: push: branches: - "main" - - "releases/**" pull_request: branches: - "main" - - "releases/**" jobs: build_jdk8: @@ -107,6 +105,18 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true + build_jdk17: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 17 + uses: actions/setup-java@v1 + with: + java-version: 17 + - name: Build with Maven + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true integration_test: runs-on: ubuntu-latest steps: From 3513474e47717da20e1afd3d88c21b420204efbf Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:42:00 +0100 Subject: [PATCH 07/12] Update workflow file. --- .github/workflows/continuous_integration.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml index e840be69..da37ed6d 100644 --- a/.github/workflows/continuous_integration.yml +++ b/.github/workflows/continuous_integration.yml @@ -12,7 +12,7 @@ jobs: build_jdk8: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 8 uses: actions/setup-java@v1 with: @@ -24,7 +24,7 @@ jobs: build_jdk9: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 9 uses: actions/setup-java@v1 with: @@ -36,7 +36,7 @@ jobs: build_jdk10: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 10 uses: actions/setup-java@v1 with: @@ -48,7 +48,7 @@ jobs: build_jdk11: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v1 with: @@ -60,7 +60,7 @@ jobs: build_jdk12: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 12 uses: actions/setup-java@v1 with: @@ -72,7 +72,7 @@ jobs: build_jdk13: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 13 uses: actions/setup-java@v1 with: @@ -84,7 +84,7 @@ jobs: build_jdk14: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 14 uses: actions/setup-java@v1 with: @@ -96,7 +96,7 @@ jobs: build_jdk15: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 15 uses: actions/setup-java@v1 with: @@ -108,7 +108,7 @@ jobs: build_jdk17: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 17 uses: actions/setup-java@v1 with: @@ -120,7 +120,7 @@ jobs: integration_test: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v1 with: From ac1c451402481a1d9040d4f644a19a164fe25a52 Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:46:47 +0100 Subject: [PATCH 08/12] Update workflow file. --- .github/workflows/continuous_integration.yml | 30 +++++++++++++------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml index da37ed6d..342b8879 100644 --- a/.github/workflows/continuous_integration.yml +++ b/.github/workflows/continuous_integration.yml @@ -14,9 +14,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 8 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 1.8 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -26,9 +27,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 9 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 9 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -38,9 +40,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 10 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 10 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -50,9 +53,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 11 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 11 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -62,9 +66,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 12 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 12 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -74,9 +79,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 13 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 13 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -86,9 +92,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 14 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 14 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -98,9 +105,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 15 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 15 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -110,9 +118,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 17 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 17 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -122,9 +131,10 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 11 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 11 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From f7bde40479b0af491bc8ce9b1978ac7ca9227b10 Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:47:50 +0100 Subject: [PATCH 09/12] Update workflow file. --- .github/workflows/continuous_integration.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml index 342b8879..62c3ddb3 100644 --- a/.github/workflows/continuous_integration.yml +++ b/.github/workflows/continuous_integration.yml @@ -16,7 +16,7 @@ jobs: - name: Set up JDK 8 uses: actions/setup-java@v3 with: - java-version: 1.8 + java-version: 8 distribution: zulu - name: Build with Maven env: From 5a3b779548d93282b424940eab3df3c6b8ee27af Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:52:41 +0100 Subject: [PATCH 10/12] Reduce to Java LTS versions. --- .github/workflows/continuous_integration.yml | 78 -------------------- 1 file changed, 78 deletions(-) diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml index 62c3ddb3..a64ca821 100644 --- a/.github/workflows/continuous_integration.yml +++ b/.github/workflows/continuous_integration.yml @@ -22,32 +22,6 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true - build_jdk9: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 9 - uses: actions/setup-java@v3 - with: - java-version: 9 - distribution: zulu - - name: Build with Maven - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true - build_jdk10: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 10 - uses: actions/setup-java@v3 - with: - java-version: 10 - distribution: zulu - - name: Build with Maven - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true build_jdk11: runs-on: ubuntu-latest steps: @@ -61,58 +35,6 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true - build_jdk12: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 12 - uses: actions/setup-java@v3 - with: - java-version: 12 - distribution: zulu - - name: Build with Maven - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true - build_jdk13: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 13 - uses: actions/setup-java@v3 - with: - java-version: 13 - distribution: zulu - - name: Build with Maven - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true - build_jdk14: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 14 - uses: actions/setup-java@v3 - with: - java-version: 14 - distribution: zulu - - name: Build with Maven - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true - build_jdk15: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 15 - uses: actions/setup-java@v3 - with: - java-version: 15 - distribution: zulu - - name: Build with Maven - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: mvn -B package --file pom.xml --settings ci/settings.xml -DskipTests=true build_jdk17: runs-on: ubuntu-latest steps: From 6559837b6b1a608a3db8dc665d22d05000a470a5 Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:58:10 +0100 Subject: [PATCH 11/12] Update workflow files. Remove CodeQL since the checks are integrated by default. --- .github/workflows/codeql-analysis.yml | 41 --------------------------- .github/workflows/release.yml | 5 ++-- 2 files changed, 3 insertions(+), 43 deletions(-) delete mode 100644 .github/workflows/codeql-analysis.yml diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml deleted file mode 100644 index 1fd9387e..00000000 --- a/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: "CodeQL" - -on: - push: - branches: - - "main" - pull_request: - branches: - - "main" - -jobs: - analyze: - name: Analyze - runs-on: ubuntu-latest - - strategy: - fail-fast: false - matrix: - language: ['java'] - - steps: - - name: Checkout repository - uses: actions/checkout@v2 - with: - fetch-depth: 2 - - - run: git checkout HEAD^2 - if: ${{ github.event_name == 'pull_request' }} - - - name: Initialize CodeQL - uses: github/codeql-action/init@v1 - with: - languages: ${{ matrix.language }} - - - name: Build project - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: mvn -B clean package --file pom.xml --settings ci/settings.xml -DskipTests=true - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 35c7278c..260c2dbb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,11 +10,12 @@ jobs: deploy: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up JDK - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 1.8 + distribution: zulu - name: Build with Maven env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 6caf52eee5031af6139ff3515d8385836dbfb469 Mon Sep 17 00:00:00 2001 From: Sascha Doemer Date: Thu, 9 Mar 2023 18:58:34 +0100 Subject: [PATCH 12/12] Update workflow files. Remove CodeQL since the checks are integrated by default. --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 260c2dbb..85946b40 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,7 +14,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v3 with: - java-version: 1.8 + java-version: 8 distribution: zulu - name: Build with Maven env: