@tywalk/pcf-helper
Version:
Command line helper for building and publishing PCF controls to Dataverse.
87 lines (86 loc) • 3.69 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
const upgradeTask = __importStar(require("../tasks/upgrade-pcf"));
const buildTask = __importStar(require("../tasks/build-pcf"));
const importTask = __importStar(require("../tasks/import-pcf"));
const package_json_1 = require("../package.json");
const commander_1 = require("commander");
const argumentUtil_1 = require("../util/argumentUtil");
const commandUtil_1 = require("../util/commandUtil");
// Apply argument preprocessing for backward compatibility
const { hadDeprecatedEnv } = (0, argumentUtil_1.applyArgumentPreprocessing)(process.argv);
function executeTasks(path, env, options) {
const upgradeResult = upgradeTask.runUpgrade(path, options.verbose || false);
if (upgradeResult === 1)
return 1;
const buildResult = buildTask.runBuild(path, options.verbose || false, options.timeout ? Number(options.timeout) : undefined);
if (buildResult === 1)
return 1;
const importResult = importTask.runImport(path, env, options.verbose || false, options.timeout ? Number(options.timeout) : undefined);
if (importResult === 1)
return 1;
return 0;
}
const program = new commander_1.Command();
(0, argumentUtil_1.addPathAndEnvironmentOptions)(program)
.name('pcf-helper-deploy')
.description('Deploy PCF controls (runs upgrade, build, and import)')
.version(package_json_1.version, '-v, --version')
.action((options) => {
const { logger, tick } = (0, commandUtil_1.setupExecutionContext)(options);
logger.log('PCF Helper version', package_json_1.version);
const { path, environment } = (0, argumentUtil_1.resolvePathAndEnvironment)(options, hadDeprecatedEnv);
if (!path) {
logger.error('Path argument is required. Use --path or set `path` in the active profile.');
process.exit(1);
}
let result = 0;
try {
result = executeTasks(path, environment, options);
if (result === 0) {
logger.log('Deploy complete!');
}
}
catch (e) {
logger.error('One or more tasks failed while deploying: ', e instanceof Error ? e.message : 'unknown error');
result = 1;
}
finally {
(0, commandUtil_1.handleResults)('deploy', logger, tick, result);
}
})
.parse();