forked from fastify/fastify-cli
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathargs.js
More file actions
47 lines (44 loc) · 1.25 KB
/
Copy pathargs.js
File metadata and controls
47 lines (44 loc) · 1.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
'use strict'
const argv = require('yargs-parser')
module.exports = function parseArgs (args) {
const parsedArgs = argv(args, {
number: ['port', 'body-limit', 'plugin-timeout'],
boolean: ['pretty-logs', 'options', 'watch'],
string: ['log-level', 'address', 'socket', 'prefix', 'ignore-watch'],
envPrefix: 'FASTIFY_',
alias: {
port: ['p'],
socket: ['s'],
help: ['h'],
options: ['o'],
address: ['a'],
watch: ['w'],
prefix: ['r'],
'log-level': ['l'],
'pretty-logs': ['P'],
'plugin-timeout': ['T']
},
default: {
'log-level': 'fatal',
'pretty-logs': false,
watch: false,
'ignore-watch': 'node_modules build dist .git bower_components logs',
options: false,
'plugin-timeout': 10 * 1000 // everything should load in 10 seconds
}
})
return {
_: parsedArgs._,
port: parsedArgs.port,
bodyLimit: parsedArgs.bodyLimit,
pluginTimeout: parsedArgs.pluginTimeout,
prettyLogs: parsedArgs.prettyLogs,
options: parsedArgs.options,
watch: parsedArgs.watch,
ignoreWatch: parsedArgs.ignoreWatch,
logLevel: parsedArgs.logLevel,
address: parsedArgs.address,
socket: parsedArgs.socket,
prefix: parsedArgs.prefix
}
}