Files
..

title, status, authors, owners, project-areas, creation-date
title status authors owners project-areas creation-date
Scaffolder Action Rollback provisional
bnechyporenko@bol.com
benjaminl@spotify.com
@backstage/scaffolder-maintainers
scaffolder
2024-03-13

BEP:

Discussion Issue

Summary

Introducing the rollback to scaffolder actions provides the mean to come back to the initial state.

Motivation

The aim is to help to mitigate the issue of manual clean up the partially created resources.

Goals

  • We will extend action's API to be able to run rollback for failed tasks
  • Rollback will be optional

Non-Goals

We will not cover all built-in actions with a rollback functionality

Proposal

Rollback is going to be performed:

  • when user manually decide to perform this action.
  • task has to be recovered and TaskRecoverStrategy set to 'rollback'

Design Details

We are going to introduce an extra function in action API which will look like:

const createPublishGitHubAction = createTemplateAction({
  id: 'publish:github',
  async handler() {},
  async rollback() {},
});

Release Plan

Dependencies

Alternatives