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",
"version": "2.1.24",
"version": "2.1.26",
"description": "",
"main": "dist/index.js",
"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 done = plugins.q.defer();
NpmciEnv.dockerFiles.sort(function(a,b){
let cleanTags = [];
NpmciEnv.dockerFiles.forEach(function(dockerfileArg){
cleanTags.push(dockerfileArg.cleanTag);
});
let aIndex = cleanTags.indexOf(a.cleanTag);
let bIndex = cleanTags.indexOf(b.baseImage);
console.log(cleanTags);
console.log(a.cleanTag);
console.log(b.cleanTag);
if(bIndex < aIndex && bIndex != -1){
return -1;
} else {
return 0
let sortableArray = NpmciEnv.dockerFiles;
let sortedArray:Dockerfile[] = [];
let sorterFunctionCounter:number = 0;
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);
}
});
if(sortableArray.length == 0){
console.log(sortedArray);
NpmciEnv.dockerFiles = sortedArray;
done.resolve();
} else if (sorterFunctionCounter < 100) {
sorterFunctionCounter++;
sorterFunction();
};
}
sorterFunction();
return done.promise;
}
@@ -117,12 +130,12 @@ let dockerBaseImage = function(dockerfileContentArg:string){
export let dockerTag = function(repoArg:string,versionArg:string):string{
let tagString:string;
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";
}
let repo = repoArg;
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";
}
tagString = registry + "/" + repo + ":" + version;