Git parametrelerini alan Jenkins işlerini programsal olarak oluşturmak için Node.js'yi kullanmaya çalışıyorum.Jenkins Git Eklentisi gönderilmiş parametreleri almıyor
Parametreleri aşağıda gösterildiği gibi posta verileri olarak gönderiyorum. Bununla birlikte, ref
'a hangi değeri atarım önemsiz olursa, Jenkins yapıyı varsayılan parametre değeriyle (işin yapılandırmasında belirtilir) çalıştırır. URL'de sorgu dizeleri olarak parametreler geçmeyi denedim, ancak bu da işe yaramadı.
Jenkins v1.651.1 ve Node v6.2.0 kullanıyorum. Ben node.js bilmiyorum olarak, bu konuda
function makeRequest (object, callback, responseCB, postData) {
var accumulator = '';
var parsedUrl = u.parse('//' + object.url, true, true);
var options = {
hostname: parsedUrl.hostname,
port: object.port || 8080,
path: parsedUrl.path,
method: object.method || 'GET',
auth: getAuthByHost(parsedUrl.hostname)
};
if (object.headers) {
options.headers = object.headers;
}
var response = null;
var req = http.request(options, function(res) {
response = res;
res.on('data', function (data) {
accumulator = accumulator + data.toString();
res.resume();
});
res.on('close', function() {
// first assume accumulator is JSON object
var responseContent;
try {
responseContent = JSON.parse(accumulator);
}
// if not object, use accumulator as string
catch (err) {
responseContent = accumulator;
}
callback(responseContent, response.statusCode);
if (responseCB) {
responseCB(res);
}
});
});
req.on('close', function() {
// first assume accumulator is JSON object
var responseContent;
try {
responseContent = JSON.parse(accumulator);
}
catch (err) {
responseContent = accumulator;
}
callback(responseContent, response.statusCode);
if (responseCB) {
responseCB(response);
}
});
if (postData) {
req.write(postData);
}
req.end();
}
makeRequest yönteminizi paylaşabilir misiniz? –
@Tizkiko, makeRequest işlevini içeren soruyu güncelleştirdi –