add prepare command

This commit is contained in:
2016-06-01 05:42:37 +02:00
parent 34f29bb4b4
commit 8fec378a53
6 changed files with 76 additions and 16 deletions

View File

@@ -1,22 +1,42 @@
import "typings-global";
import * as plugins from "./npmci.plugins";
import {prepare} from "./npmci.prepare";
import {bash} from "./npmci.bash";
let npmrcPrefix:string = "//registry.npmjs.org/:_authToken=";
let npmToken:string = process.env.NPMCITOKEN;
let npmrcFileString = npmrcPrefix + npmToken;
export let publish = () => {
export let publish = (serviceArg:string = "npm") => {
let done = plugins.q.defer();
if(npmToken){
plugins.beautylog.info("found access token");
} else {
plugins.beautylog.error("no access token found! Exiting!");
process.exit(1);
switch (serviceArg){
case "npm":
publishNpm()
.then(function(){
done.resolve();
});
break;
case "docker":
publishDocker()
.then(function(){
done.resolve();
});
}
plugins.smartfile.memory.toFsSync(npmrcFileString,{fileName:".npmrc",filePath:"/root"});
bash("npm publish");
plugins.beautylog.ok("Done!")
return done.promise;
};
let publishNpm = function(){
let done = plugins.q.defer();
prepare("npm")
.then(function(){
bash("npm publish");
plugins.beautylog.ok("Done!") ;
done.resolve();
});
return done.promise;
}
let publishDocker = function(){
let done = plugins.q.defer();
prepare("docker")
.then(function(){
bash("docker push");
});
return done.promise;
};