Jenkins .JKS文件可用于某些工作?

问题描述

在build.gradle和项目的单独报告文件中都有格式


        Properties prop = new Properties();
        prop.load(new FileInputStream(new File("./src/main/resources/config.properties")));
       
        String truststore = "/var/lib/jenkins/tmp/certs/rds-truststore.jks";
        String truststorePassword = prop.getProperty("truststorePassword");

        System.setProperty('javax.net.ssl.trustStore',truststore)
        System.setProperty('javax.net.ssl.trustStorePassword',truststorePassword)

}

至于我的记者课,

            String connectionString = String.format(template,username,password,clusterEndpoint,readPreference);
    
            String truststore = "/var/lib/jenkins/tmp/certs/rds-truststore.jks";
            String truststorePassword = prop.getProperty("truststorePassword");
    
            System.out.println("got here");

            System.setProperty("javax.net.ssl.trustStore",truststore);
            System.setProperty("javax.net.ssl.trustStorePassword",truststorePassword);
                System.out.println(System.setProperty("javax.net.ssl.trustStore",truststore));
            System.out.println(System.setProperty("javax.net.ssl.trustStorePassword",truststorePassword));
            
            MongoClientURI clientURI = new MongoClientURI(connectionString);
            

可用于某些工作,因为我们有-P的参数,其中包括

test {

println 'we do this next'

useTestNG() {
if(project.hasProperty('somejob')){
    suites  "test_Files/testfile/test.xml"

}
if(project.hasProperty('someotherjob')){
    suites  "test_Files/someotherfiles/file/test.xml"
}

在Jenkins中,我有一个自由式项目,该项目下载rds-combined-ca-bundle.pem并使用自定义密码trustscore作为ENV变量将其转换为JKS存储。

该项目结构在大多数测试用例中都可以正常工作,但是当我使用不同的.xmls实现不同的文件夹时,我在Jenkins中遇到此错误,我感到Jenkins都找不到.jks文件,但是对于我不确定build.gradle中的其他测试是否正常,因为我不确定是build.gradle格式还是我与.JKS文件的连接方式

> Task :test org.gradle.api.internal.tasks.testing.TestSuiteExecutionException: Could not complete execution for Gradle Test Executor 1. at org.gradle.api.internal.tasks.testing.SuiteTestClassprocessor.stop(SuiteTestClassprocessor.java:63) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.gradle.internal.dispatch.Reflectiondispatch.dispatch(Reflectiondispatch.java:36) at org.gradle.internal.dispatch.Reflectiondispatch.dispatch(Reflectiondispatch.java:24) at org.gradle.internal.dispatch.ContextClassLoaderdispatch.dispatch(ContextClassLoaderdispatch.java:33) at org.gradle.internal.dispatch.ProxydispatchAdapter$dispatchingInvocationHandler.invoke(ProxydispatchAdapter.java:94) at com.sun.proxy.$Proxy2.stop(UnkNown Source) at org.gradle.api.internal.tasks.testing.worker.TestWorker.stop(TestWorker.java:133) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.gradle.internal.dispatch.Reflectiondispatch.dispatch(Reflectiondispatch.java:36) at org.gradle.internal.dispatch.Reflectiondispatch.dispatch(Reflectiondispatch.java:24) at org.gradle.internal.remote.internal.hub.MessageHubBackedobjectConnection$dispatchWrapper.dispatch(MessageHubBackedobjectConnection.java:182) at org.gradle.internal.remote.internal.hub.MessageHubBackedobjectConnection$dispatchWrapper.dispatch(MessageHubBackedobjectConnection.java:164) at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56) at java.lang.Thread.run(Thread.java:748) Caused by: org.testng.TestNGException: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:325) at org.testng.TestNG.run(TestNG.java:1036) at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassprocessor.runTests(TestNGTestClassprocessor.java:141) at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassprocessor.stop(TestNGTestClassprocessor.java:90) at org.gradle.api.internal.tasks.testing.SuiteTestClassprocessor.stop(SuiteTestClassprocessor.java:61) ... 25 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200)

我担心的是,使用同一作业,我可以运行一个xml文件,但是当我更改为其他参数(即gradle clean test -PsomeOtherjob2 -i)时,它无法连接到mongodb,我们得到了>

Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty错误

会喜欢一些想法,非常感谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)