-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.js
More file actions
executable file
·61 lines (52 loc) · 1.47 KB
/
index.js
File metadata and controls
executable file
·61 lines (52 loc) · 1.47 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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#!/usr/bin/env node
const args = require('minimist')(process.argv.slice(2))
const service = require('./service')
let cli = {
mode: undefined,
app: undefined,
host: undefined,
context: undefined,
}
// Deployment Mode
if (args.z || args.zip) {
cli.mode = "zip"
cli.context = args.z ? args.z : args.zip
} else if (args.t || args.tar) {
cli.mode = "tar"
cli.context = args.t ? args.t : args.tar
} else if (args.f || args.folder) {
cli.mode = "folder"
cli.context = args.f ? args.f : args.folder
} else if (args.b || args.branch) {
cli.mode = "branch"
cli.context = args.b ? args.b : args.branch
} else if (args.i || args.image) {
cli.mode = "image"
cli.context = args.i ? args.i : args.image
}
//App Name
if (args.a) cli.app = args.a
if (args.app) cli.app = args.app
//Host Name
if (args.h) cli.host = args.h
if (args.host) cli.host = args.host
if (!cli.mode) {
return console.error("Please choose a deployment mode")
}
if (!cli.app) {
return console.error("Please specify an app name")
}
if (!cli.host) {
return console.error("Please specify an host name")
}
if (cli.mode == "tar" || cli.mode == "zip") {
cli.file = cli.context
}
switch (cli.mode) {
case "tar": service.uploadFile(cli); break;
case "zip": service.uploadFile(cli); break;
case "folder": service.tarFolder(cli); break;
case "branch": service.tarGitBranch(cli); break;
case "image": service.tarDockerImage(cli); break;
default: console.error("Please provide a proper deployment mode")
}