Fix config init script
This commit is contained in:
		
							parent
							
								
									21ebd9a367
								
							
						
					
					
						commit
						85134b513d
					
				
					 1 changed files with 108 additions and 130 deletions
				
			
		
							
								
								
									
										238
									
								
								tools/init.js
									
										
									
									
									
								
							
							
						
						
									
										238
									
								
								tools/init.js
									
										
									
									
									
								
							|  | @ -7,140 +7,119 @@ const chalk = require('chalk'); | |||
| const configDirPath = `${__dirname}/../.config`; | ||||
| const configPath = `${configDirPath}/default.yml`; | ||||
| 
 | ||||
| const form = [ | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'maintainer', | ||||
| 		message: 'Maintainer name(and email address):' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'url', | ||||
| 		message: 'PRIMARY URL:' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'secondary_url', | ||||
| 		message: 'SECONDARY URL:' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'port', | ||||
| 		message: 'Listen port:' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'confirm', | ||||
| 		name: 'https', | ||||
| 		message: 'Use TLS?', | ||||
| 		default: false | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'https_key', | ||||
| 		message: 'Path of tls key:', | ||||
| 		when: ctx => ctx.https | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'https_cert', | ||||
| 		message: 'Path of tls cert:', | ||||
| 		when: ctx => ctx.https | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'https_ca', | ||||
| 		message: 'Path of tls ca:', | ||||
| 		when: ctx => ctx.https | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'mongo_host', | ||||
| 		message: 'MongoDB\'s host:', | ||||
| 		default: 'localhost' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'mongo_port', | ||||
| 		message: 'MongoDB\'s port:', | ||||
| 		default: '27017' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'mongo_db', | ||||
| 		message: 'MongoDB\'s db:', | ||||
| 		default: 'misskey' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'mongo_user', | ||||
| 		message: 'MongoDB\'s user:' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'password', | ||||
| 		name: 'mongo_pass', | ||||
| 		message: 'MongoDB\'s password:' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'redis_host', | ||||
| 		message: 'Redis\'s host:', | ||||
| 		default: 'localhost' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'redis_port', | ||||
| 		message: 'Redis\'s port:', | ||||
| 		default: '6379' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'password', | ||||
| 		name: 'redis_pass', | ||||
| 		message: 'Redis\'s password:' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'confirm', | ||||
| 		name: 'elasticsearch', | ||||
| 		message: 'Use Elasticsearch?', | ||||
| 		default: false | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'es_host', | ||||
| 		message: 'Elasticsearch\'s host:', | ||||
| 		default: 'localhost', | ||||
| 		when: ctx => ctx.elasticsearch | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'es_port', | ||||
| 		message: 'Elasticsearch\'s port:', | ||||
| 		default: '9200', | ||||
| 		when: ctx => ctx.elasticsearch | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'password', | ||||
| 		name: 'es_pass', | ||||
| 		message: 'Elasticsearch\'s password:', | ||||
| 		when: ctx => ctx.elasticsearch | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'recaptcha_site', | ||||
| 		message: 'reCAPTCHA\'s site key:' | ||||
| 	}, | ||||
| 	{ | ||||
| 		type: 'input', | ||||
| 		name: 'recaptcha_secret', | ||||
| 		message: 'reCAPTCHA\'s secret key:' | ||||
| 	} | ||||
| ]; | ||||
| const form = [{ | ||||
| 	type: 'input', | ||||
| 	name: 'maintainerName', | ||||
| 	message: 'Your name:' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'maintainerUrl', | ||||
| 	message: 'Your home page URL or your mailto URL:' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'url', | ||||
| 	message: 'URL you want to run Misskey:' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'port', | ||||
| 	message: 'Listen port (e.g. 443):' | ||||
| }, { | ||||
| 	type: 'confirm', | ||||
| 	name: 'https', | ||||
| 	message: 'Use TLS?', | ||||
| 	default: false | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'https_key', | ||||
| 	message: 'Path of tls key:', | ||||
| 	when: ctx => ctx.https | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'https_cert', | ||||
| 	message: 'Path of tls cert:', | ||||
| 	when: ctx => ctx.https | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'https_ca', | ||||
| 	message: 'Path of tls ca:', | ||||
| 	when: ctx => ctx.https | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'mongo_host', | ||||
| 	message: 'MongoDB\'s host:', | ||||
| 	default: 'localhost' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'mongo_port', | ||||
| 	message: 'MongoDB\'s port:', | ||||
| 	default: '27017' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'mongo_db', | ||||
| 	message: 'MongoDB\'s db:', | ||||
| 	default: 'misskey' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'mongo_user', | ||||
| 	message: 'MongoDB\'s user:' | ||||
| }, { | ||||
| 	type: 'password', | ||||
| 	name: 'mongo_pass', | ||||
| 	message: 'MongoDB\'s password:' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'redis_host', | ||||
| 	message: 'Redis\'s host:', | ||||
| 	default: 'localhost' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'redis_port', | ||||
| 	message: 'Redis\'s port:', | ||||
| 	default: '6379' | ||||
| }, { | ||||
| 	type: 'password', | ||||
| 	name: 'redis_pass', | ||||
| 	message: 'Redis\'s password:' | ||||
| }, { | ||||
| 	type: 'confirm', | ||||
| 	name: 'elasticsearch', | ||||
| 	message: 'Use Elasticsearch?', | ||||
| 	default: false | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'es_host', | ||||
| 	message: 'Elasticsearch\'s host:', | ||||
| 	default: 'localhost', | ||||
| 	when: ctx => ctx.elasticsearch | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'es_port', | ||||
| 	message: 'Elasticsearch\'s port:', | ||||
| 	default: '9200', | ||||
| 	when: ctx => ctx.elasticsearch | ||||
| }, { | ||||
| 	type: 'password', | ||||
| 	name: 'es_pass', | ||||
| 	message: 'Elasticsearch\'s password:', | ||||
| 	when: ctx => ctx.elasticsearch | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'recaptcha_site', | ||||
| 	message: 'reCAPTCHA\'s site key:' | ||||
| }, { | ||||
| 	type: 'input', | ||||
| 	name: 'recaptcha_secret', | ||||
| 	message: 'reCAPTCHA\'s secret key:' | ||||
| }]; | ||||
| 
 | ||||
| inquirer.prompt(form).then(as => { | ||||
| 	// Mapping answers
 | ||||
| 	const conf = { | ||||
| 		maintainer: as['maintainer'], | ||||
| 		maintainer: { | ||||
| 			name: as['maintainerName'], | ||||
| 			url: as['maintainerUrl'] | ||||
| 		}, | ||||
| 		url: as['url'], | ||||
| 		secondary_url: as['secondary_url'], | ||||
| 		port: parseInt(as['port'], 10), | ||||
| 		https: { | ||||
| 			enable: as['https'], | ||||
|  | @ -175,7 +154,6 @@ inquirer.prompt(form).then(as => { | |||
| 	console.log(`Thanks. Writing the configuration to ${chalk.bold(path.resolve(configPath))}`); | ||||
| 
 | ||||
| 	try { | ||||
| 		fs.mkdirSync(configDirPath); | ||||
| 		fs.writeFileSync(configPath, yaml.dump(conf)); | ||||
| 		console.log(chalk.green('Well done.')); | ||||
| 	} catch (e) { | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue