36 lines
1.1 KiB
JavaScript
36 lines
1.1 KiB
JavaScript
|
'use strict';
|
||
|
|
||
|
var fs = require('fs');
|
||
|
var pr = require('pull-request');
|
||
|
var readdirp = require('lsr').sync;
|
||
|
|
||
|
var TOKEN = JSON.parse(fs.readFileSync(__dirname + '/.release.json', 'utf8'));
|
||
|
|
||
|
// todo: check that the version is a new un-released version
|
||
|
// todo: check the user has commit access to the github repo
|
||
|
// todo: check the user is an owner in npm
|
||
|
// todo: check History.md has been updated
|
||
|
|
||
|
var version = require('./package.json').version;
|
||
|
var compiledWebsite = require('./docs/stop.js');
|
||
|
|
||
|
compiledWebsite.then(function () {
|
||
|
var fileUpdates = readdirp(__dirname + '/docs/out').filter(function (info) {
|
||
|
return info.isFile();
|
||
|
}).map(function (info) {
|
||
|
return {
|
||
|
path: info.path.replace(/^\.\//, ''),
|
||
|
content: fs.readFileSync(info.fullPath)
|
||
|
};
|
||
|
});
|
||
|
return pr.commit('jadejs', 'jade', {
|
||
|
branch: 'gh-pages',
|
||
|
message: 'Update website for ' + version,
|
||
|
updates: fileUpdates
|
||
|
}, {auth: {type: 'oauth', token: TOKEN}});
|
||
|
}).then(function () {
|
||
|
// todo: release the new npm package, set the tag and commit etc.
|
||
|
}).done(function () {
|
||
|
console.log('website published');
|
||
|
});
|