如何通过REST API或Jenkins CLI创建Jenkins凭据?凭证的类型应该是"secret file",而不是用户名/密码的组合。
这个问题与this question相似,但不是相同或重复的。
发布于 2017-06-07 04:52:54
要通过命令行界面创建Jenkins凭据,您可以使用create-credentials-by-xml
命令:
java -jar jenkins-cli.jar -s <JENKINS_URL> create-credentials-by-xml system::system::jenkins _ < credential-name.xml
了解其语法的最佳方法是手动创建凭据,然后将其转储:
java -jar jenkins-cli.jar -s <JENKINS_URL> get-credentials-as-xml system::system::jenkins _ credential-name > credential-name.xml
然后您可以使用这个XML示例作为模板,它应该是不言而喻的。
发布于 2018-01-04 03:06:43
您可以按如下方式进行操作:
curl -X POST \
https://jenkins.local/job/TEAM-FOLDER/credentials/store/folder/domain/_/createCredentials \
-F secret=@/Users/maksym/secret \
-F 'json={"": "4", "credentials": {"file": "secret", "id": "test",
"description": "HELLO-curl", "stapler-class":
"org.jenkinsci.plugins.plaincredentials.impl.FileCredentialsImpl",
"$class":
"org.jenkinsci.plugins.plaincredentials.impl.FileCredentialsImpl"}}'
发布于 2018-12-20 17:15:39
如果你想更新一个现有的秘密文件,我找到的最简单的方法是删除并重新创建。
一个delete请求,以扩展@lumaks答案(即,使用相同的主机名、文件夹名和凭证id),如下所示:
curl -v -X POST \
-u "user:password" \
https://jenkins.local/job/TEAM-FOLDER/credentials/store/folder/domain/_/credential/test/doDelete
对于已存在和不存在的凭证文件,这将分别返回HTTP状态代码302 Found
或404 Not Found
。
https://stackoverflow.com/questions/43127119
复制相似问题