From 013e4154f22953ad241df5d11dc4b6f53bf16227 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Wed, 26 May 2021 16:18:04 +1000 Subject: [PATCH 01/19] Investigate crypto provider issue. --- eng/pipelines/templates/jobs/ci.tests.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 5e971de9a73f..fa2c6d1dd809 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -55,6 +55,10 @@ jobs: - template: ../variables/globals.yml steps: + - script: | + ls $JAVA_HOME/jre/lib/security + displayName: Dump security profiles + - template: /eng/common/pipelines/templates/steps/verify-agent-os.yml parameters: AgentImage: $(OSVmImage) From e5c39f48107b3305342196916964a93c03fa10e9 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Wed, 26 May 2021 16:45:30 +1000 Subject: [PATCH 02/19] Dump security policy. --- eng/pipelines/templates/jobs/ci.tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index fa2c6d1dd809..339295c303be 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -56,8 +56,8 @@ jobs: steps: - script: | - ls $JAVA_HOME/jre/lib/security - displayName: Dump security profiles + cat $JAVA_HOME/jre/conf/security/java.security + displayName: Dump security policy - template: /eng/common/pipelines/templates/steps/verify-agent-os.yml parameters: From 312a83335774ea85b692917ea891de1f122d75a3 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Wed, 26 May 2021 16:54:41 +1000 Subject: [PATCH 03/19] Try different path for policy. --- eng/pipelines/templates/jobs/ci.tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 339295c303be..9a6b2d7f781d 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -56,7 +56,7 @@ jobs: steps: - script: | - cat $JAVA_HOME/jre/conf/security/java.security + cat $JAVA_HOME/conf/security/java.security displayName: Dump security policy - template: /eng/common/pipelines/templates/steps/verify-agent-os.yml From 5d8ec83091d1549579b83ca7021811e91fb0c8b6 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Thu, 27 May 2021 19:23:00 +1000 Subject: [PATCH 04/19] Dump JRE folder. --- eng/pipelines/templates/jobs/ci.tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 9a6b2d7f781d..146690a49e41 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -56,8 +56,8 @@ jobs: steps: - script: | - cat $JAVA_HOME/conf/security/java.security - displayName: Dump security policy + ls -R $JAVA_HOME + displayName: Dump JRE folder - template: /eng/common/pipelines/templates/steps/verify-agent-os.yml parameters: From d1217921483fbba9e0731af0ec42301fc705ee05 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 07:02:31 +1000 Subject: [PATCH 05/19] Fix up verify agent OS usage. --- eng/pipelines/templates/jobs/ci.tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index a7e7922075bb..0c9e945c49fe 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -58,7 +58,7 @@ jobs: - script: | ls -R $JAVA_HOME displayName: Dump JRE folder - - template: /eng/common/pipelines/templates/steps/verify-agent-os.yml + - template: /eng/pipelines/templates/steps/initialize-test-environment.yml parameters: Artifacts: ${{ parameters.Artifacts }} From c87c9336cbf8b91c7c31296d89ef85eb3da67c36 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 07:54:27 +1000 Subject: [PATCH 06/19] Switch to DevOps hosted pool to see if the problem still exists there. --- eng/pipelines/templates/stages/platform-matrix.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/pipelines/templates/stages/platform-matrix.json b/eng/pipelines/templates/stages/platform-matrix.json index 039a6683c630..fc501e70204c 100644 --- a/eng/pipelines/templates/stages/platform-matrix.json +++ b/eng/pipelines/templates/stages/platform-matrix.json @@ -4,8 +4,8 @@ }, "matrix": { "Agent": { - "ubuntu-18.04": { "OSVmImage": "MMSUbuntu18.04", "Pool": "azsdk-pool-mms-ubuntu-1804-general" }, - "windows-2019": { "OSVmImage": "MMS2019", "Pool": "azsdk-pool-mms-win-2019-general" }, + "ubuntu-18.04": { "OSVmImage": "ubuntu-18.04", "Pool": "Azure Pipelines" }, + "windows-2019": { "OSVmImage": "windows-2019", "Pool": "Azure Pipelines" }, "macOS-10.15": { "OSVmImage": "macOS-10.15", "Pool": "Azure Pipelines" } }, "JavaTestVersion": [ "1.8", "1.11" ], From 2ade6de8e6caa4bbfd74e005cea00f1399cb883d Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 08:20:56 +1000 Subject: [PATCH 07/19] Remove dump JRE folder. --- eng/pipelines/templates/jobs/ci.tests.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 0c9e945c49fe..ca7a1c3c1439 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -55,10 +55,6 @@ jobs: - template: ../variables/globals.yml steps: - - script: | - ls -R $JAVA_HOME - displayName: Dump JRE folder - - template: /eng/pipelines/templates/steps/initialize-test-environment.yml parameters: Artifacts: ${{ parameters.Artifacts }} From fe02ab2437c3a2b248e99156931e7bfd371c81c6 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 08:59:39 +1000 Subject: [PATCH 08/19] Re-enable test. --- .../keyvault/keys/cryptography/CryptographyClientTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java index 069e444dc4d1..f76af4cc179f 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java @@ -269,7 +269,7 @@ public void signVerifyEc(HttpClient httpClient, CryptographyServiceVersion servi @Test public void signVerifyEcLocal() throws NoSuchAlgorithmException, InvalidAlgorithmParameterException { // TODO: Uncomment after fixing https://github.com/Azure/azure-sdk-for-java/issues/21677 - /*Map curveToSignature = new HashMap<>(); + Map curveToSignature = new HashMap<>(); curveToSignature.put(KeyCurveName.P_256, SignatureAlgorithm.ES256); curveToSignature.put(KeyCurveName.P_384, SignatureAlgorithm.ES384); curveToSignature.put(KeyCurveName.P_521, SignatureAlgorithm.ES512); @@ -318,7 +318,7 @@ public void signVerifyEcLocal() throws NoSuchAlgorithmException, InvalidAlgorith Boolean verifyStatus = cryptoClient.verifyData(curveToSignature.get(crv), plainText, signature).isValid(); assertTrue(verifyStatus); - }*/ + } } @Test From 6ce2e5ce75c1b158593b3b7ad127bfdc90f54231 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 09:16:46 +1000 Subject: [PATCH 09/19] Revert "Changed KV cryptography tests to avoid using a hardcoded security provider. (#21703)" This reverts commit aa472e0464ceeaf8455c7e18090477a642eeab44. --- .../cryptography/CryptographyClientTest.java | 69 ++++--------------- 1 file changed, 14 insertions(+), 55 deletions(-) diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java index f76af4cc179f..f921188a84e7 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java @@ -13,7 +13,7 @@ import com.azure.security.keyvault.keys.cryptography.models.KeyWrapAlgorithm; import com.azure.security.keyvault.keys.cryptography.models.SignatureAlgorithm; import com.azure.security.keyvault.keys.models.JsonWebKey; -//import com.azure.security.keyvault.keys.models.KeyCurveName; +import com.azure.security.keyvault.keys.models.KeyCurveName; import com.azure.security.keyvault.keys.models.KeyOperation; import com.azure.security.keyvault.keys.models.KeyVaultKey; import org.junit.jupiter.api.Test; @@ -21,22 +21,21 @@ import org.junit.jupiter.params.provider.MethodSource; import java.security.InvalidAlgorithmParameterException; -//import java.security.KeyPair; -//import java.security.KeyPairGenerator; +import java.security.KeyPair; +import java.security.KeyPairGenerator; import java.security.NoSuchAlgorithmException; -//import java.security.Provider; -//import java.security.Security; -//import java.security.spec.ECGenParameterSpec; +import java.security.Provider; +import java.security.Security; +import java.security.spec.ECGenParameterSpec; import java.util.Arrays; -//import java.util.HashMap; +import java.util.HashMap; import java.util.List; -//import java.util.Map; +import java.util.Map; import java.util.Random; import static com.azure.security.keyvault.keys.cryptography.TestHelper.DISPLAY_NAME_WITH_ARGUMENTS; import static org.junit.jupiter.api.Assertions.assertArrayEquals; import static org.junit.jupiter.api.Assertions.assertTrue; -//import static org.junit.jupiter.api.Assertions.fail; public class CryptographyClientTest extends CryptographyClientTestBase { private KeyClient client; @@ -203,8 +202,7 @@ public void signVerifyRsa(HttpClient httpClient, CryptographyServiceVersion serv @ParameterizedTest(name = DISPLAY_NAME_WITH_ARGUMENTS) @MethodSource("com.azure.security.keyvault.keys.cryptography.TestHelper#getTestParameters") public void signVerifyEc(HttpClient httpClient, CryptographyServiceVersion serviceVersion) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException { - // TODO: Uncomment after fixing https://github.com/Azure/azure-sdk-for-java/issues/21677 - /*initializeKeyClient(httpClient); + initializeKeyClient(httpClient); Map curveToSignature = new HashMap<>(); curveToSignature.put(KeyCurveName.P_256, SignatureAlgorithm.ES256); curveToSignature.put(KeyCurveName.P_384, SignatureAlgorithm.ES384); @@ -218,28 +216,9 @@ public void signVerifyEc(HttpClient httpClient, CryptographyServiceVersion servi curveToSpec.put(KeyCurveName.P_256K, "secp256k1"); List curveList = Arrays.asList(KeyCurveName.P_256, KeyCurveName.P_384, KeyCurveName.P_521, KeyCurveName.P_256K); - String algorithmName = "EC"; - Provider[] providers = Security.getProviders(); - Provider provider = null; - - for (Provider currentProvider: providers) { - if (currentProvider.containsValue(algorithmName)) { - provider = currentProvider; - - break; - } - } - - if (provider == null) { - for (Provider currentProvider : providers) { - System.out.println(currentProvider.getName()); - } - - fail(String.format("No suitable security provider for algorithm %s was found.", algorithmName)); - } - + Provider provider = Security.getProvider("SunEC"); for (KeyCurveName crv : curveList) { - final KeyPairGenerator generator = KeyPairGenerator.getInstance(algorithmName, provider); + final KeyPairGenerator generator = KeyPairGenerator.getInstance("EC", provider); ECGenParameterSpec gps = new ECGenParameterSpec(curveToSpec.get(crv)); generator.initialize(gps); KeyPair keyPair = generator.generateKeyPair(); @@ -263,12 +242,11 @@ public void signVerifyEc(HttpClient httpClient, CryptographyServiceVersion servi if (!interceptorManager.isPlaybackMode()) { assertTrue(verifyStatus); } - }*/ + } } @Test public void signVerifyEcLocal() throws NoSuchAlgorithmException, InvalidAlgorithmParameterException { - // TODO: Uncomment after fixing https://github.com/Azure/azure-sdk-for-java/issues/21677 Map curveToSignature = new HashMap<>(); curveToSignature.put(KeyCurveName.P_256, SignatureAlgorithm.ES256); curveToSignature.put(KeyCurveName.P_384, SignatureAlgorithm.ES384); @@ -282,28 +260,9 @@ public void signVerifyEcLocal() throws NoSuchAlgorithmException, InvalidAlgorith curveToSpec.put(KeyCurveName.P_256K, "secp256k1"); List curveList = Arrays.asList(KeyCurveName.P_256, KeyCurveName.P_384, KeyCurveName.P_521, KeyCurveName.P_256K); - String algorithmName = "EC"; - Provider[] providers = Security.getProviders(); - Provider provider = null; - - for (Provider currentProvider: providers) { - if (currentProvider.containsValue(algorithmName)) { - provider = currentProvider; - - break; - } - } - - if (provider == null) { - for (Provider currentProvider : providers) { - System.out.println(currentProvider.getName()); - } - - fail(String.format("No suitable security provider for algorithm %s was found.", algorithmName)); - } - + Provider provider = Security.getProvider("SunEC"); for (KeyCurveName crv : curveList) { - final KeyPairGenerator generator = KeyPairGenerator.getInstance(algorithmName, provider); + final KeyPairGenerator generator = KeyPairGenerator.getInstance("EC", provider); ECGenParameterSpec gps = new ECGenParameterSpec(curveToSpec.get(crv)); generator.initialize(gps); KeyPair keyPair = generator.generateKeyPair(); From 10ee7cb6400a41b1001c06ce0eb76f442509fa7e Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 10:37:35 +1000 Subject: [PATCH 10/19] Disable secp256k1 curve. --- .../keyvault/keys/cryptography/CryptographyClientTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java index f921188a84e7..cdc6367a2dcc 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java @@ -257,7 +257,7 @@ public void signVerifyEcLocal() throws NoSuchAlgorithmException, InvalidAlgorith curveToSpec.put(KeyCurveName.P_256, "secp256r1"); curveToSpec.put(KeyCurveName.P_384, "secp384r1"); curveToSpec.put(KeyCurveName.P_521, "secp521r1"); - curveToSpec.put(KeyCurveName.P_256K, "secp256k1"); + //curveToSpec.put(KeyCurveName.P_256K, "secp256k1"); List curveList = Arrays.asList(KeyCurveName.P_256, KeyCurveName.P_384, KeyCurveName.P_521, KeyCurveName.P_256K); Provider provider = Security.getProvider("SunEC"); From e13d6158b53b6a3e8e23645afea71272a3620a71 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 11:27:12 +1000 Subject: [PATCH 11/19] List contents of JDK bin. --- eng/pipelines/templates/jobs/ci.tests.yml | 3 +++ .../keyvault/keys/cryptography/CryptographyClientTest.java | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index ca7a1c3c1439..2bf61025b53b 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -55,6 +55,9 @@ jobs: - template: ../variables/globals.yml steps: + - script: | + ls $JAVA_HOME + - template: /eng/pipelines/templates/steps/initialize-test-environment.yml parameters: Artifacts: ${{ parameters.Artifacts }} diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java index cdc6367a2dcc..f921188a84e7 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java @@ -257,7 +257,7 @@ public void signVerifyEcLocal() throws NoSuchAlgorithmException, InvalidAlgorith curveToSpec.put(KeyCurveName.P_256, "secp256r1"); curveToSpec.put(KeyCurveName.P_384, "secp384r1"); curveToSpec.put(KeyCurveName.P_521, "secp521r1"); - //curveToSpec.put(KeyCurveName.P_256K, "secp256k1"); + curveToSpec.put(KeyCurveName.P_256K, "secp256k1"); List curveList = Arrays.asList(KeyCurveName.P_256, KeyCurveName.P_384, KeyCurveName.P_521, KeyCurveName.P_256K); Provider provider = Security.getProvider("SunEC"); From 0106620a933a447ba23633cb856f3d62a2d06f82 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 11:41:12 +1000 Subject: [PATCH 12/19] List bin folder. --- eng/pipelines/templates/jobs/ci.tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 2bf61025b53b..8acf22f3d803 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -56,7 +56,7 @@ jobs: steps: - script: | - ls $JAVA_HOME + ls $JAVA_HOME/bin - template: /eng/pipelines/templates/steps/initialize-test-environment.yml parameters: From 2069fba1154f15f9f344ecb4d84db67a5cb9ff8c Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 13:26:28 +1000 Subject: [PATCH 13/19] Add code to dump providers. --- eng/pipelines/templates/jobs/ci.tests.yml | 13 +++- java-security/demo/pom.xml | 75 +++++++++++++++++++ .../demo/src/main/java/com/example/App.java | 27 +++++++ .../src/test/java/com/example/AppTest.java | 20 +++++ 4 files changed, 133 insertions(+), 2 deletions(-) create mode 100644 java-security/demo/pom.xml create mode 100644 java-security/demo/src/main/java/com/example/App.java create mode 100644 java-security/demo/src/test/java/com/example/AppTest.java diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 8acf22f3d803..41319c2de69f 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -55,8 +55,17 @@ jobs: - template: ../variables/globals.yml steps: - - script: | - ls $JAVA_HOME/bin + - task: Maven@3 + displayName: 'Print security providers' + inputs: + mavenPomFile: 'java-security/demo/pom.xml' + goals: 'compile exec:java' + javaHomeOption: 'JDKVersion' + jdkVersionOption: '11' + jdkArchitectureOption: 'x64' + options: '-Dexec.mainClass="com.example.App"' + publishJUnitResults: false + - template: /eng/pipelines/templates/steps/initialize-test-environment.yml parameters: diff --git a/java-security/demo/pom.xml b/java-security/demo/pom.xml new file mode 100644 index 000000000000..b500132c7b16 --- /dev/null +++ b/java-security/demo/pom.xml @@ -0,0 +1,75 @@ + + + + 4.0.0 + + com.example + demo + 1.0-SNAPSHOT + + demo + + http://www.example.com + + + UTF-8 + 1.7 + 1.7 + + + + + junit + junit + 4.11 + test + + + + + + + + + maven-clean-plugin + 3.1.0 + + + + maven-resources-plugin + 3.0.2 + + + maven-compiler-plugin + 3.8.0 + + + maven-surefire-plugin + 2.22.1 + + + maven-jar-plugin + 3.0.2 + + + maven-install-plugin + 2.5.2 + + + maven-deploy-plugin + 2.8.2 + + + + maven-site-plugin + 3.7.1 + + + maven-project-info-reports-plugin + 3.0.0 + + + + + diff --git a/java-security/demo/src/main/java/com/example/App.java b/java-security/demo/src/main/java/com/example/App.java new file mode 100644 index 000000000000..886cf561efac --- /dev/null +++ b/java-security/demo/src/main/java/com/example/App.java @@ -0,0 +1,27 @@ +package com.example; + +import java.security.KeyPairGenerator; +import java.security.NoSuchAlgorithmException; +import java.security.Provider; +import java.security.Security; +import java.util.Arrays; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) throws NoSuchAlgorithmException + { + System.out.println(Arrays.toString(Security.getProviders())); + + Provider provider = Security.getProvider("SunEC"); + + System.out.println(provider); + + KeyPairGenerator generator = KeyPairGenerator.getInstance("EC", provider); + + System.out.println(generator); + } +} diff --git a/java-security/demo/src/test/java/com/example/AppTest.java b/java-security/demo/src/test/java/com/example/AppTest.java new file mode 100644 index 000000000000..22a94ca6f01c --- /dev/null +++ b/java-security/demo/src/test/java/com/example/AppTest.java @@ -0,0 +1,20 @@ +package com.example; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +} From 2c6b50bc09074cc3f339d08b97e8fc3cd5ee31ce Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 13:33:20 +1000 Subject: [PATCH 14/19] Fix indentation. --- eng/pipelines/templates/jobs/ci.tests.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 41319c2de69f..8fd3f251c5f1 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -55,16 +55,16 @@ jobs: - template: ../variables/globals.yml steps: - - task: Maven@3 - displayName: 'Print security providers' - inputs: - mavenPomFile: 'java-security/demo/pom.xml' - goals: 'compile exec:java' - javaHomeOption: 'JDKVersion' - jdkVersionOption: '11' - jdkArchitectureOption: 'x64' - options: '-Dexec.mainClass="com.example.App"' - publishJUnitResults: false + - task: Maven@3 + displayName: 'Print security providers' + inputs: + mavenPomFile: 'java-security/demo/pom.xml' + goals: 'compile exec:java' + javaHomeOption: 'JDKVersion' + jdkVersionOption: '11' + jdkArchitectureOption: 'x64' + options: '-Dexec.mainClass="com.example.App"' + publishJUnitResults: false - template: /eng/pipelines/templates/steps/initialize-test-environment.yml From 87be5610de8f95eddc0cd2071cbf24500c2db72a Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 13:40:21 +1000 Subject: [PATCH 15/19] Move test app to after checkout. --- eng/pipelines/templates/jobs/ci.tests.yml | 24 +++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/eng/pipelines/templates/jobs/ci.tests.yml b/eng/pipelines/templates/jobs/ci.tests.yml index 8fd3f251c5f1..0f53558205d6 100644 --- a/eng/pipelines/templates/jobs/ci.tests.yml +++ b/eng/pipelines/templates/jobs/ci.tests.yml @@ -55,18 +55,6 @@ jobs: - template: ../variables/globals.yml steps: - - task: Maven@3 - displayName: 'Print security providers' - inputs: - mavenPomFile: 'java-security/demo/pom.xml' - goals: 'compile exec:java' - javaHomeOption: 'JDKVersion' - jdkVersionOption: '11' - jdkArchitectureOption: 'x64' - options: '-Dexec.mainClass="com.example.App"' - publishJUnitResults: false - - - template: /eng/pipelines/templates/steps/initialize-test-environment.yml parameters: Artifacts: ${{ parameters.Artifacts }} @@ -81,6 +69,18 @@ jobs: Options: --batch-mode MavenOptions: $(MemoryOptions) $(LoggingOptions) + - task: Maven@3 + displayName: 'Print security providers' + inputs: + mavenPomFile: 'java-security/demo/pom.xml' + goals: 'compile exec:java' + javaHomeOption: 'JDKVersion' + jdkVersionOption: '11' + jdkArchitectureOption: 'x64' + options: '-Dexec.mainClass="com.example.App"' + publishJUnitResults: false + + - ${{ parameters.PreTestSteps }} - task: PythonScript@0 From be24bbc484a828c79799f0ecd562c6f54f00e577 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 14:02:50 +1000 Subject: [PATCH 16/19] Disable sparse checkout. --- .../steps/initialize-test-environment.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/eng/pipelines/templates/steps/initialize-test-environment.yml b/eng/pipelines/templates/steps/initialize-test-environment.yml index 23ea6624c65b..c7c9a7e4a9c1 100644 --- a/eng/pipelines/templates/steps/initialize-test-environment.yml +++ b/eng/pipelines/templates/steps/initialize-test-environment.yml @@ -12,14 +12,15 @@ parameters: default: false steps: - - template: /eng/common/pipelines/templates/steps/sparse-checkout.yml - parameters: - Paths: - - '**/*.xml' - - 'sdk/${{ parameters.ServiceDirectory }}' - - ${{ if not(parameters.CheckoutRecordings) }}: - - '!sdk/**/test-recordings' - - '!sdk/**/session-records' + - checkout: self + # - template: /eng/common/pipelines/templates/steps/sparse-checkout.yml + # parameters: + # Paths: + # - '**/*.xml' + # - 'sdk/${{ parameters.ServiceDirectory }}' + # - ${{ if not(parameters.CheckoutRecordings) }}: + # - '!sdk/**/test-recordings' + # - '!sdk/**/session-records' - task: UsePythonVersion@0 displayName: 'Use Python 3.6' From 6f3152fd1bb698d025b25fbc1cfe551a4c3bdf47 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 15:14:46 +1000 Subject: [PATCH 17/19] remove more sparse checkout. --- .../steps/initialize-test-environment.yml | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/eng/pipelines/templates/steps/initialize-test-environment.yml b/eng/pipelines/templates/steps/initialize-test-environment.yml index c7c9a7e4a9c1..51070e0296a3 100644 --- a/eng/pipelines/templates/steps/initialize-test-environment.yml +++ b/eng/pipelines/templates/steps/initialize-test-environment.yml @@ -50,14 +50,14 @@ steps: Artifacts: ${{ parameters.Artifacts }} AdditionalModules: ${{ parameters.AdditionalModules }} - - task: PythonScript@0 - displayName: 'Generate directories variable for sparse checkout' - inputs: - scriptPath: 'eng/scripts/generate_from_source_pom.py' - arguments: '--set-pipeline-variable CheckoutDirectories --project-list $(ProjectList)' - workingDirectory: '$(System.DefaultWorkingDirectory)' + # - task: PythonScript@0 + # displayName: 'Generate directories variable for sparse checkout' + # inputs: + # scriptPath: 'eng/scripts/generate_from_source_pom.py' + # arguments: '--set-pipeline-variable CheckoutDirectories --project-list $(ProjectList)' + # workingDirectory: '$(System.DefaultWorkingDirectory)' - - template: /eng/common/pipelines/templates/steps/sparse-checkout.yml - parameters: - SkipDefaultCheckout: true - Paths: $(CheckoutDirectories) + # - template: /eng/common/pipelines/templates/steps/sparse-checkout.yml + # parameters: + # SkipDefaultCheckout: true + # Paths: $(CheckoutDirectories) From 4707e7a4c83a2191b71244b66be3deb4b8ca546c Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Fri, 28 May 2021 15:51:09 +1000 Subject: [PATCH 18/19] Try a different name for the crypto provider. --- .../keyvault/keys/cryptography/CryptographyClientTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java index f921188a84e7..3a45fd1ba7fc 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/test/java/com/azure/security/keyvault/keys/cryptography/CryptographyClientTest.java @@ -216,7 +216,7 @@ public void signVerifyEc(HttpClient httpClient, CryptographyServiceVersion servi curveToSpec.put(KeyCurveName.P_256K, "secp256k1"); List curveList = Arrays.asList(KeyCurveName.P_256, KeyCurveName.P_384, KeyCurveName.P_521, KeyCurveName.P_256K); - Provider provider = Security.getProvider("SunEC"); + Provider provider = Security.getProvider("SunEC version 11"); for (KeyCurveName crv : curveList) { final KeyPairGenerator generator = KeyPairGenerator.getInstance("EC", provider); ECGenParameterSpec gps = new ECGenParameterSpec(curveToSpec.get(crv)); From b00f3ca67a6418c86f3768b2491c994822ffc8d2 Mon Sep 17 00:00:00 2001 From: Mitch Denny Date: Sat, 19 Jun 2021 00:32:21 +1000 Subject: [PATCH 19/19] Add main to newish CI files. --- sdk/deviceupdate/ci.yml | 2 ++ sdk/redisenterprise/ci.yml | 2 ++ sdk/storagecache/ci.yml | 2 ++ 3 files changed, 6 insertions(+) diff --git a/sdk/deviceupdate/ci.yml b/sdk/deviceupdate/ci.yml index d920b8199cf5..f98d69398534 100644 --- a/sdk/deviceupdate/ci.yml +++ b/sdk/deviceupdate/ci.yml @@ -5,6 +5,7 @@ trigger: branches: include: - master + - main - hotfix/* - release/* paths: @@ -15,6 +16,7 @@ pr: branches: include: - master + - main - feature/* - hotfix/* - release/* diff --git a/sdk/redisenterprise/ci.yml b/sdk/redisenterprise/ci.yml index 80b862384635..e50532f61097 100644 --- a/sdk/redisenterprise/ci.yml +++ b/sdk/redisenterprise/ci.yml @@ -4,6 +4,7 @@ trigger: branches: include: - master + - main - hotfix/* - release/* paths: @@ -14,6 +15,7 @@ pr: branches: include: - master + - main - feature/* - hotfix/* - release/* diff --git a/sdk/storagecache/ci.yml b/sdk/storagecache/ci.yml index d324d05d7104..47bb8503bebc 100644 --- a/sdk/storagecache/ci.yml +++ b/sdk/storagecache/ci.yml @@ -4,6 +4,7 @@ trigger: branches: include: - master + - main - hotfix/* - release/* paths: @@ -14,6 +15,7 @@ pr: branches: include: - master + - main - feature/* - hotfix/* - release/*