2013-08-13 08:07:23 +08:00
|
|
|
#!/usr/bin/env node
|
|
|
|
|
|
|
|
/*
|
|
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
|
|
or more contributor license agreements. See the NOTICE file
|
|
|
|
distributed with this work for additional information
|
|
|
|
regarding copyright ownership. The ASF licenses this file
|
|
|
|
to you under the Apache License, Version 2.0 (the
|
|
|
|
"License"); you may not use this file except in compliance
|
|
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
|
|
software distributed under the License is distributed on an
|
|
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
|
|
KIND, either express or implied. See the License for the
|
|
|
|
specific language governing permissions and limitations
|
|
|
|
under the License.
|
|
|
|
*/
|
2013-08-28 02:41:54 +08:00
|
|
|
var path = require('path');
|
2013-08-13 08:07:23 +08:00
|
|
|
var args = process.argv;
|
|
|
|
|
2013-08-28 02:41:54 +08:00
|
|
|
try {
|
|
|
|
require.resolve("shelljs");
|
|
|
|
create();
|
|
|
|
} catch(e) {
|
|
|
|
console.log('Shelljs module was not found, running \'npm install\'.....');
|
|
|
|
var exec = require('child_process').exec;
|
|
|
|
var cwd = process.cwd();
|
|
|
|
process.chdir(__dirname);
|
|
|
|
exec('npm install', function (error, stdout, stderr) {
|
|
|
|
if (error !== null) {
|
|
|
|
console.error('ERROR : running \'npm install\' is npm installed? ' + error);
|
|
|
|
console.error(stderr);
|
|
|
|
process.exit(error.code);
|
|
|
|
}
|
|
|
|
process.chdir(cwd);
|
|
|
|
create();
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
function create() {
|
|
|
|
var create = require('./lib/create');
|
|
|
|
// Support basic help commands
|
|
|
|
if(args.length < 3 || (args[2] == '--help' || args[2] == '/?' || args[2] == '-h' ||
|
|
|
|
args[2] == 'help' || args[2] == '-help' || args[2] == '/help')) {
|
|
|
|
create.help();
|
|
|
|
} else {
|
|
|
|
create.run(args[2], args[3], args[4]);
|
|
|
|
process.exit(0);
|
|
|
|
}
|
2013-08-13 08:07:23 +08:00
|
|
|
}
|