| 
									
										
										
										
											2016-05-30 02:29:30 +02:00
										 |  |  | "use strict"; | 
					
						
							| 
									
										
										
										
											2016-07-18 16:56:53 +02:00
										 |  |  | const plugins = require("./npmci.plugins"); | 
					
						
							| 
									
										
										
										
											2016-11-24 23:21:40 +01:00
										 |  |  | const configModule = require("./npmci.config"); | 
					
						
							| 
									
										
										
										
											2016-07-18 16:56:53 +02:00
										 |  |  | const npmci_bash_1 = require("./npmci.bash"); | 
					
						
							| 
									
										
										
										
											2016-08-02 23:11:42 +02:00
										 |  |  | const npmci_bash_2 = require("./npmci.bash"); | 
					
						
							| 
									
										
										
										
											2016-07-18 16:56:53 +02:00
										 |  |  | exports.install = (versionArg) => { | 
					
						
							|  |  |  |     let done = plugins.q.defer(); | 
					
						
							| 
									
										
										
										
											2016-09-04 13:42:22 +02:00
										 |  |  |     plugins.beautylog.log(`now installing node version ${versionArg}`); | 
					
						
							| 
									
										
										
										
											2016-07-18 16:56:53 +02:00
										 |  |  |     let version; | 
					
						
							| 
									
										
										
										
											2016-11-15 21:57:18 +01:00
										 |  |  |     if (versionArg === 'stable') { | 
					
						
							|  |  |  |         version = 'stable'; | 
					
						
							| 
									
										
										
										
											2016-06-29 23:18:51 +02:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2016-11-15 21:57:18 +01:00
										 |  |  |     else if (versionArg === 'lts') { | 
					
						
							|  |  |  |         version = '6'; | 
					
						
							| 
									
										
										
										
											2016-05-30 02:29:30 +02:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2016-11-15 21:57:18 +01:00
										 |  |  |     else if (versionArg === 'legacy') { | 
					
						
							| 
									
										
										
										
											2016-11-15 22:47:21 +01:00
										 |  |  |         version = '6'; | 
					
						
							| 
									
										
										
										
											2016-06-01 05:44:48 +02:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2016-05-30 02:29:30 +02:00
										 |  |  |     else { | 
					
						
							|  |  |  |         version = versionArg; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |     ; | 
					
						
							| 
									
										
										
										
											2016-08-02 23:11:42 +02:00
										 |  |  |     if (npmci_bash_2.nvmAvailable) { | 
					
						
							|  |  |  |         npmci_bash_1.bash(`nvm install ${version} && nvm alias default ${version}`); | 
					
						
							|  |  |  |         plugins.beautylog.success(`Node version ${version} successfully installed!`); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |     else { | 
					
						
							| 
									
										
										
										
											2016-11-15 21:57:18 +01:00
										 |  |  |         plugins.beautylog.warn('Nvm not in path so staying at installed node version!'); | 
					
						
							| 
									
										
										
										
											2016-08-02 23:11:42 +02:00
										 |  |  |     } | 
					
						
							|  |  |  |     ; | 
					
						
							| 
									
										
										
										
											2016-11-15 21:57:18 +01:00
										 |  |  |     npmci_bash_1.bash('node -v'); | 
					
						
							|  |  |  |     npmci_bash_1.bash('npm -v'); | 
					
						
							| 
									
										
										
										
											2016-11-24 23:21:40 +01:00
										 |  |  |     // lets look for further config
 | 
					
						
							|  |  |  |     configModule.getConfig() | 
					
						
							|  |  |  |         .then(config => { | 
					
						
							|  |  |  |         for (let npmTool of config.globalNpmTools) { | 
					
						
							|  |  |  |             plugins.beautylog.info(`globally installing ${npmTool} from npm`); | 
					
						
							| 
									
										
										
										
											2016-11-25 13:43:35 +01:00
										 |  |  |             npmci_bash_1.bash(`npm install -q -g ${npmTool}`); | 
					
						
							| 
									
										
										
										
											2016-11-24 23:21:40 +01:00
										 |  |  |         } | 
					
						
							|  |  |  |         done.resolve(); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2016-05-30 02:29:30 +02:00
										 |  |  |     return done.promise; | 
					
						
							|  |  |  | }; | 
					
						
							| 
									
										
										
										
											2016-11-25 13:43:35 +01:00
										 |  |  | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtY2kuaW5zdGFsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL25wbWNpLmluc3RhbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDJDQUEwQztBQUMxQywrQ0FBOEM7QUFDOUMsNkNBQW1DO0FBQ25DLDZDQUEyQztBQUNoQyxRQUFBLE9BQU8sR0FBRyxDQUFDLFVBQVU7SUFDNUIsSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUM1QixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsVUFBVSxFQUFFLENBQUMsQ0FBQTtJQUNsRSxJQUFJLE9BQWUsQ0FBQTtJQUNuQixFQUFFLENBQUMsQ0FBQyxVQUFVLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztRQUMxQixPQUFPLEdBQUcsUUFBUSxDQUFBO0lBQ3RCLENBQUM7SUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsVUFBVSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDOUIsT0FBTyxHQUFHLEdBQUcsQ0FBQTtJQUNqQixDQUFDO0lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFVBQVUsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sR0FBRyxHQUFHLENBQUE7SUFDakIsQ0FBQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ0osT0FBTyxHQUFHLFVBQVUsQ0FBQTtJQUN4QixDQUFDO0lBQUEsQ0FBQztJQUNGLEVBQUUsQ0FBQyxDQUFDLHlCQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ2YsaUJBQUksQ0FBQyxlQUFlLE9BQU8seUJBQXlCLE9BQU8sRUFBRSxDQUFDLENBQUE7UUFDOUQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLE9BQU8sMEJBQTBCLENBQUMsQ0FBQTtJQUNoRixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyx1REFBdUQsQ0FBQyxDQUFBO0lBQ25GLENBQUM7SUFBQSxDQUFDO0lBQ0YsaUJBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUNmLGlCQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFZCwrQkFBK0I7SUFDL0IsWUFBWSxDQUFDLFNBQVMsRUFBRTtTQUNuQixJQUFJLENBQUMsTUFBTTtRQUNSLEdBQUcsQ0FBQyxDQUFDLElBQUksT0FBTyxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHVCQUF1QixPQUFPLFdBQVcsQ0FBQyxDQUFBO1lBQ2pFLGlCQUFJLENBQUMscUJBQXFCLE9BQU8sRUFBRSxDQUFDLENBQUE7UUFDeEMsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUNsQixDQUFDLENBQUMsQ0FBQTtJQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFBO0FBQ3ZCLENBQUMsQ0FBQSJ9
 |