我有一个正在 Travis CI 实例中构建的库。构建完成后,我希望它使用./gradlew uploadArchives
. 现在的问题是,虽然我可以在本地执行此操作,但 Travis 实例的文件中没有我的服务器密钥.ssh/known_hosts
(它甚至可能没有.ssh/known_hosts
文件。
我uploadArchives
在我的 gradle 配置中使用以下配置:
uploadArchives {
repositories {
mavenDeployer {
pom.packaging = "aar"
pom.groupId = project.CORE_GROUP
pom.version = project.CORE_VERSION_NAME
}
}
}
gradle.taskGraph.beforeTask { Task aTask ->
if (aTask == uploadArchives) {
checkArtifactPublishProperties()
aTask.repositories.mavenDeployer.configuration = configurations.deployerJars
aTask.repositories.mavenDeployer.repository(url: "scp://" + project.publishArtifactHost + ":" + getArtifactTargetDirectory()) {
authentication(userName: project.publishArtifactUsername, privateKey: ext.publishArtifactKeyFile)
}
}
}
我不确定如何将 指定StrictHostKeyChecking=no
为此方法的参数。我的直觉告诉我,我必须将其添加到配置configurations.deployerJars
中,但我不确定如何执行此操作。
有人可以指点我这方面的文档,也许可以提供一个我可以如何去做的样本吗?