Compare commits
	
		
			56 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 909aafbd5f | |||
| 91288e2d74 | |||
| 25709b1f9a | |||
| 8a03d9aa94 | |||
| bbe1cf770a | |||
| ac8190282f | |||
| 446d140e32 | |||
| 726948651e | |||
| dd0a7bb782 | |||
| fca00ffcf8 | |||
| 13f6334ae5 | |||
| 7275a858d6 | |||
| 5a3befe5af | |||
| 385a93a05e | |||
| b4d444ff05 | |||
| 487bcb9a70 | |||
| aaf11b66d7 | |||
| 83d7d46896 | |||
| 693bda6a49 | |||
| bfe3e266ee | |||
| 5f33ebd8a7 | |||
| f78c80e100 | |||
| f4d8656831 | |||
| 2290081ef0 | |||
| 189d02a16f | |||
| 55aee04334 | |||
| 0e407b9b9d | |||
| 24095bbd40 | |||
| f97ee94b5a | |||
| 4cf7aea374 | |||
| 6ab5e9cb30 | |||
| 95c1145bf5 | |||
| ea04a1b788 | |||
| 3bc2499d09 | |||
| 1f5967ac45 | |||
| fd952f086b | |||
| 79500cb2c2 | |||
| 6c58864fcf | |||
| 7ea3ac182d | |||
| 8979d26005 | |||
| c8876dac88 | |||
| 9c8a257c2a | |||
| 8b77930ece | |||
| ba672d030f | |||
| 8ad7e016e7 | |||
| d843311d7b | |||
| 14ef2cfa9b | |||
| 648effcf86 | |||
| 572738e88f | |||
| 129ae93044 | |||
| e910892231 | |||
| 6d9cabf7ee | |||
| 7c7787e811 | |||
| bde26cc312 | |||
| 29e81f3ae7 | |||
| 6337b20d62 | 
| @@ -1,7 +1,5 @@ | |||||||
| # gitzone ci_default | # gitzone ci_default | ||||||
| image: registry.gitlab.com/hosttoday/ht-docker-node:npmci | image: registry.gitlab.com/hosttoday/ht-docker-node:npmci | ||||||
| variables: |  | ||||||
|   GIT_STRATEGY: clone |  | ||||||
|  |  | ||||||
| cache: | cache: | ||||||
|   paths: |   paths: | ||||||
| @@ -102,7 +100,7 @@ trigger: | |||||||
| pages: | pages: | ||||||
|   image: hosttoday/ht-docker-dbase:npmci |   image: hosttoday/ht-docker-dbase:npmci | ||||||
|   services: |   services: | ||||||
|    - docker:18-dind |    - docker:stable-dind | ||||||
|   stage: metadata |   stage: metadata | ||||||
|   script: |   script: | ||||||
|     - npmci command npm install -g @gitzone/tsdoc |     - npmci command npm install -g @gitzone/tsdoc | ||||||
|   | |||||||
							
								
								
									
										729
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										729
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										38
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										38
									
								
								package.json
									
									
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| { | { | ||||||
|   "name": "@shipzone/npmci", |   "name": "@shipzone/npmci", | ||||||
|   "version": "3.1.42", |   "version": "3.1.71", | ||||||
|   "private": false, |   "private": false, | ||||||
|   "description": "node and docker in gitlab ci on steroids", |   "description": "node and docker in gitlab ci on steroids", | ||||||
|   "main": "dist/index.js", |   "main": "dist/index.js", | ||||||
| @@ -9,8 +9,8 @@ | |||||||
|     "npmci": "cli.js" |     "npmci": "cli.js" | ||||||
|   }, |   }, | ||||||
|   "scripts": { |   "scripts": { | ||||||
|     "test": "(rm -f config.json) && tstest test/", |     "test": "tstest test/", | ||||||
|     "build": "(rm -f config.json) && tsbuild && (npm run testVersion)", |     "build": "tsbuild && (npm run testVersion)", | ||||||
|     "testVersion": "(cd test/assets/ && node ../../cli.js -v)" |     "testVersion": "(cd test/assets/ && node ../../cli.js -v)" | ||||||
|   }, |   }, | ||||||
|   "repository": { |   "repository": { | ||||||
| @@ -26,33 +26,33 @@ | |||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@gitzone/tsbuild": "^2.1.17", |     "@gitzone/tsbuild": "^2.1.17", | ||||||
|     "@gitzone/tsrun": "^1.2.6", |     "@gitzone/tsrun": "^1.2.6", | ||||||
|     "@gitzone/tstest": "^1.0.24", |     "@gitzone/tstest": "^1.0.28", | ||||||
|     "@pushrocks/tapbundle": "^3.0.13", |     "@pushrocks/tapbundle": "^3.2.0", | ||||||
|     "@types/node": "^12.7.2", |     "@types/node": "^12.12.12", | ||||||
|     "tslint": "^5.19.0", |     "tslint": "^5.20.1", | ||||||
|     "tslint-config-prettier": "^1.18.0" |     "tslint-config-prettier": "^1.18.0" | ||||||
|   }, |   }, | ||||||
|   "dependencies": { |   "dependencies": { | ||||||
|  |     "@apiglobal/typedrequest": "^1.0.24", | ||||||
|     "@pushrocks/lik": "^3.0.11", |     "@pushrocks/lik": "^3.0.11", | ||||||
|     "@pushrocks/npmextra": "^3.0.5", |     "@pushrocks/npmextra": "^3.0.7", | ||||||
|     "@pushrocks/projectinfo": "^4.0.2", |     "@pushrocks/projectinfo": "^4.0.2", | ||||||
|     "@pushrocks/qenv": "^4.0.2", |     "@pushrocks/qenv": "^4.0.6", | ||||||
|     "@pushrocks/smartanalytics": "^2.0.15", |     "@pushrocks/smartanalytics": "^2.0.15", | ||||||
|     "@pushrocks/smartcli": "^3.0.7", |     "@pushrocks/smartcli": "^3.0.7", | ||||||
|     "@pushrocks/smartdelay": "^2.0.3", |     "@pushrocks/smartdelay": "^2.0.6", | ||||||
|     "@pushrocks/smartfile": "^7.0.2", |     "@pushrocks/smartfile": "^7.0.6", | ||||||
|     "@pushrocks/smartgit": "^1.0.13", |     "@pushrocks/smartgit": "^1.0.13", | ||||||
|     "@pushrocks/smartlog": "^2.0.19", |     "@pushrocks/smartlog": "^2.0.21", | ||||||
|     "@pushrocks/smartlog-destination-local": "^8.0.2", |     "@pushrocks/smartlog-destination-local": "^8.0.2", | ||||||
|     "@pushrocks/smartparam": "^1.0.4", |     "@pushrocks/smartparam": "^1.0.4", | ||||||
|     "@pushrocks/smartpromise": "^3.0.2", |     "@pushrocks/smartpromise": "^3.0.6", | ||||||
|     "@pushrocks/smartrequest": "^1.1.23", |     "@pushrocks/smartrequest": "^1.1.43", | ||||||
|     "@pushrocks/smartshell": "^2.0.23", |     "@pushrocks/smartshell": "^2.0.25", | ||||||
|     "@pushrocks/smartsocket": "^1.1.45", |     "@pushrocks/smartsocket": "^1.1.58", | ||||||
|     "@pushrocks/smartssh": "^1.2.3", |     "@pushrocks/smartssh": "^1.2.3", | ||||||
|     "@pushrocks/smartstring": "^3.0.10", |     "@pushrocks/smartstring": "^3.0.14", | ||||||
|     "@servezone/servezone-interfaces": "^2.0.28", |     "@servezone/servezone-interfaces": "^2.0.51", | ||||||
|     "@types/shelljs": "^0.8.5", |  | ||||||
|     "@types/through2": "^2.0.34", |     "@types/through2": "^2.0.34", | ||||||
|     "through2": "^3.0.1" |     "through2": "^3.0.1" | ||||||
|   }, |   }, | ||||||
|   | |||||||
							
								
								
									
										26
									
								
								test/test.ts
									
									
									
									
									
								
							
							
						
						
									
										26
									
								
								test/test.ts
									
									
									
									
									
								
							| @@ -29,28 +29,34 @@ let sortableArray: npmci.Dockerfile[]; | |||||||
|  |  | ||||||
| tap.test('should return valid Dockerfiles', async () => { | tap.test('should return valid Dockerfiles', async () => { | ||||||
|   const npmciInstance = new npmci.Npmci(); |   const npmciInstance = new npmci.Npmci(); | ||||||
|   dockerfile1 = new npmci.Dockerfile(npmciInstance.dockerManager, { filePath: './Dockerfile', read: true }); |   dockerfile1 = new npmci.Dockerfile(npmciInstance.dockerManager, { | ||||||
|   dockerfile2 = new npmci.Dockerfile(npmciInstance.dockerManager, { filePath: './Dockerfile_sometag1', read: true }); |     filePath: './Dockerfile', | ||||||
|  |     read: true | ||||||
|  |   }); | ||||||
|  |   dockerfile2 = new npmci.Dockerfile(npmciInstance.dockerManager, { | ||||||
|  |     filePath: './Dockerfile_sometag1', | ||||||
|  |     read: true | ||||||
|  |   }); | ||||||
|   expect(dockerfile1.version).to.equal('latest'); |   expect(dockerfile1.version).to.equal('latest'); | ||||||
|   return expect(dockerfile2.version).to.equal('sometag1'); |   return expect(dockerfile2.version).to.equal('sometag1'); | ||||||
| }); | }); | ||||||
|  |  | ||||||
| tap.test('should read a directory of Dockerfiles', async () => { | tap.test('should read a directory of Dockerfiles', async () => { | ||||||
|   const npmciInstance = new npmci.Npmci(); |   const npmciInstance = new npmci.Npmci(); | ||||||
|   return npmci.Dockerfile |   return npmci.Dockerfile.readDockerfiles(npmciInstance.dockerManager).then( | ||||||
|     .readDockerfiles(npmciInstance.dockerManager) |     async (readDockerfilesArrayArg: npmci.Dockerfile[]) => { | ||||||
|     .then(async (readDockerfilesArrayArg: npmci.Dockerfile[]) => { |  | ||||||
|       sortableArray = readDockerfilesArrayArg; |       sortableArray = readDockerfilesArrayArg; | ||||||
|       return expect(readDockerfilesArrayArg[1].version).to.equal('sometag1'); |       return expect(readDockerfilesArrayArg[1].version).to.equal('sometag1'); | ||||||
|     }); |     } | ||||||
|  |   ); | ||||||
| }); | }); | ||||||
|  |  | ||||||
| tap.test('should sort an array of Dockerfiles', async () => { | tap.test('should sort an array of Dockerfiles', async () => { | ||||||
|   return npmci.Dockerfile |   return npmci.Dockerfile.sortDockerfiles(sortableArray).then( | ||||||
|     .sortDockerfiles(sortableArray) |     async (sortedArrayArg: npmci.Dockerfile[]) => { | ||||||
|     .then(async (sortedArrayArg: npmci.Dockerfile[]) => { |  | ||||||
|       console.log(sortedArrayArg); |       console.log(sortedArrayArg); | ||||||
|     }); |     } | ||||||
|  |   ); | ||||||
| }); | }); | ||||||
|  |  | ||||||
| tap.test('should build all Dockerfiles', async () => { | tap.test('should build all Dockerfiles', async () => { | ||||||
|   | |||||||
| @@ -1,8 +1,32 @@ | |||||||
| import * as plugins from '../npmci.plugins'; | import * as plugins from '../npmci.plugins'; | ||||||
|  |  | ||||||
|  | import { Npmci } from '../npmci.classes.npmci'; | ||||||
|  | import { logger } from '../npmci.logging'; | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  *  |  * connects to cloudly | ||||||
|  */ |  */ | ||||||
| export class CloudlyConnector { | export class CloudlyConnector { | ||||||
|  |   public npmciRef: Npmci; | ||||||
|  |  | ||||||
|  |   constructor(npmciRefArg: Npmci) { | ||||||
|  |     this.npmciRef = npmciRefArg; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   public async announceDockerContainer(optionsArg: plugins.servezoneInterfaces.version.IVersionData) { | ||||||
|  |     const cloudlyUrl = this.npmciRef.npmciConfig.getConfig().urlCloudly; | ||||||
|  |     if (!cloudlyUrl) { | ||||||
|  |       logger.log( | ||||||
|  |         'warn', | ||||||
|  |         'no cloudly url provided. Thus we cannot announce the newly built Dockerimage!' | ||||||
|  |       ); | ||||||
|  |       return; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     const typedrequest = new plugins.typedrequest.TypedRequest< | ||||||
|  |       plugins.servezoneInterfaces.request.version.IRequest_Any_Cloudly_VersionManager_Update | ||||||
|  |     >(`https://${cloudlyUrl}/versionmanager`, 'update'); | ||||||
|  |  | ||||||
|  |     const response = await typedrequest.fire(optionsArg); | ||||||
|  |   } | ||||||
| } | } | ||||||
| @@ -50,7 +50,7 @@ export class NpmciDockerManager { | |||||||
|         `>>npmci docker ...<< cli arguments invalid... Please read the documentation.` |         `>>npmci docker ...<< cli arguments invalid... Please read the documentation.` | ||||||
|       ); |       ); | ||||||
|     } |     } | ||||||
|   } |   }; | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * builds a cwd of Dockerfiles by triggering a promisechain |    * builds a cwd of Dockerfiles by triggering a promisechain | ||||||
| @@ -62,7 +62,7 @@ export class NpmciDockerManager { | |||||||
|       .then(Dockerfile.sortDockerfiles) |       .then(Dockerfile.sortDockerfiles) | ||||||
|       .then(Dockerfile.mapDockerfiles) |       .then(Dockerfile.mapDockerfiles) | ||||||
|       .then(Dockerfile.buildDockerfiles); |       .then(Dockerfile.buildDockerfiles); | ||||||
|   } |   }; | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * login to the DockerRegistries |    * login to the DockerRegistries | ||||||
| @@ -70,7 +70,7 @@ export class NpmciDockerManager { | |||||||
|   public login = async () => { |   public login = async () => { | ||||||
|     await this.prepare(); |     await this.prepare(); | ||||||
|     await this.npmciRegistryStorage.loginAll(); |     await this.npmciRegistryStorage.loginAll(); | ||||||
|   } |   }; | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * logs in docker |    * logs in docker | ||||||
| @@ -98,7 +98,7 @@ export class NpmciDockerManager { | |||||||
|       } |       } | ||||||
|     ); |     ); | ||||||
|     return; |     return; | ||||||
|   } |   }; | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * pushes an image towards a registry |    * pushes an image towards a registry | ||||||
| @@ -146,7 +146,7 @@ export class NpmciDockerManager { | |||||||
|         await dockerfile.push(dockerRegistryToPushTo, suffix); |         await dockerfile.push(dockerRegistryToPushTo, suffix); | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|   } |   }; | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * pulls an image |    * pulls an image | ||||||
| @@ -165,7 +165,7 @@ export class NpmciDockerManager { | |||||||
|     for (const dockerfile of dockerfileArray) { |     for (const dockerfile of dockerfileArray) { | ||||||
|       await dockerfile.pull(localDockerRegistry, suffix); |       await dockerfile.pull(localDockerRegistry, suffix); | ||||||
|     } |     } | ||||||
|   } |   }; | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * tests docker files |    * tests docker files | ||||||
| @@ -173,5 +173,5 @@ export class NpmciDockerManager { | |||||||
|   public test = async () => { |   public test = async () => { | ||||||
|     await this.prepare(); |     await this.prepare(); | ||||||
|     return await Dockerfile.readDockerfiles(this).then(Dockerfile.testDockerfiles); |     return await Dockerfile.readDockerfiles(this).then(Dockerfile.testDockerfiles); | ||||||
|   } |   }; | ||||||
| } | } | ||||||
|   | |||||||
| @@ -214,6 +214,7 @@ export class Dockerfile { | |||||||
|   public version: string; |   public version: string; | ||||||
|   public cleanTag: string; |   public cleanTag: string; | ||||||
|   public buildTag: string; |   public buildTag: string; | ||||||
|  |   public pushTag: string; | ||||||
|   public containerName: string; |   public containerName: string; | ||||||
|   public content: string; |   public content: string; | ||||||
|   public baseImage: string; |   public baseImage: string; | ||||||
| @@ -248,7 +249,9 @@ export class Dockerfile { | |||||||
|   public async build() { |   public async build() { | ||||||
|     logger.log('info', 'now building Dockerfile for ' + this.cleanTag); |     logger.log('info', 'now building Dockerfile for ' + this.cleanTag); | ||||||
|     const buildArgsString = await Dockerfile.getDockerBuildArgs(this.npmciDockerManagerRef); |     const buildArgsString = await Dockerfile.getDockerBuildArgs(this.npmciDockerManagerRef); | ||||||
|     const buildCommand = `docker build -t ${this.buildTag} -f ${this.filePath} ${buildArgsString} .`; |     const buildCommand = `docker build --label="version=${ | ||||||
|  |       this.npmciDockerManagerRef.npmciRef.npmciConfig.getConfig().projectInfo.npm.version | ||||||
|  |     }" -t ${this.buildTag} -f ${this.filePath} ${buildArgsString} .`; | ||||||
|     await bash(buildCommand); |     await bash(buildCommand); | ||||||
|     return; |     return; | ||||||
|   } |   } | ||||||
| @@ -257,15 +260,24 @@ export class Dockerfile { | |||||||
|    * pushes the Dockerfile to a registry |    * pushes the Dockerfile to a registry | ||||||
|    */ |    */ | ||||||
|   public async push(dockerRegistryArg: DockerRegistry, versionSuffix: string = null) { |   public async push(dockerRegistryArg: DockerRegistry, versionSuffix: string = null) { | ||||||
|     const pushTag = Dockerfile.getDockerTagString( |     this.pushTag = Dockerfile.getDockerTagString( | ||||||
|       this.npmciDockerManagerRef, |       this.npmciDockerManagerRef, | ||||||
|       dockerRegistryArg.registryUrl, |       dockerRegistryArg.registryUrl, | ||||||
|       this.repo, |       this.repo, | ||||||
|       this.version, |       this.version, | ||||||
|       versionSuffix |       versionSuffix | ||||||
|     ); |     ); | ||||||
|     await bash(`docker tag ${this.buildTag} ${pushTag}`); |     await bash(`docker tag ${this.buildTag} ${this.pushTag}`); | ||||||
|     await bash(`docker push ${pushTag}`); |     await bash(`docker push ${this.pushTag}`); | ||||||
|  |     const imageDigest = (await bash( | ||||||
|  |       `docker inspect --format="{{index .RepoDigests 0}}" ${this.pushTag}` | ||||||
|  |     )).split('@')[1]; | ||||||
|  |     console.log(`The image ${this.pushTag} has digest ${imageDigest}`); | ||||||
|  |     await this.npmciDockerManagerRef.npmciRef.cloudlyConnector.announceDockerContainer({ | ||||||
|  |       dockerImageUrl: this.pushTag, | ||||||
|  |       dockerImageVersion: this.npmciDockerManagerRef.npmciRef.npmciConfig.getConfig().projectInfo | ||||||
|  |         .npm.version | ||||||
|  |     }); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|   | |||||||
| @@ -3,4 +3,3 @@ import * as plugins from './mod.plugins'; | |||||||
| import * as paths from '../npmci.paths'; | import * as paths from '../npmci.paths'; | ||||||
|  |  | ||||||
| import { Dockerfile } from './mod.classes.dockerfile'; | import { Dockerfile } from './mod.classes.dockerfile'; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| import { logger } from '../npmci.logging'; | import { logger } from '../npmci.logging'; | ||||||
| import * as plugins from './mod.plugins'; | import * as plugins from './mod.plugins'; | ||||||
| import { bash } from '../npmci.bash'; | import { bash, bashNoError } from '../npmci.bash'; | ||||||
| import { Npmci } from '../npmci.classes.npmci'; | import { Npmci } from '../npmci.classes.npmci'; | ||||||
|  |  | ||||||
| export class NpmciGitManager { | export class NpmciGitManager { | ||||||
| @@ -27,12 +27,12 @@ export class NpmciGitManager { | |||||||
|     } else { |     } else { | ||||||
|       logger.log('info', `npmci git -> cli arguments invalid! Please read the documentation.`); |       logger.log('info', `npmci git -> cli arguments invalid! Please read the documentation.`); | ||||||
|     } |     } | ||||||
|   } |   }; | ||||||
|  |  | ||||||
|   public mirror = async () => { |   public mirror = async () => { | ||||||
|     const githubToken = process.env.NPMCI_GIT_GITHUBTOKEN; |     const githubToken = process.env.NPMCI_GIT_GITHUBTOKEN; | ||||||
|     const githubUser = process.env.NPMCI_GIT_GITHUBGROUP || this.npmciRef.npmciEnv.repo.user; |     const githubUser = process.env.NPMCI_GIT_GITHUBGROUP || this.npmciRef.npmciEnv.repo.user; | ||||||
|     const githubRepo = process.env.NPMCI_GIT_GITHUB || this.npmciRef.npmciEnv.repo; |     const githubRepo = process.env.NPMCI_GIT_GITHUB || this.npmciRef.npmciEnv.repo.repo; | ||||||
|     if ( |     if ( | ||||||
|       this.npmciRef.npmciConfig.getConfig().projectInfo.npm.packageJson.private === true || |       this.npmciRef.npmciConfig.getConfig().projectInfo.npm.packageJson.private === true || | ||||||
|       this.npmciRef.npmciConfig.getConfig().npmAccessLevel === 'private' |       this.npmciRef.npmciConfig.getConfig().npmAccessLevel === 'private' | ||||||
| @@ -47,19 +47,25 @@ export class NpmciGitManager { | |||||||
|       logger.log('info', 'found github token.'); |       logger.log('info', 'found github token.'); | ||||||
|       logger.log('info', 'attempting the mirror the repository to GitHub'); |       logger.log('info', 'attempting the mirror the repository to GitHub'); | ||||||
|  |  | ||||||
|       // plugins.smartgit.GitRepo; |       // remove old mirrors | ||||||
|  |       await bashNoError('git remote rm mirror'); | ||||||
|  |  | ||||||
|  |       await bash(`git fetch`); | ||||||
|       // add the mirror |       // add the mirror | ||||||
|       await bash( |       await bashNoError( | ||||||
|         `git remote add mirror https://${githubToken}@github.com/${githubUser}/${githubRepo}.git` |         `git remote add mirror https://${githubToken}@github.com/${githubUser}/${githubRepo}.git` | ||||||
|       ); |       ); | ||||||
|       await bash(`git push mirror --all`); |       await bashNoError(`git push mirror --all`); | ||||||
|  |       await bashNoError(`git checkout origin/master`); | ||||||
|  |       await bashNoError(`git push mirror master`); | ||||||
|       logger.log('ok', 'pushed all branches to mirror!'); |       logger.log('ok', 'pushed all branches to mirror!'); | ||||||
|       await bash(`git push mirror --tags`); |       await bashNoError(`git push mirror --tags`); | ||||||
|       logger.log('ok', 'pushed all tags to mirror!'); |       logger.log('ok', 'pushed all tags to mirror!'); | ||||||
|  |       // remove old mirrors | ||||||
|  |       await bashNoError('git remote rm mirror'); | ||||||
|     } else { |     } else { | ||||||
|       logger.log('error', `cannot find NPMCI_GIT_GITHUBTOKEN env var!`); |       logger.log('error', `cannot find NPMCI_GIT_GITHUBTOKEN env var!`); | ||||||
|       process.exit(1); |       process.exit(1); | ||||||
|     } |     } | ||||||
|   } |   }; | ||||||
| } | } | ||||||
|   | |||||||
| @@ -22,6 +22,9 @@ export class NpmciNpmManager { | |||||||
|         case 'install': |         case 'install': | ||||||
|           await this.install(); |           await this.install(); | ||||||
|           break; |           break; | ||||||
|  |         case 'build': | ||||||
|  |             await this.build(); | ||||||
|  |             break; | ||||||
|         case 'prepare': |         case 'prepare': | ||||||
|           await this.prepare(); |           await this.prepare(); | ||||||
|           break; |           break; | ||||||
| @@ -133,8 +136,8 @@ export class NpmciNpmManager { | |||||||
|     await bash(`npm -v`); |     await bash(`npm -v`); | ||||||
|  |  | ||||||
|     // -> build it |     // -> build it | ||||||
|     await bash(`npm install`); |     await this.install(); | ||||||
|     await bash(`npm run build`); |     await this.build(); | ||||||
|  |  | ||||||
|     logger.log('success', `Nice!!! The build for the publication was successfull!`); |     logger.log('success', `Nice!!! The build for the publication was successfull!`); | ||||||
|     logger.log('info', `Lets clean up so we don't publish any packages that don't belong to us:`); |     logger.log('info', `Lets clean up so we don't publish any packages that don't belong to us:`); | ||||||
| @@ -152,7 +155,12 @@ export class NpmciNpmManager { | |||||||
|  |  | ||||||
|   public async install(): Promise<void> { |   public async install(): Promise<void> { | ||||||
|     logger.log('info', 'now installing dependencies:'); |     logger.log('info', 'now installing dependencies:'); | ||||||
|     await bash('npm install'); |     await bash('npm ci'); | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   public async build(): Promise<void> { | ||||||
|  |     logger.log('info', 'now building the project:'); | ||||||
|  |     await bash('npm run build'); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   public async test(): Promise<void> { |   public async test(): Promise<void> { | ||||||
|   | |||||||
| @@ -34,7 +34,7 @@ export class Npmci { | |||||||
|       projectId: 'gitzone', |       projectId: 'gitzone', | ||||||
|       appName: 'npmci' |       appName: 'npmci' | ||||||
|     }); |     }); | ||||||
|     this.cloudlyConnector = new CloudlyConnector(); |     this.cloudlyConnector = new CloudlyConnector(this); | ||||||
|     this.npmciEnv = new NpmciEnv(this); |     this.npmciEnv = new NpmciEnv(this); | ||||||
|     this.npmciInfo = new NpmciInfo(this); |     this.npmciInfo = new NpmciInfo(this); | ||||||
|     this.npmciCli = new NpmciCli(this); |     this.npmciCli = new NpmciCli(this); | ||||||
|   | |||||||
| @@ -106,5 +106,5 @@ export class NpmciCli { | |||||||
|  |  | ||||||
|   public startParse = () => { |   public startParse = () => { | ||||||
|     this.smartcli.startParse(); |     this.smartcli.startParse(); | ||||||
|   } |   }; | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,10 +1,9 @@ | |||||||
| import * as plugins from './npmci.plugins'; | import * as plugins from './npmci.plugins'; | ||||||
| import * as paths from './npmci.paths'; | import * as paths from './npmci.paths'; | ||||||
| import { logger } from "./npmci.logging"; | import { logger } from './npmci.logging'; | ||||||
| import { Npmci } from './npmci.classes.npmci'; | import { Npmci } from './npmci.classes.npmci'; | ||||||
|  |  | ||||||
| export class NpmciInfo { | export class NpmciInfo { | ||||||
|  |  | ||||||
|   public npmciRef: Npmci; |   public npmciRef: Npmci; | ||||||
|   public projectInfo = new plugins.projectinfo.ProjectinfoNpm(paths.NpmciPackageRoot); |   public projectInfo = new plugins.projectinfo.ProjectinfoNpm(paths.NpmciPackageRoot); | ||||||
|  |  | ||||||
|   | |||||||
| @@ -3,12 +3,15 @@ import * as path from 'path'; | |||||||
|  |  | ||||||
| export { path }; | export { path }; | ||||||
|  |  | ||||||
|  | // @apiglobal | ||||||
|  | import * as typedrequest from '@apiglobal/typedrequest'; | ||||||
|  |  | ||||||
|  | export { typedrequest }; | ||||||
|  |  | ||||||
| // @servezone | // @servezone | ||||||
| import * as servezoneInterfaces from '@servezone/servezone-interfaces'; | import * as servezoneInterfaces from '@servezone/servezone-interfaces'; | ||||||
|  |  | ||||||
| export { | export { servezoneInterfaces }; | ||||||
|   servezoneInterfaces |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| // @pushrocks | // @pushrocks | ||||||
| import * as npmextra from '@pushrocks/npmextra'; | import * as npmextra from '@pushrocks/npmextra'; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user