feature(cl) cl.getVersion -> cl

This commit is contained in:
coderaiser 2014-11-18 07:10:26 -05:00
parent f630a95b23
commit 2debe0d5c5
5 changed files with 63 additions and 70 deletions

View file

@ -4,31 +4,30 @@
var DIR = '../',
minor = require('minor'),
Info = require(DIR + 'package'),
ERROR = Error('ERROR: version is missing. gulp package --v<version> or --major --minor --patch'),
Version;
exports.getVersion = function() {
var versionNew,
module.exports = function(callback) {
var versionNew, error,
argv = process.argv,
length = argv.length - 1,
last = process.argv[length],
regExp = /^--(major|minor|patch)?/,
match = last.match(regExp);
if (!Version && regExp.test(last)) {
if (match[1])
versionNew = minor(match[1], Info.version);
else
versionNew = last.substr(3);
Version = versionNew;
}
if (!Version)
if (!regExp.test(last)) {
error = ERROR;
} else {
if (match[1])
versionNew = minor(match[1], Info.version);
else
versionNew = last.substr(3);
Version = versionNew;
}
return Version;
};
exports.showVersionError = function() {
var msg = 'ERROR: version is missing. gulp package --v<version>';
console.log(msg);
callback(error, Version);
};
})();

View file

@ -1,25 +1,15 @@
(function() {
'use strict';
var DIR = '../../',
changelog = require('changelog-io'),
cl = require('../cl'),
Info = require(DIR + 'package');
var changelog = require('changelog-io'),
cl = require('../cl');
module.exports = function() {
var version = 'v' + Info.version,
versionNew = cl.getVersion();
if (versionNew)
versionNew = 'v' + versionNew;
else
versionNew = version + '?';
changelog(versionNew, function(error, msg) {
module.exports = function(callback) {
cl(function(error, versionNew) {
if (error)
console.error(error.message);
callback(error);
else
console.log(msg);
changelog(versionNew, callback);
});
};
})();

View file

@ -8,44 +8,42 @@
Util = require(DIR + 'lib/util'),
Info = require(DIR + 'package');
module.exports = function() {
module.exports = function(callback) {
var history = 'Version history\n---------------\n',
link = '//github.com/cloudcmd/archive/raw/master/cloudcmd',
template = '- *{{ date }}*, ' +
'**[v{{ version }}]' +
'(' + link + '-v{{ version }}.zip)**\n',
version = Info.version,
versionNew = cl.getVersion();
version = Info.version;
if (!versionNew) {
cl.showVersionError();
} else {
replaceVersion('README.md', version, versionNew);
replaceVersion('HELP.md', version, versionNew, function() {
var historyNew = history + Util.render(template, {
date : Util.getShortDate,
version : versionNew
cl(function(error, versionNew) {
if (error) {
callback(error);
} else {
replaceVersion('README.md', version, versionNew, callback);
replaceVersion('HELP.md', version, versionNew, function() {
var historyNew = history + Util.render(template, {
date : Util.getShortDate,
version : versionNew
});
replaceVersion('HELP.md', history, historyNew, callback);
});
replaceVersion('HELP.md', history, historyNew);
});
}
}
});
};
function replaceVersion(name, version, versionNew, callback) {
fs.readFile(name, 'utf8', function(error, data) {
if (error) {
console.log(error);
} else {
data = data.replace(version, versionNew);
fs.writeFile(name, data, function(error) {
var msg = 'done: ' + name;
console.log(error || msg);
Util.exec(callback);
fs.readFile(name, 'utf8', function(error, data) {
if (error)
callback(error);
else
fs.writeFile(
name,
data.replace(version, versionNew),
function(error) {
callback(error, 'done: ' + name);
});
}
});
});
}
})();

View file

@ -4,17 +4,14 @@
var version = require('version-io'),
cl = require('../cl');
module.exports = function() {
var versionNew = cl.getVersion();
if (!versionNew)
cl.showVersionError();
else
module.exports = function(callback) {
cl(function(error, versionNew) {
version(versionNew, function(error) {
if (error)
console.error(error.message);
callback(error);
else
console.log('package: done');
callback(null, 'package: done');
});
});
};
})();

View file

@ -25,7 +25,16 @@
];
['changelog', 'docs', 'package'].forEach(function(name) {
gulp.task(name, require('./gulp/tasks/' + name));
gulp.task(name, function() {
var task = require('./gulp/tasks/' + name);
task(function(error, msg) {
if (error)
console.error(error.message);
else
console.log(msg);
});
}.bind(null, name));
});
gulp.task('jshint', function() {