Compare commits

...

4 Commits

Author SHA1 Message Date
229c3ae27b 2.1.26 2016-06-05 11:08:23 +02:00
19e3aa3721 better sorter function 2016-06-05 11:08:20 +02:00
a965cf38c8 2.1.25 2016-06-05 10:24:00 +02:00
7924ba26a2 now sorting Dockerfiles correctly 2016-06-05 10:23:55 +02:00
3 changed files with 63 additions and 37 deletions

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +1,6 @@
{ {
"name": "npmci", "name": "npmci",
"version": "2.1.24", "version": "2.1.26",
"description": "", "description": "",
"main": "dist/index.js", "main": "dist/index.js",
"bin": { "bin": {

View File

@@ -27,25 +27,38 @@ let readDockerfiles = function(){
}); });
} }
let cleanTagsArrayFunction = function(){
let cleanTagsArray = [];
NpmciEnv.dockerFiles.forEach(function(dockerfileArg){
cleanTagsArray.push(dockerfileArg.cleanTag);
});
return cleanTagsArray;
}
let sortDockerfiles = function(){ let sortDockerfiles = function(){
let done = plugins.q.defer(); let done = plugins.q.defer();
NpmciEnv.dockerFiles.sort(function(a,b){ let sortableArray = NpmciEnv.dockerFiles;
let cleanTags = []; let sortedArray:Dockerfile[] = [];
NpmciEnv.dockerFiles.forEach(function(dockerfileArg){ let sorterFunctionCounter:number = 0;
cleanTags.push(dockerfileArg.cleanTag); let sorterFunction = function(){
let cleanTags = cleanTagsArrayFunction();
sortableArray.forEach((dockerfileArg)=>{
if(cleanTags.indexOf(dockerfileArg.baseImage) == -1){
let dockerfileArgIndex = sortableArray.indexOf(dockerfileArg);
sortableArray.splice(dockerfileArgIndex);
sortedArray.push(dockerfileArg);
}
}); });
let aIndex = cleanTags.indexOf(a.cleanTag); if(sortableArray.length == 0){
let bIndex = cleanTags.indexOf(b.baseImage); console.log(sortedArray);
console.log(cleanTags); NpmciEnv.dockerFiles = sortedArray;
console.log(a.cleanTag); done.resolve();
console.log(b.cleanTag); } else if (sorterFunctionCounter < 100) {
if(bIndex < aIndex && bIndex != -1){ sorterFunctionCounter++;
return -1; sorterFunction();
} else { };
return 0 }
} sorterFunction();
});
done.resolve();
return done.promise; return done.promise;
} }
@@ -117,12 +130,12 @@ let dockerBaseImage = function(dockerfileContentArg:string){
export let dockerTag = function(repoArg:string,versionArg:string):string{ export let dockerTag = function(repoArg:string,versionArg:string):string{
let tagString:string; let tagString:string;
let registry = NpmciEnv.dockerRegistry; let registry = NpmciEnv.dockerRegistry;
if(process.env.CI_BUILD_STAGE == "test"){ if(process.env.CI_BUILD_STAGE == "build" || process.env.CI_BUILD_STAGE == "test"){
registry = "registry.gitlab.com"; registry = "registry.gitlab.com";
} }
let repo = repoArg; let repo = repoArg;
let version = versionArg; let version = versionArg;
if(process.env.CI_BUILD_STAGE == "test" || process.env.CI_BUILD_STAGE == "build"){ if(process.env.CI_BUILD_STAGE == "build" || process.env.CI_BUILD_STAGE == "test"){
version = version + "_test"; version = version + "_test";
} }
tagString = registry + "/" + repo + ":" + version; tagString = registry + "/" + repo + ":" + version;