You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
962 B
36 lines
962 B
5 years ago
|
const { execSync } = require("child_process");
|
||
|
|
||
|
const isNotValidString = str => !(typeof str === "string" && str.length > 1);
|
||
|
|
||
|
let APP_NAME = process.env.PLUGIN_APP_NAME;
|
||
|
const CAP_PASSWORD = process.env.PLUGIN_PASSWORD;
|
||
|
const CAP_HOST = process.env.PLUGIN_HOST;
|
||
|
|
||
|
const INCLUDE_FILES = process.env.PLUGIN_TAR_INCLUDE
|
||
|
? process.env.PLUGIN_TAR_INCLUDE.split(",").join(" ")
|
||
|
: ".";
|
||
|
|
||
|
const SUFFIXES = process.env.PLUGIN_SUFFIXES
|
||
|
? JSON.parse(process.env.PLUGIN_SUFFIXES)
|
||
|
: "";
|
||
|
|
||
|
const DRONE_BRANCH = process.env.DRONE_BRANCH;
|
||
|
|
||
|
if (
|
||
|
isNotValidString(APP_NAME) ||
|
||
|
isNotValidString(CAP_PASSWORD || isNotValidString(CAP_HOST))
|
||
|
) {
|
||
|
console.error("Invalid usage. Please check documentation");
|
||
|
process.exit(1);
|
||
|
}
|
||
|
|
||
|
if (SUFFIXES !== "") {
|
||
|
APP_NAME = APP_NAME + SUFFIXES[DRONE_BRANCH];
|
||
|
}
|
||
|
|
||
|
execSync(`tar -cf app.tar ${INCLUDE_FILES}`);
|
||
|
|
||
|
execSync(
|
||
|
`caprover deploy --caproverUrl ${CAP_HOST} --capPassword ${CAP_PASSWORD} --caproverApp ${APP_NAME} --tarFile app.tar`,
|
||
|
);
|