Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 85d50c868b | |||
| 2b4bfbdb39 | |||
| e77a30b2bc | |||
| b8a0c788eb | |||
| 713338b2c3 |
4
dist/npmci.install.js
vendored
4
dist/npmci.install.js
vendored
@@ -10,7 +10,7 @@ exports.install = function (versionArg) {
|
|||||||
version = "4";
|
version = "4";
|
||||||
}
|
}
|
||||||
else if (versionArg == "legacy") {
|
else if (versionArg == "legacy") {
|
||||||
version = "4.0.0";
|
version = "0";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
version = versionArg;
|
version = versionArg;
|
||||||
@@ -25,4 +25,4 @@ exports.install = function (versionArg) {
|
|||||||
return done.promise;
|
return done.promise;
|
||||||
};
|
};
|
||||||
|
|
||||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLmluc3RhbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUN4QixJQUFZLE9BQU8sV0FBTSxpQkFBaUIsQ0FBQyxDQUFBO0FBQzNDLDJCQUFtQixjQUFjLENBQUMsQ0FBQTtBQUV2QixlQUFPLEdBQUcsVUFBQyxVQUFVO0lBQzVCLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1RixJQUFJLE9BQWMsQ0FBQztJQUNuQixFQUFFLENBQUEsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLENBQUEsQ0FBQztRQUNwQixPQUFPLEdBQUcsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFBQyxJQUFJLENBQUMsRUFBRSxDQUFBLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxDQUFBLENBQUM7UUFDOUIsT0FBTyxHQUFHLE9BQU8sQ0FBQTtJQUNyQixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLEdBQUcsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFBQSxDQUFDO0lBQ0YsaUJBQUksQ0FDQSxjQUFjLEdBQUcsT0FBTztRQUN4Qix3QkFBd0IsR0FBRyxPQUFPLENBQ3JDLENBQUM7SUFDRixPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEdBQUcsT0FBTyxHQUFHLDBCQUEwQixDQUFDLENBQUM7SUFDbEYsaUJBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNoQixpQkFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2YsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7QUFDeEIsQ0FBQyxDQUFBIiwiZmlsZSI6Im5wbWNpLmluc3RhbGwuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi9ucG1jaS5wbHVnaW5zXCI7XG5pbXBvcnQge2Jhc2h9IGZyb20gXCIuL25wbWNpLmJhc2hcIjtcblxuZXhwb3J0IGxldCBpbnN0YWxsID0gKHZlcnNpb25BcmcpID0+IHtcbiAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgIHBsdWdpbnMuYmVhdXR5bG9nLmxvZyhcIm5vdyBpbnN0YWxsaW5nIFwiICsgXCJub2RlIFwiLmdyZWVuICsgKFwidmVyc2lvbiBcIiArIHZlcnNpb25BcmcpLnllbGxvdyk7XG4gICAgbGV0IHZlcnNpb246c3RyaW5nO1xuICAgIGlmKHZlcnNpb25BcmcgPT0gXCJsdHNcIil7XG4gICAgICAgIHZlcnNpb24gPSBcIjRcIjtcbiAgICB9IGVsc2UgaWYodmVyc2lvbkFyZyA9PSBcImxlZ2FjeVwiKXtcbiAgICAgICAgdmVyc2lvbiA9IFwiNC4wLjBcIlxuICAgIH0gZWxzZSB7XG4gICAgICAgIHZlcnNpb24gPSB2ZXJzaW9uQXJnO1xuICAgIH07XG4gICAgYmFzaChcbiAgICAgICAgXCJudm0gaW5zdGFsbCBcIiArIHZlcnNpb24gK1xuICAgICAgICBcIiAmJiBudm0gYWxpYXMgZGVmYXVsdCBcIiArIHZlcnNpb25cbiAgICApO1xuICAgIHBsdWdpbnMuYmVhdXR5bG9nLnN1Y2Nlc3MoXCJOb2RlIHZlcnNpb24gXCIgKyB2ZXJzaW9uICsgXCIgc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZCFcIik7XG4gICAgYmFzaChcIm5vZGUgLXZcIik7XG4gICAgYmFzaChcIm5wbSAtdlwiKTtcbiAgICBkb25lLnJlc29sdmUoKTtcbiAgICByZXR1cm4gZG9uZS5wcm9taXNlO1xufSJdfQ==
|
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLmluc3RhbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUN4QixJQUFZLE9BQU8sV0FBTSxpQkFBaUIsQ0FBQyxDQUFBO0FBQzNDLDJCQUFtQixjQUFjLENBQUMsQ0FBQTtBQUV2QixlQUFPLEdBQUcsVUFBQyxVQUFVO0lBQzVCLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1RixJQUFJLE9BQWMsQ0FBQztJQUNuQixFQUFFLENBQUEsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLENBQUEsQ0FBQztRQUNwQixPQUFPLEdBQUcsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFBQyxJQUFJLENBQUMsRUFBRSxDQUFBLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxDQUFBLENBQUM7UUFDOUIsT0FBTyxHQUFHLEdBQUcsQ0FBQTtJQUNqQixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLEdBQUcsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFBQSxDQUFDO0lBQ0YsaUJBQUksQ0FDQSxjQUFjLEdBQUcsT0FBTztRQUN4Qix3QkFBd0IsR0FBRyxPQUFPLENBQ3JDLENBQUM7SUFDRixPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEdBQUcsT0FBTyxHQUFHLDBCQUEwQixDQUFDLENBQUM7SUFDbEYsaUJBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNoQixpQkFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2YsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7QUFDeEIsQ0FBQyxDQUFBIiwiZmlsZSI6Im5wbWNpLmluc3RhbGwuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi9ucG1jaS5wbHVnaW5zXCI7XG5pbXBvcnQge2Jhc2h9IGZyb20gXCIuL25wbWNpLmJhc2hcIjtcblxuZXhwb3J0IGxldCBpbnN0YWxsID0gKHZlcnNpb25BcmcpID0+IHtcbiAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgIHBsdWdpbnMuYmVhdXR5bG9nLmxvZyhcIm5vdyBpbnN0YWxsaW5nIFwiICsgXCJub2RlIFwiLmdyZWVuICsgKFwidmVyc2lvbiBcIiArIHZlcnNpb25BcmcpLnllbGxvdyk7XG4gICAgbGV0IHZlcnNpb246c3RyaW5nO1xuICAgIGlmKHZlcnNpb25BcmcgPT0gXCJsdHNcIil7XG4gICAgICAgIHZlcnNpb24gPSBcIjRcIjtcbiAgICB9IGVsc2UgaWYodmVyc2lvbkFyZyA9PSBcImxlZ2FjeVwiKXtcbiAgICAgICAgdmVyc2lvbiA9IFwiMFwiXG4gICAgfSBlbHNlIHtcbiAgICAgICAgdmVyc2lvbiA9IHZlcnNpb25Bcmc7XG4gICAgfTtcbiAgICBiYXNoKFxuICAgICAgICBcIm52bSBpbnN0YWxsIFwiICsgdmVyc2lvbiArXG4gICAgICAgIFwiICYmIG52bSBhbGlhcyBkZWZhdWx0IFwiICsgdmVyc2lvblxuICAgICk7XG4gICAgcGx1Z2lucy5iZWF1dHlsb2cuc3VjY2VzcyhcIk5vZGUgdmVyc2lvbiBcIiArIHZlcnNpb24gKyBcIiBzdWNjZXNzZnVsbHkgaW5zdGFsbGVkIVwiKTtcbiAgICBiYXNoKFwibm9kZSAtdlwiKTtcbiAgICBiYXNoKFwibnBtIC12XCIpO1xuICAgIGRvbmUucmVzb2x2ZSgpO1xuICAgIHJldHVybiBkb25lLnByb21pc2U7XG59Il19
|
||||||
|
|||||||
9
dist/npmci.prepare.js
vendored
9
dist/npmci.prepare.js
vendored
File diff suppressed because one or more lines are too long
3
dist/npmci.ssh.d.ts
vendored
3
dist/npmci.ssh.d.ts
vendored
@@ -1,3 +1,2 @@
|
|||||||
import "typings-global";
|
import "typings-global";
|
||||||
export declare let ssh: () => void;
|
export declare let ssh: () => any;
|
||||||
export declare let evaluateSshkey: (sshkeyEnvVarArg: any) => void;
|
|
||||||
|
|||||||
26
dist/npmci.ssh.js
vendored
26
dist/npmci.ssh.js
vendored
@@ -1,25 +1,29 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
require("typings-global");
|
require("typings-global");
|
||||||
var plugins = require("./npmci.plugins");
|
var plugins = require("./npmci.plugins");
|
||||||
var sshRegex = /^(.*)\|?(.*)\|?(.*)/;
|
var sshRegex = /^(.*)\|(.*)\|(.*)/;
|
||||||
var sshInstance;
|
var sshInstance;
|
||||||
exports.ssh = function () {
|
exports.ssh = function () {
|
||||||
|
var done = plugins.q.defer();
|
||||||
sshInstance = new plugins.smartssh.SshInstance();
|
sshInstance = new plugins.smartssh.SshInstance();
|
||||||
plugins.smartparam.forEachMinimatch(process.env, "NPMCI_SSHKEY_*", exports.evaluateSshkey);
|
plugins.smartparam.forEachMinimatch(process.env, "NPMCI_SSHKEY_*", evaluateSshEnv);
|
||||||
sshInstance.writeToDisk();
|
sshInstance.writeToDisk();
|
||||||
|
done.resolve();
|
||||||
|
return done.promise;
|
||||||
};
|
};
|
||||||
exports.evaluateSshkey = function (sshkeyEnvVarArg) {
|
var evaluateSshEnv = function (sshkeyEnvVarArg) {
|
||||||
var resultArray = sshRegex.exec(sshkeyEnvVarArg);
|
var resultArray = sshRegex.exec(sshkeyEnvVarArg);
|
||||||
var sshKey = new plugins.smartssh.SshKey();
|
var sshKey = new plugins.smartssh.SshKey();
|
||||||
if (resultArray[1] && resultArray[1] != "undefined")
|
if (notUndefined(resultArray[1]))
|
||||||
sshKey.privKeyBase64 = resultArray[1];
|
|
||||||
var publicKey;
|
|
||||||
if (resultArray[2] && resultArray[2] != "undefined")
|
|
||||||
sshKey.pubKeyBase64 = resultArray[2];
|
|
||||||
var host;
|
|
||||||
if (resultArray[3] && resultArray[3] != "undefined")
|
|
||||||
sshKey.host = resultArray[1];
|
sshKey.host = resultArray[1];
|
||||||
|
if (notUndefined(resultArray[2]))
|
||||||
|
sshKey.privKeyBase64 = resultArray[2];
|
||||||
|
if (notUndefined(resultArray[3]))
|
||||||
|
sshKey.pubKeyBase64 = resultArray[3];
|
||||||
sshInstance.addKey(sshKey);
|
sshInstance.addKey(sshKey);
|
||||||
};
|
};
|
||||||
|
var notUndefined = function (stringArg) {
|
||||||
|
return (stringArg && stringArg != "undefined" && stringArg != "##");
|
||||||
|
};
|
||||||
|
|
||||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLnNzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsUUFBTyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ3hCLElBQVksT0FBTyxXQUFNLGlCQUFpQixDQUFDLENBQUE7QUFFM0MsSUFBSSxRQUFRLEdBQUcscUJBQXFCLENBQUE7QUFDcEMsSUFBSSxXQUF3QyxDQUFDO0FBRWxDLFdBQUcsR0FBRztJQUNiLFdBQVcsR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFDLGdCQUFnQixFQUFDLHNCQUFjLENBQUMsQ0FBQztJQUNqRixXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDOUIsQ0FBQyxDQUFDO0FBRVMsc0JBQWMsR0FBRyxVQUFDLGVBQWU7SUFDeEMsSUFBSSxXQUFXLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNqRCxJQUFJLE1BQU0sR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7SUFFM0MsRUFBRSxDQUFBLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxXQUFXLENBQUM7UUFBQyxNQUFNLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRixJQUFJLFNBQWdCLENBQUM7SUFDckIsRUFBRSxDQUFBLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxXQUFXLENBQUM7UUFBQyxNQUFNLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6RixJQUFJLElBQVcsQ0FBQztJQUNoQixFQUFFLENBQUEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQztRQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWpGLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDL0IsQ0FBQyxDQUFDIiwiZmlsZSI6Im5wbWNpLnNzaC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInR5cGluZ3MtZ2xvYmFsXCI7XG5pbXBvcnQgKiBhcyBwbHVnaW5zIGZyb20gXCIuL25wbWNpLnBsdWdpbnNcIjtcblxubGV0IHNzaFJlZ2V4ID0gL14oLiopXFx8PyguKilcXHw/KC4qKS9cbmxldCBzc2hJbnN0YW5jZTpwbHVnaW5zLnNtYXJ0c3NoLlNzaEluc3RhbmNlO1xuXG5leHBvcnQgbGV0IHNzaCA9ICgpID0+IHtcbiAgICBzc2hJbnN0YW5jZSA9IG5ldyBwbHVnaW5zLnNtYXJ0c3NoLlNzaEluc3RhbmNlKCk7XG4gICAgcGx1Z2lucy5zbWFydHBhcmFtLmZvckVhY2hNaW5pbWF0Y2gocHJvY2Vzcy5lbnYsXCJOUE1DSV9TU0hLRVlfKlwiLGV2YWx1YXRlU3Noa2V5KTtcbiAgICBzc2hJbnN0YW5jZS53cml0ZVRvRGlzaygpO1xufTtcblxuZXhwb3J0IGxldCBldmFsdWF0ZVNzaGtleSA9IChzc2hrZXlFbnZWYXJBcmcpID0+IHtcbiAgICBsZXQgcmVzdWx0QXJyYXkgPSBzc2hSZWdleC5leGVjKHNzaGtleUVudlZhckFyZyk7XG4gICAgbGV0IHNzaEtleSA9IG5ldyBwbHVnaW5zLnNtYXJ0c3NoLlNzaEtleSgpO1xuICAgIFxuICAgIGlmKHJlc3VsdEFycmF5WzFdICYmIHJlc3VsdEFycmF5WzFdICE9IFwidW5kZWZpbmVkXCIpIHNzaEtleS5wcml2S2V5QmFzZTY0ID0gcmVzdWx0QXJyYXlbMV07XG4gICAgbGV0IHB1YmxpY0tleTpzdHJpbmc7XG4gICAgaWYocmVzdWx0QXJyYXlbMl0gJiYgcmVzdWx0QXJyYXlbMl0gIT0gXCJ1bmRlZmluZWRcIikgc3NoS2V5LnB1YktleUJhc2U2NCA9IHJlc3VsdEFycmF5WzJdO1xuICAgIGxldCBob3N0OnN0cmluZztcbiAgICBpZihyZXN1bHRBcnJheVszXSAmJiByZXN1bHRBcnJheVszXSAhPSBcInVuZGVmaW5lZFwiKSBzc2hLZXkuaG9zdCA9IHJlc3VsdEFycmF5WzFdO1xuICAgIFxuICAgIHNzaEluc3RhbmNlLmFkZEtleShzc2hLZXkpO1xufTsiXX0=
|
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLnNzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsUUFBTyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ3hCLElBQVksT0FBTyxXQUFNLGlCQUFpQixDQUFDLENBQUE7QUFFM0MsSUFBSSxRQUFRLEdBQUcsbUJBQW1CLENBQUE7QUFDbEMsSUFBSSxXQUF3QyxDQUFDO0FBRWxDLFdBQUcsR0FBRztJQUNiLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDN0IsV0FBVyxHQUFHLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNqRCxPQUFPLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUMsZ0JBQWdCLEVBQUMsY0FBYyxDQUFDLENBQUM7SUFDakYsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVGLElBQUksY0FBYyxHQUFHLFVBQUMsZUFBZTtJQUNqQyxJQUFJLFdBQVcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pELElBQUksTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUUzQyxFQUFFLENBQUEsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFBQyxNQUFNLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RCxFQUFFLENBQUEsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFBQyxNQUFNLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2RSxFQUFFLENBQUEsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFBQyxNQUFNLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUV0RSxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQy9CLENBQUMsQ0FBQztBQUVGLElBQUksWUFBWSxHQUFHLFVBQUMsU0FBZ0I7SUFDaEMsTUFBTSxDQUFDLENBQUMsU0FBUyxJQUFJLFNBQVMsSUFBSSxXQUFXLElBQUksU0FBUyxJQUFJLElBQUksQ0FBQyxDQUFBO0FBQ3ZFLENBQUMsQ0FBQSIsImZpbGUiOiJucG1jaS5zc2guanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi9ucG1jaS5wbHVnaW5zXCI7XG5cbmxldCBzc2hSZWdleCA9IC9eKC4qKVxcfCguKilcXHwoLiopL1xubGV0IHNzaEluc3RhbmNlOnBsdWdpbnMuc21hcnRzc2guU3NoSW5zdGFuY2U7XG5cbmV4cG9ydCBsZXQgc3NoID0gKCkgPT4ge1xuICAgIGxldCBkb25lID0gcGx1Z2lucy5xLmRlZmVyKCk7XG4gICAgc3NoSW5zdGFuY2UgPSBuZXcgcGx1Z2lucy5zbWFydHNzaC5Tc2hJbnN0YW5jZSgpO1xuICAgIHBsdWdpbnMuc21hcnRwYXJhbS5mb3JFYWNoTWluaW1hdGNoKHByb2Nlc3MuZW52LFwiTlBNQ0lfU1NIS0VZXypcIixldmFsdWF0ZVNzaEVudik7XG4gICAgc3NoSW5zdGFuY2Uud3JpdGVUb0Rpc2soKTtcbiAgICBkb25lLnJlc29sdmUoKTtcbiAgICByZXR1cm4gZG9uZS5wcm9taXNlO1xufTtcblxubGV0IGV2YWx1YXRlU3NoRW52ID0gKHNzaGtleUVudlZhckFyZykgPT4ge1xuICAgIGxldCByZXN1bHRBcnJheSA9IHNzaFJlZ2V4LmV4ZWMoc3Noa2V5RW52VmFyQXJnKTtcbiAgICBsZXQgc3NoS2V5ID0gbmV3IHBsdWdpbnMuc21hcnRzc2guU3NoS2V5KCk7XG4gICAgXG4gICAgaWYobm90VW5kZWZpbmVkKHJlc3VsdEFycmF5WzFdKSkgc3NoS2V5Lmhvc3QgPSByZXN1bHRBcnJheVsxXTtcbiAgICBpZihub3RVbmRlZmluZWQocmVzdWx0QXJyYXlbMl0pKSBzc2hLZXkucHJpdktleUJhc2U2NCA9IHJlc3VsdEFycmF5WzJdO1xuICAgIGlmKG5vdFVuZGVmaW5lZChyZXN1bHRBcnJheVszXSkpIHNzaEtleS5wdWJLZXlCYXNlNjQgPSByZXN1bHRBcnJheVszXTtcbiAgICBcbiAgICBzc2hJbnN0YW5jZS5hZGRLZXkoc3NoS2V5KTtcbn07XG5cbmxldCBub3RVbmRlZmluZWQgPSAoc3RyaW5nQXJnOnN0cmluZykgPT4ge1xuICAgIHJldHVybiAoc3RyaW5nQXJnICYmIHN0cmluZ0FyZyAhPSBcInVuZGVmaW5lZFwiICYmIHN0cmluZ0FyZyAhPSBcIiMjXCIpXG59Il19
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "npmci",
|
"name": "npmci",
|
||||||
"version": "2.1.63",
|
"version": "2.2.0",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -36,7 +36,7 @@
|
|||||||
"smartcli": "^1.0.4",
|
"smartcli": "^1.0.4",
|
||||||
"smartfile": "^4.0.5",
|
"smartfile": "^4.0.5",
|
||||||
"smartparam": "^0.1.1",
|
"smartparam": "^0.1.1",
|
||||||
"smartssh": "^1.1.0",
|
"smartssh": "^1.1.2",
|
||||||
"smartstring": "^2.0.10",
|
"smartstring": "^2.0.10",
|
||||||
"through2": "^2.0.1",
|
"through2": "^2.0.1",
|
||||||
"typings-global": "^1.0.3"
|
"typings-global": "^1.0.3"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ export let install = (versionArg) => {
|
|||||||
if(versionArg == "lts"){
|
if(versionArg == "lts"){
|
||||||
version = "4";
|
version = "4";
|
||||||
} else if(versionArg == "legacy"){
|
} else if(versionArg == "legacy"){
|
||||||
version = "4.0.0"
|
version = "0"
|
||||||
} else {
|
} else {
|
||||||
version = versionArg;
|
version = versionArg;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import "typings-global";
|
|||||||
import * as plugins from "./npmci.plugins";
|
import * as plugins from "./npmci.plugins";
|
||||||
import {bash} from "./npmci.bash";
|
import {bash} from "./npmci.bash";
|
||||||
import * as env from "./npmci.env"
|
import * as env from "./npmci.env"
|
||||||
|
import * as sshModule from "./npmci.ssh"
|
||||||
|
|
||||||
let npm = function(){
|
let npm = function(){
|
||||||
let done = plugins.q.defer();
|
let done = plugins.q.defer();
|
||||||
@@ -46,6 +47,13 @@ let dockerGitlab = function(){
|
|||||||
return done.promise;
|
return done.promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let ssh = function(){
|
||||||
|
let done = plugins.q.defer();
|
||||||
|
sshModule.ssh()
|
||||||
|
.then(done.resolve);
|
||||||
|
return done.promise;
|
||||||
|
}
|
||||||
|
|
||||||
export let prepare = function(serviceArg:string){
|
export let prepare = function(serviceArg:string){
|
||||||
switch (serviceArg) {
|
switch (serviceArg) {
|
||||||
case "npm":
|
case "npm":
|
||||||
|
|||||||
@@ -1,24 +1,29 @@
|
|||||||
import "typings-global";
|
import "typings-global";
|
||||||
import * as plugins from "./npmci.plugins";
|
import * as plugins from "./npmci.plugins";
|
||||||
|
|
||||||
let sshRegex = /^(.*)\|?(.*)\|?(.*)/
|
let sshRegex = /^(.*)\|(.*)\|(.*)/
|
||||||
let sshInstance:plugins.smartssh.SshInstance;
|
let sshInstance:plugins.smartssh.SshInstance;
|
||||||
|
|
||||||
export let ssh = () => {
|
export let ssh = () => {
|
||||||
|
let done = plugins.q.defer();
|
||||||
sshInstance = new plugins.smartssh.SshInstance();
|
sshInstance = new plugins.smartssh.SshInstance();
|
||||||
plugins.smartparam.forEachMinimatch(process.env,"NPMCI_SSHKEY_*",evaluateSshkey);
|
plugins.smartparam.forEachMinimatch(process.env,"NPMCI_SSHKEY_*",evaluateSshEnv);
|
||||||
sshInstance.writeToDisk();
|
sshInstance.writeToDisk();
|
||||||
|
done.resolve();
|
||||||
|
return done.promise;
|
||||||
};
|
};
|
||||||
|
|
||||||
export let evaluateSshkey = (sshkeyEnvVarArg) => {
|
let evaluateSshEnv = (sshkeyEnvVarArg) => {
|
||||||
let resultArray = sshRegex.exec(sshkeyEnvVarArg);
|
let resultArray = sshRegex.exec(sshkeyEnvVarArg);
|
||||||
let sshKey = new plugins.smartssh.SshKey();
|
let sshKey = new plugins.smartssh.SshKey();
|
||||||
|
|
||||||
if(resultArray[1] && resultArray[1] != "undefined") sshKey.privKeyBase64 = resultArray[1];
|
if(notUndefined(resultArray[1])) sshKey.host = resultArray[1];
|
||||||
let publicKey:string;
|
if(notUndefined(resultArray[2])) sshKey.privKeyBase64 = resultArray[2];
|
||||||
if(resultArray[2] && resultArray[2] != "undefined") sshKey.pubKeyBase64 = resultArray[2];
|
if(notUndefined(resultArray[3])) sshKey.pubKeyBase64 = resultArray[3];
|
||||||
let host:string;
|
|
||||||
if(resultArray[3] && resultArray[3] != "undefined") sshKey.host = resultArray[1];
|
|
||||||
|
|
||||||
sshInstance.addKey(sshKey);
|
sshInstance.addKey(sshKey);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let notUndefined = (stringArg:string) => {
|
||||||
|
return (stringArg && stringArg != "undefined" && stringArg != "##")
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user