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.
35 lines
962 B
35 lines
962 B
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`,
|
|
);
|
|
|