2016-02-26 101 views
0

我想詹金斯与AWS设备农场集成到自动化移动设备测试。 所以,我创造了一个IAM用户和连接的devicefarm政策TEH用户。 生成AWS访问密钥ID & AWS秘密密钥ID和provied在詹金斯管理配置。步骤由于中止向例外“AWS上的农场设备运行测试”:javax.net.ssl.SSLHandshakeException:无法生成秘密

But the Post-build Actions to Run Tests on AWS Device Farm leads to below exception. Could anyone be able to help me? 

异常stackstrace是如下:

[AWSDeviceFarm] Using Project 'BMS_OPDVO' 
[AWSDeviceFarm] Using DevicePool 'LG Nexus5' 
[AWSDeviceFarm] Using App '**/target/resources/org.wordpress.android.5.0.apk' 
[AWSDeviceFarm] Archiving artifact 'org.wordpress.android.5.0.apk' 
[AWSDeviceFarm] Uploading org.wordpress.android.5.0.apk to S3 
ERROR: Step ‘Run Tests on AWS Device Farm’ aborted due to exception: 
javax.net.ssl.SSLHandshakeException: Could not generate secret 
    at sun.security.ssl.ECDHCrypt.getAgreedSecret(ECDHCrypt.java:103) 
    at sun.security.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:1067) 
    at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:348) 
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979) 
    at sun.security.ssl.Handshaker.process_record(Handshaker.java:914) 
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062) 
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) 
    at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:290) 
    at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:259) 
    at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:125) 
    at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:319) 
    at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:363) 
    at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:219) 
    at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:195) 
    at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:86) 
    at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:108) 
    at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) 
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82) 
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106) 
    at org.jenkinsci.plugins.awsdevicefarm.AWSDeviceFarm.upload(AWSDeviceFarm.java:359) 
    at org.jenkinsci.plugins.awsdevicefarm.AWSDeviceFarm.upload(AWSDeviceFarm.java:330) 
    at org.jenkinsci.plugins.awsdevicefarm.AWSDeviceFarm.upload(AWSDeviceFarm.java:317) 
    at org.jenkinsci.plugins.awsdevicefarm.AWSDeviceFarm.uploadApp(AWSDeviceFarm.java:211) 
    at org.jenkinsci.plugins.awsdevicefarm.AWSDeviceFarmRecorder.perform(AWSDeviceFarmRecorder.java:287) 
    at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:785) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:726) 
    at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1037) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:671) 
    at hudson.model.Run.execute(Run.java:1766) 
    at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:529) 
    at hudson.model.ResourceController.execute(ResourceController.java:98) 
    at hudson.model.Executor.run(Executor.java:408) 
Caused by: java.security.InvalidKeyException: ECDH key agreement requires ECPublicKey for doPhase 
    at org.bouncycastle.jcajce.provider.asymmetric.ec.KeyAgreementSpi.engineDoPhase(Unknown Source) 
    at javax.crypto.KeyAgreement.doPhase(KeyAgreement.java:567) 
    at sun.security.ssl.ECDHCrypt.getAgreedSecret(ECDHCrypt.java:100) 
    ... 34 more 
+0

欢迎SO。你能正确地设置你的问题吗? – Jannik

+1

@Jannik,谢谢。坦率地说,这是我的第一个问题。我试着用ctrl + k。将尝试从我的下一篇文章更多的格式。 – RamuN

回答

1

唯一的例外是因为詹金斯和S3服务器是没有发生之间的SSL握手的基本。

我已经安装了跳过证书检查插件并重新启动jenkins服务器,忽略ssl握手错误并继续操作。

相关问题