Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement project delete subcommand #573

Closed
sonofachamp opened this issue Dec 30, 2019 · 0 comments
Closed

Implement project delete subcommand #573

sonofachamp opened this issue Dec 30, 2019 · 0 comments
Assignees
Labels
area/app Issues about applications. type/enhancement Issues that are improvements for existing features.

Comments

@sonofachamp
Copy link
Contributor

sonofachamp commented Dec 30, 2019

Overview

project delete should orchestrate deletion of all resources associated with a project.

This includes:

  • apps
  • environments
  • stack set instances
  • stack set
  • infrastructure roles

All of these resources are CloudFormation managed, so it should be a matter of orchestrating the proper sessions and clients to accomplish deletion.

Inputs

Project name

NOTE: Currently env delete requires a profile to be input. Following a similar approach of using the "default" profile is probably sufficient for the first pass implementation of project delete.

Prompting for project name shouldn't be necessary since this command can only be supported from a local workspace which means we should be able to derive a project name.

Deletion confirmation

A --confirm or --yes flag will be supported to bypass a deletion confirmation prompt.

Flow

NOTE: Deletion order is significant.

  • delete apps
  • delete stack set instances
  • delete stack set
  • delete environments
  • delete SSM param
  • delete local workspace folder

I don't know of an existing way to detect application deployments to specific environments, but it's safe to assume the CloudFormation stack names, so we can do existence checks for stacks named <project>-<env>-<app> to confirm an existing deployment, or we could potentially just fire off stack deletions and gracefully handle failures when the stack doesn't exist (app isn't deployed).

@sonofachamp sonofachamp added type/enhancement Issues that are improvements for existing features. WIP Pull requests that are being modified now. labels Dec 30, 2019
@sonofachamp sonofachamp self-assigned this Dec 30, 2019
@efekarakus efekarakus added the area/app Issues about applications. label Jan 16, 2020
@efekarakus efekarakus added this to Backlog in Sprint 🏃‍♀️ via automation Jan 16, 2020
@efekarakus efekarakus moved this from Backlog to In progress in Sprint 🏃‍♀️ Jan 16, 2020
@sonofachamp sonofachamp removed the WIP Pull requests that are being modified now. label Jan 16, 2020
Sprint 🏃‍♀️ automation moved this from In progress to Pending release Jan 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/app Issues about applications. type/enhancement Issues that are improvements for existing features.
Projects
Sprint 🏃‍♀️
  
Pending release
Development

No branches or pull requests

2 participants