当前位置:  开发笔记 > 运维 > 正文

来自Gradle和Jenkins的Nexus用户(Android)

如何解决《来自Gradle和Jenkins的Nexus用户(Android)》经验,为你挑选了1个好方法。

我开始使用Jenkins,SCM,Nexus和Android-Gradle进行持续改进.我在Gradle中有一个任务是将AAR文件上传到我的Nexus存储库,如果我从我的计算机执行它,它就可以找到它.任务是' install ',gradle-code如下:

// upload to our nexus repository
uploadArchives {
    repositories {
        // the maven plugin features this deployer
        mavenDeployer {
            // we deploy to the release repository in this case
            repository(url: "https://nexus1.xxxxx.com/nexus/content/repositories/releases") {
                authentication(userName: getRepositoryUsername(), password: getRepositoryPassword())
            }

            // pom project information
            pom.project {
                version android.defaultConfig.versionName
                artifactId 't21-android-commons-utils'
                name 'T21 Android Commons Utils Lib'
                packaging 'aar'
            }
        }
    }
}
task install(dependsOn: uploadArchives)

身份验证函数调用getRepositoryUsername()getRepositoryPassword()以从gradle.properties读取凭据.但我不想在我们的SCM中公开这个文件,它应该不安全.

当我将代码推送到我们的SCM时,Jenkins注意到它并执行一项工作来完成一些gradle-task,包括' install '.它工作正常但" 安装 "无法向Nexus服务器进行身份验证,因为找不到gradle.properties(正如预期的那样).

所以,我想知道我应该怎么做"认证安装从詹金斯的gradle这个任务.

我正在考虑在Nexus中创建一个具有权限的通用Jenkins用户,但我不知道如何在gradle和Jenkins中调用.

我希望能够解释清楚.抱歉我的英语不好......



1> SergiBC..:

我回应自己.

可以使用-Pparameter = value将参数传递给Gradle,这对我很有用.我把它放在Jenkins工作的开关盒中.

现在,凭据在Jenkins Job中,但不在SCM中,因此源代码是干净的凭据.

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有