@google/clasp
Version:
Develop Apps Script Projects locally
31 lines (30 loc) • 1.74 kB
JavaScript
import { Command } from 'commander';
import { intl } from '../intl.js';
import { withSpinner } from './utils.js';
export const command = new Command('list-deployments')
.alias('deployments')
.description('List deployment ids of a script')
.action(async function () {
const clasp = this.opts().clasp;
const spinnerMsg = intl.formatMessage({ id: "baVdkq", defaultMessage: [{ type: 0, value: "Fetching deployments..." }] });
const deployments = await withSpinner(spinnerMsg, async () => {
return await clasp.project.listDeployments();
});
if (!deployments.results.length) {
const msg = intl.formatMessage({ id: "q2/XsW", defaultMessage: [{ type: 0, value: "No deployments." }] });
console.log(msg);
return;
}
const successMessage = intl.formatMessage({ id: "EJQ1WM", defaultMessage: [{ type: 0, value: "Found " }, { type: 6, value: "count", options: { one: { value: [{ type: 7 }, { type: 0, value: " deployment" }] }, other: { value: [{ type: 7 }, { type: 0, value: " deployments" }] } }, offset: 0, pluralType: "cardinal" }, { type: 0, value: "." }] }, {
count: deployments.results.length,
});
console.log(successMessage);
deployments.results
.filter(d => d.deploymentConfig && d.deploymentId)
.forEach(d => {
var _a, _b;
const versionString = ((_a = d.deploymentConfig) === null || _a === void 0 ? void 0 : _a.versionNumber) ? `@${d.deploymentConfig.versionNumber}` : '@HEAD';
const description = ((_b = d.deploymentConfig) === null || _b === void 0 ? void 0 : _b.description) ? `- ${d.deploymentConfig.description}` : '';
console.log(`- ${d.deploymentId} ${versionString} ${description}`);
});
});