dce-dev-wizard
Version:
Wizard for managing development apps at Harvard DCE.
55 lines • 2.63 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var clear_1 = __importDefault(require("clear"));
// Import helpers
var getDeploymentConfig_1 = __importDefault(require("../operations/getDeploymentConfig"));
var print_1 = __importDefault(require("../helpers/print"));
var prompt_1 = __importDefault(require("../helpers/prompt"));
var exec_1 = __importDefault(require("../helpers/exec"));
/**
* Show and/or modify the deployed branch name or version number
* @author Gabe Abrams
* @param deployment the currently selected deployment
*/
var chooseBranch = function (deployment) {
// Show loading indicator
(0, clear_1.default)();
console.log('Loading current target of deployment...\n');
// Get environment variables
var deployConfig = (0, getDeploymentConfig_1.default)(deployment);
// Get last part of the app image
var parts = deployConfig.appImage.split(':');
var branchOrVersion = parts[parts.length - 1];
var appImagePrefix = deployConfig.appImage.substring(0, deployConfig.appImage.length - branchOrVersion.length);
// Check type
var isVersion = branchOrVersion.includes('.');
// Process branch name
var processedBranchName = branchOrVersion.replace('-', '/');
// Print status
(0, clear_1.default)();
print_1.default.subtitle('Target of Deployment:');
console.log("Current deployment target: ".concat(isVersion ? "version \"".concat(branchOrVersion, "\" on main branch") : "\"".concat(processedBranchName, "\" branch")));
console.log('');
console.log('Enter a new branch name or version number (leave empty to go back):');
var newBranchOrVersion = String((0, prompt_1.default)('> ', true)).trim().replace('/', '-');
// Immediately go back if no new branch name
if (newBranchOrVersion.length === 0) {
return;
}
// Build a new app image
var newAppImage = "".concat(appImagePrefix).concat(newBranchOrVersion);
// Update the configuration
(0, clear_1.default)();
console.log('Working...\n');
(0, exec_1.default)("./node_modules/.bin/caccl-deploy update --profile ".concat(deployment.profile, " --app ").concat(deployment.app, " appImage \"").concat(newAppImage, "\""), true);
// Confirmation
(0, clear_1.default)();
print_1.default.title('Target of Deployment Updated Successfully');
console.log('');
print_1.default.enterToContinue();
};
exports.default = chooseBranch;
//# sourceMappingURL=chooseTarget.js.map