@aws-amplify/amplify-category-predictions
Version:
amplify-cli predictions plugin
42 lines • 1.76 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const storage_api_1 = require("../../provider-utils/awscloudformation/prediction-category-walkthroughs/storage-api");
const subcommand = 'remove';
const category = 'predictions';
const { ResourceDoesNotExistError, exitOnNextTick } = require('@aws-amplify/amplify-cli-core');
async function removePredictionsS3Resources(context) {
const s3ResourceName = await (0, storage_api_1.invokeS3GetResourceName)(context);
if (!s3ResourceName) {
return;
}
const s3UserInputs = await (0, storage_api_1.invokeS3GetUserInputs)(context, s3ResourceName);
if (!s3UserInputs) {
context.usageData.emitError(new ResourceDoesNotExistError('S3 Resource not initialized correctly may require migration'));
exitOnNextTick(0);
return;
}
const adminTriggerFunction = s3UserInputs.adminTriggerFunction ? s3UserInputs.adminTriggerFunction.triggerFunction : undefined;
if (adminTriggerFunction) {
await (0, storage_api_1.invokeS3RemoveAdminLambdaTrigger)(context, s3ResourceName);
}
}
async function removePredictionsResources(context) {
const { amplify, parameters } = context;
const resourceName = parameters.first;
const result = await amplify.removeResource(context, category, resourceName);
try {
await removePredictionsS3Resources(context);
}
catch (err) {
context.print.info(err.stack);
context.print.error('An error occurred when removing the predictions resource');
context.usageData.emitError(err);
process.exitCode = 1;
}
return result;
}
module.exports = {
name: subcommand,
run: removePredictionsResources,
};
//# sourceMappingURL=remove.js.map