Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 361d45e086 | |||
| cb7cb852ea | |||
| 61720f47be | |||
| b435fc6bdf | |||
| 70ad41ab86 | |||
| d67109b4bc | |||
| a29e04f9e3 | |||
| 9634ca3b4d | |||
| d2e7488868 | |||
| bb44333d70 | |||
| 87f6adeda4 | |||
| 6334396bfc | |||
| 7a33252f2f | |||
| b7068b7b53 | |||
| 1e5b56a388 | |||
| 786de4ae18 | |||
| 62ee8a26a4 | |||
| f544aef054 | |||
| cb6867dbde | |||
| 5316740a1a | |||
| 06bc1e59f8 |
@@ -1,9 +1,10 @@
|
||||
image: hosttoday/ht-docker-node:lts
|
||||
|
||||
stages:
|
||||
- test
|
||||
- release
|
||||
- trigger
|
||||
- test
|
||||
|
||||
|
||||
before_script:
|
||||
- npm install -g npmci
|
||||
|
||||
39
dist/npmci.build.docker.js
vendored
39
dist/npmci.build.docker.js
vendored
File diff suppressed because one or more lines are too long
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "npmci",
|
||||
"version": "2.1.14",
|
||||
"version": "2.1.24",
|
||||
"description": "",
|
||||
"main": "dist/index.js",
|
||||
"bin": {
|
||||
@@ -32,7 +32,7 @@
|
||||
"shelljs": "^0.7.0",
|
||||
"smartfile": "^3.0.10",
|
||||
"smartssh": "^1.0.5",
|
||||
"smartstring": "^2.0.4",
|
||||
"smartstring": "^2.0.6",
|
||||
"through2": "^2.0.1",
|
||||
"typings-global": "^1.0.3"
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import * as NpmciEnv from "./npmci.env";
|
||||
|
||||
export let build = function(){
|
||||
let done = plugins.q.defer();
|
||||
plugins.gulp.dest("./Dockerfile*")
|
||||
plugins.gulp.src("./Dockerfile*")
|
||||
.pipe(readDockerfiles())
|
||||
.pipe(plugins.gulpFunction(function(){
|
||||
sortDockerfiles()
|
||||
@@ -15,7 +15,7 @@ export let build = function(){
|
||||
}
|
||||
|
||||
let readDockerfiles = function(){
|
||||
return plugins.through2(function(file,enc,cb){
|
||||
return plugins.through2.obj(function(file,enc,cb){
|
||||
let myDockerfile = new Dockerfile({
|
||||
filePath:file.path,
|
||||
read:true
|
||||
@@ -29,31 +29,23 @@ let readDockerfiles = function(){
|
||||
|
||||
let sortDockerfiles = function(){
|
||||
let done = plugins.q.defer();
|
||||
let redoSort:boolean;
|
||||
let sortFunction = function(){
|
||||
redoSort = false;
|
||||
let notYetBuiltImages:string[] = [];
|
||||
NpmciEnv.dockerFiles.forEach((dockerFileArg)=>{
|
||||
notYetBuiltImages.push(dockerFileArg.cleanTag);
|
||||
});
|
||||
NpmciEnv.dockerFiles.sort(function(a,b){
|
||||
plugins.beautylog.log("sort build order for Dockerimages");
|
||||
let aIndex = notYetBuiltImages.indexOf(a.cleanTag);
|
||||
if(aIndex != -1){notYetBuiltImages.splice(aIndex,1)}
|
||||
if(notYetBuiltImages.indexOf(b.cleanTag) != -1){
|
||||
redoSort = true;
|
||||
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
|
||||
}
|
||||
});
|
||||
if(redoSort){
|
||||
sortFunction();
|
||||
} else {
|
||||
done.resolve();
|
||||
}
|
||||
};
|
||||
sortFunction();
|
||||
return done.promise;
|
||||
}
|
||||
|
||||
@@ -108,7 +100,7 @@ let dockerFileVersion = function(dockerfileNameArg:string):string{
|
||||
let versionString:string;
|
||||
let versionRegex = /Dockerfile_([a-zA-Z0-9\.]*)$/;
|
||||
let regexResultArray = versionRegex.exec(dockerfileNameArg);
|
||||
if(regexResultArray.length = 2){
|
||||
if(regexResultArray && regexResultArray.length == 2){
|
||||
versionString = regexResultArray[1];
|
||||
} else {
|
||||
versionString = "latest";
|
||||
|
||||
Reference in New Issue
Block a user