mirror of https://github.com/waku-org/waku-lab.git
44 lines
1.0 KiB
JavaScript
44 lines
1.0 KiB
JavaScript
|
const { promisify } = require("util");
|
||
|
const { publish } = require("gh-pages");
|
||
|
const ghpublish = promisify(publish);
|
||
|
|
||
|
/* fix for "Unhandled promise rejections" */
|
||
|
process.on("unhandledRejection", (err) => {
|
||
|
throw err;
|
||
|
});
|
||
|
|
||
|
const Args = process.argv.slice(2);
|
||
|
const USE_HTTPS = Args[0] && Args[0].toUpperCase() === "HTTPS";
|
||
|
|
||
|
const branch = "gh-pages";
|
||
|
const org = "waku-org";
|
||
|
const repo = "waku-lab";
|
||
|
/* use SSH auth by default */
|
||
|
let repoUrl = USE_HTTPS
|
||
|
? `https://github.com/${org}/${repo}.git`
|
||
|
: `git@github.com:${org}/${repo}.git`;
|
||
|
|
||
|
/* alternative auth using GitHub user and API token */
|
||
|
if (process.env.GH_USER != undefined) {
|
||
|
repoUrl =
|
||
|
"https://" +
|
||
|
process.env.GH_USER +
|
||
|
":" +
|
||
|
process.env.GH_TOKEN +
|
||
|
"@" +
|
||
|
`github.com/${org}/${repo}.git`;
|
||
|
}
|
||
|
|
||
|
const main = async (url, branch) => {
|
||
|
console.log(`Pushing to: ${url}`);
|
||
|
console.log(`On branch: ${branch}`);
|
||
|
await ghpublish("build/docs", {
|
||
|
repo: url,
|
||
|
branch: branch,
|
||
|
dotfiles: true,
|
||
|
silent: false,
|
||
|
});
|
||
|
};
|
||
|
|
||
|
main(repoUrl, branch);
|