Compare commits

...

21 Commits

Author SHA1 Message Date
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
361d45e086 2.1.24 2016-06-05 10:11:07 +02:00
cb7cb852ea now sorting Dockerfiles correctly 2016-06-05 10:11:01 +02:00
61720f47be 2.1.23 2016-06-05 09:42:14 +02:00
b435fc6bdf update smartstring 2016-06-05 09:42:08 +02:00
70ad41ab86 fix gitlab.yml 2016-06-05 09:38:11 +02:00
d67109b4bc 2.1.22 2016-06-05 09:34:21 +02:00
a29e04f9e3 fix gitlab.yml 2016-06-05 09:33:51 +02:00
9634ca3b4d 2.1.21 2016-06-05 08:53:52 +02:00
d2e7488868 fix 2016-06-05 08:53:46 +02:00
bb44333d70 2.1.20 2016-06-05 08:30:12 +02:00
87f6adeda4 fix 2016-06-05 08:30:08 +02:00
6334396bfc 2.1.19 2016-06-05 08:19:59 +02:00
7a33252f2f fix 2016-06-05 08:19:03 +02:00
b7068b7b53 2.1.18 2016-06-05 08:06:35 +02:00
1e5b56a388 fix 2016-06-05 08:06:32 +02:00
786de4ae18 2.1.17 2016-06-05 08:00:53 +02:00
62ee8a26a4 fix 2016-06-05 08:00:46 +02:00
f544aef054 2.1.16 2016-06-05 07:50:11 +02:00
cb6867dbde fix 2016-06-05 07:50:04 +02:00
4 changed files with 41 additions and 59 deletions

View File

@@ -1,9 +1,10 @@
image: hosttoday/ht-docker-node:lts image: hosttoday/ht-docker-node:lts
stages: stages:
- test
- release - release
- trigger - trigger
- test
before_script: before_script:
- npm install -g npmci - npm install -g npmci

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +1,6 @@
{ {
"name": "npmci", "name": "npmci",
"version": "2.1.15", "version": "2.1.25",
"description": "", "description": "",
"main": "dist/index.js", "main": "dist/index.js",
"bin": { "bin": {
@@ -32,7 +32,7 @@
"shelljs": "^0.7.0", "shelljs": "^0.7.0",
"smartfile": "^3.0.10", "smartfile": "^3.0.10",
"smartssh": "^1.0.5", "smartssh": "^1.0.5",
"smartstring": "^2.0.4", "smartstring": "^2.0.6",
"through2": "^2.0.1", "through2": "^2.0.1",
"typings-global": "^1.0.3" "typings-global": "^1.0.3"
} }

View File

@@ -15,7 +15,7 @@ export let build = function(){
} }
let readDockerfiles = function(){ let readDockerfiles = function(){
return plugins.through2(function(file,enc,cb){ return plugins.through2.obj(function(file,enc,cb){
let myDockerfile = new Dockerfile({ let myDockerfile = new Dockerfile({
filePath:file.path, filePath:file.path,
read:true read:true
@@ -29,31 +29,23 @@ let readDockerfiles = function(){
let sortDockerfiles = function(){ let sortDockerfiles = function(){
let done = plugins.q.defer(); let done = plugins.q.defer();
let redoSort:boolean; NpmciEnv.dockerFiles.sort(function(a,b){
let sortFunction = function(){ let cleanTags = [];
redoSort = false; NpmciEnv.dockerFiles.forEach(function(dockerfileArg){
let notYetBuiltImages:string[] = []; cleanTags.push(dockerfileArg.cleanTag);
NpmciEnv.dockerFiles.forEach((dockerFileArg)=>{
notYetBuiltImages.push(dockerFileArg.cleanTag);
}); });
NpmciEnv.dockerFiles.sort(function(a,b){ let aIndex = cleanTags.indexOf(a.baseImage);
plugins.beautylog.log("sort build order for Dockerimages"); let bIndex = cleanTags.indexOf(b.cleanTag);
let aIndex = notYetBuiltImages.indexOf(a.cleanTag); console.log(cleanTags);
if(aIndex != -1){notYetBuiltImages.splice(aIndex,1)} console.log(a.baseImage,aIndex);
if(notYetBuiltImages.indexOf(b.cleanTag) != -1){ console.log(b.cleanTag,bIndex);
redoSort = true; if(aIndex < bIndex && bIndex != -1){
return -1; return 1;
} else {
return 0
}
});
if(redoSort){
sortFunction();
} else { } else {
done.resolve(); return 0
} }
}; });
sortFunction(); done.resolve();
return done.promise; return done.promise;
} }
@@ -108,7 +100,7 @@ let dockerFileVersion = function(dockerfileNameArg:string):string{
let versionString:string; let versionString:string;
let versionRegex = /Dockerfile_([a-zA-Z0-9\.]*)$/; let versionRegex = /Dockerfile_([a-zA-Z0-9\.]*)$/;
let regexResultArray = versionRegex.exec(dockerfileNameArg); let regexResultArray = versionRegex.exec(dockerfileNameArg);
if(regexResultArray.length = 2){ if(regexResultArray && regexResultArray.length == 2){
versionString = regexResultArray[1]; versionString = regexResultArray[1];
} else { } else {
versionString = "latest"; versionString = "latest";
@@ -125,12 +117,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;