Compare commits
	
		
			18 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 5a3befe5af | |||
| 385a93a05e | |||
| b4d444ff05 | |||
| 487bcb9a70 | |||
| aaf11b66d7 | |||
| 83d7d46896 | |||
| 693bda6a49 | |||
| bfe3e266ee | |||
| 5f33ebd8a7 | |||
| f78c80e100 | |||
| f4d8656831 | |||
| 2290081ef0 | |||
| 189d02a16f | |||
| 55aee04334 | |||
| 0e407b9b9d | |||
| 24095bbd40 | |||
| f97ee94b5a | |||
| 4cf7aea374 | 
| @@ -18,7 +18,6 @@ stages: | |||||||
| mirror: | mirror: | ||||||
|   stage: security |   stage: security | ||||||
|   script: |   script: | ||||||
|   - npm install -g @shipzone/npmci |  | ||||||
|   - npmci git mirror |   - npmci git mirror | ||||||
|   tags: |   tags: | ||||||
|   - docker |   - docker | ||||||
|   | |||||||
							
								
								
									
										2058
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2058
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										24
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								package.json
									
									
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| { | { | ||||||
|   "name": "@shipzone/npmci", |   "name": "@shipzone/npmci", | ||||||
|   "version": "3.1.56", |   "version": "3.1.65", | ||||||
|   "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", | ||||||
| @@ -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.27", | ||||||
|     "@pushrocks/tapbundle": "^3.0.13", |     "@pushrocks/tapbundle": "^3.0.13", | ||||||
|     "@types/node": "^12.7.3", |     "@types/node": "^12.7.9", | ||||||
|     "tslint": "^5.19.0", |     "tslint": "^5.20.0", | ||||||
|     "tslint-config-prettier": "^1.18.0" |     "tslint-config-prettier": "^1.18.0" | ||||||
|   }, |   }, | ||||||
|   "dependencies": { |   "dependencies": { | ||||||
|     "@apiglobal/typedrequest": "^1.0.17", |     "@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.4", |     "@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.3", | ||||||
|     "@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.19", | ||||||
|     "@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.36", | ||||||
|     "@pushrocks/smartshell": "^2.0.25", |     "@pushrocks/smartshell": "^2.0.25", | ||||||
|     "@pushrocks/smartsocket": "^1.1.45", |     "@pushrocks/smartsocket": "^1.1.49", | ||||||
|     "@pushrocks/smartssh": "^1.2.3", |     "@pushrocks/smartssh": "^1.2.3", | ||||||
|     "@pushrocks/smartstring": "^3.0.10", |     "@pushrocks/smartstring": "^3.0.10", | ||||||
|     "@servezone/servezone-interfaces": "^2.0.29", |     "@servezone/servezone-interfaces": "^2.0.51", | ||||||
|     "@types/shelljs": "^0.8.5", |     "@types/shelljs": "^0.8.5", | ||||||
|     "@types/through2": "^2.0.34", |     "@types/through2": "^2.0.34", | ||||||
|     "through2": "^3.0.1" |     "through2": "^3.0.1" | ||||||
|   | |||||||
| @@ -13,18 +13,20 @@ export class CloudlyConnector { | |||||||
|     this.npmciRef = npmciRefArg; |     this.npmciRef = npmciRefArg; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   public async announceDockerContainer(optionsArg: plugins.servezoneInterfaces.version.IVersionData) { | ||||||
|   public async announceDockerContainer(optionsArg: plugins.servezoneInterfaces.IVersionData) { |  | ||||||
|     const cloudlyUrl = this.npmciRef.npmciConfig.getConfig().urlCloudly; |     const cloudlyUrl = this.npmciRef.npmciConfig.getConfig().urlCloudly; | ||||||
|     if (!cloudlyUrl) { |     if (!cloudlyUrl) { | ||||||
|       logger.log('warn', 'no cloudly url provided. Thus we cannot announce the newly built Dockerimage!'); |       logger.log( | ||||||
|  |         'warn', | ||||||
|  |         'no cloudly url provided. Thus we cannot announce the newly built Dockerimage!' | ||||||
|  |       ); | ||||||
|       return; |       return; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     const typedrequest = new plugins.typedrequest.TypedRequest< |     const typedrequest = new plugins.typedrequest.TypedRequest< | ||||||
|       plugins.servezoneInterfaces.IRequest_Any_Cloudly_VersionManager_Update |       plugins.servezoneInterfaces.request.version.IRequest_Any_Cloudly_VersionManager_Update | ||||||
|     >(`https://${cloudlyUrl}/versionmanager`, 'update'); |     >(`https://${cloudlyUrl}/versionmanager`, 'update'); | ||||||
|  |  | ||||||
|     const response = (await typedrequest.fire(optionsArg)); |     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); | ||||||
|   } |   }; | ||||||
| } | } | ||||||
|   | |||||||
| @@ -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 { | ||||||
| @@ -49,11 +49,17 @@ export class NpmciGitManager { | |||||||
|  |  | ||||||
|       // plugins.smartgit.GitRepo; |       // plugins.smartgit.GitRepo; | ||||||
|  |  | ||||||
|  |       // remove old mirrors | ||||||
|  |       await bashNoError('git remote rm mirror'); | ||||||
|  |  | ||||||
|       // add the mirror |       // add the mirror | ||||||
|       await bash( |       await bash( | ||||||
|         `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 fetch`); | ||||||
|       await bash(`git push mirror --all`); |       await bash(`git push mirror --all`); | ||||||
|  |       await bash(`git checkout master`); | ||||||
|  |       await bash(`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 bash(`git push mirror --tags`); | ||||||
|       logger.log('ok', 'pushed all tags to mirror!'); |       logger.log('ok', 'pushed all tags to mirror!'); | ||||||
|   | |||||||
| @@ -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> { | ||||||
|   | |||||||
| @@ -6,9 +6,7 @@ export { path }; | |||||||
| // @apiglobal | // @apiglobal | ||||||
| import * as typedrequest from '@apiglobal/typedrequest'; | import * as typedrequest from '@apiglobal/typedrequest'; | ||||||
|  |  | ||||||
| export { | export { typedrequest }; | ||||||
|   typedrequest |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| // @servezone | // @servezone | ||||||
| import * as servezoneInterfaces from '@servezone/servezone-interfaces'; | import * as servezoneInterfaces from '@servezone/servezone-interfaces'; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user