1 | #!/usr/bin/env node
|
2 | /****************************************************************************
|
3 | The MIT License (MIT)
|
4 |
|
5 | Copyright (c) 2014 Apigee Corporation
|
6 |
|
7 | Permission is hereby granted, free of charge, to any person obtaining a copy
|
8 | of this software and associated documentation files (the "Software"), to deal
|
9 | in the Software without restriction, including without limitation the rights
|
10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
11 | copies of the Software, and to permit persons to whom the Software is
|
12 | furnished to do so, subject to the following conditions:
|
13 |
|
14 | The above copyright notice and this permission notice shall be included in
|
15 | all copies or substantial portions of the Software.
|
16 |
|
17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
23 | THE SOFTWARE.
|
24 | ****************************************************************************/
|
25 | 'use strict';
|
26 |
|
27 | var app = require('commander');
|
28 | var service = require('../lib/commands/service/service');
|
29 | var cli = require('../lib/util/cli');
|
30 | var execute = cli.execute;
|
31 |
|
32 | app
|
33 | .command('create [name]')
|
34 | .option('-a, --account <account>', 'use specified account')
|
35 | .option('-t, --type <type>', 'create specified service type')
|
36 | .description('Create a service to be used by projects')
|
37 | .action(execute(service.create, 'Service'));
|
38 |
|
39 | app
|
40 | .command('delete [name]')
|
41 | .description('Delete a service')
|
42 | .option('-f, --force', 'force delete without confirmation')
|
43 | .action(execute(service.delete));
|
44 |
|
45 | app
|
46 | .command('list')
|
47 | .alias('ls')
|
48 | .description('List services')
|
49 | .action(execute(service.list, 'Services'));
|
50 |
|
51 | app
|
52 | .command('types [account]')
|
53 | .description('List service types for an Account')
|
54 | .action(execute(service.types, 'Service Types'));
|
55 |
|
56 | app.parse(process.argv);
|
57 | cli.validate(app);
|