-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
87 lines (73 loc) · 2.89 KB
/
Copy pathindex.js
File metadata and controls
87 lines (73 loc) · 2.89 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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#! /usr/bin/env node
'use strict';
const { program } = require('commander');
const { create:createProject } = require('./bin/create');
const { reset:dbReset, migrate:dbMigrate, seed:dbSeed } = require('./bin/db')
const { create:createPackage, del:deletePackage } = require('./bin/package');
const { create:createTools } = require('./bin/tools');
const { upload:uploadPackage, update:updatePackage, get:getPackage, install:installPackages } = require('./bin/upload');
const packageInfo = require('./package.json');
program
.name(packageInfo.name)
.description(packageInfo.description)
.helpOption('-h, --help', 'Display help for command')
.version(packageInfo.version, '-v, --version', 'output the current version');
program
.command('create')
.description('Create empty construct project')
.argument('name', 'Project name (string) (required)')
.action(createProject)
program
.command('db:reset')
.description('Database will empty and create new tables and seed data')
.action(dbReset)
program
.command('db:migrate')
.description('Database tables will create')
.action(dbMigrate)
program
.command('db:seed')
.description('Database tables will fill with seed data')
.action(dbSeed)
program
.command('create:package')
.option('-d, --directory <directory>', 'Directory name')
.option('-db, --database <database>', 'Database table name')
.option('-pn, --packagename <packagename>', 'Package name')
.description('Package will create inside of app directory')
.action(createPackage)
program
.command('delete:package')
.option('-d, --directory <directory>', 'Directory name')
.description('Package will delete inside of app directory')
.action(deletePackage)
program
.command('create:tools')
.description('From tools directory, tools will create')
.action(createTools)
program
.command('upload:package')
.description('Upload package to base.al')
.argument('package_directory', 'Package directory name (string) (required)')
.argument('name', 'Package name (string) (required)')
.argument('slug', 'Slug (string) (required)')
.action(uploadPackage)
program
.command('update:package')
.description('Update package to base.al')
.argument('package_directory', 'Package directory name (string) (required)')
.argument('slug', 'Slug (string) (required)')
.action(updatePackage)
program
.command('get:package')
.description('Get package to base.al')
.argument('slug', 'Slug (string) (required)')
.argument('directory', 'Directory (string) (required)')
.option('-vs, --vers <vers>', 'Version (string) (optional)', 'latest')
.action(getPackage)
program
.command('install:packages')
.option('-f, --force <force>', 'Force install (boolean) (optional)', false)
.description('Install all packages from app/install.json')
.action(installPackages)
program.parse()