tôi quản lý để có được đoạn mã python sau để tạo một người dùng với ssh-key:
import json
import requests
def main():
data = {
'credentials': {
'scope': "GLOBAL",
'username': "jenkins",
'privateKeySource': {
'privateKey': "-----BEGIN RSA PRIVATE KEY-----\nX\n-----END RSA PRIVATE KEY-----",
'stapler-class': "com.cloudbees.jenkins.plugins.sshcredentials.impl.BasicSSHUserPrivateKey$DirectEntryPrivateKeySource"
},
'stapler-class': "com.cloudbees.jenkins.plugins.sshcredentials.impl.BasicSSHUserPrivateKey"
}
}
payload = {
'json': json.dumps(data),
'Submit': "OK",
}
r = requests.post("http://%s:%d/credential-store/domain/_/createCredentials" % (HOSTNAME, 8080), data=payload)
if r.status_code != requests.codes.ok:
print r.text
Nó giống như giao diện REST, ngoại trừ việc phải biết nội bộ của mã và tên của các đối tượng cần giải mã.
Tôi đang cố định cấu hình jenkins từ tập lệnh không thể đọc (chạy bên ngoài máy chủ jenkins); vì cli java không hỗ trợ tạo thông tin đăng nhập, đoạn mã python dường như là cách để đi.
Nguồn
2015-11-19 02:46:51
Đảm bảo bạn đang sử dụng cơ sở dữ liệu người dùng riêng của _Jenkins_ làm phương thức xác thực (_security realm_), nếu không nó sẽ không hoạt động. – kenorb