Azure / Azure/static-web-apps-cli

feat: ability to tear down preview environments

Open
#548 2 comments 15 reactions 0 assignees View on GitHub
command: deploy complexity: days priority: low (P2) scope: cli type: enhancement type: RFC
Dominant language
TypeScript
Stars
668
Forks
156
PR merge metrics
No merged PRs in 30d

Description

**Is your feature request related to a problem? Please describe.**
I'm frustrated that I can not tear down preview environments using the `swa` tool.

Our organization is on a private gitlab installation and due to our insane security policies I can't use the regular `image : registry.gitlab.com/static-web-apps/azure-static-web-apps-deploy` because it's blocked. So I am installing the 'swa` tool in our node images to do deployments to our SWA instance as part of a job in Gitlab's pipeline.

So, I'm trying to setup GitLab's review apps in our project. I would love for when a pull request is closed / merged the `on_stop` job runs and then removes the preview environment created for that particular job. (NB: I create the preview environment during a deploy job using the `swa` tool earlier in the pipeline)

This would also be helpful as the free tier only has a limit of 3 (three) preview environments, so keeping the number of preview environments taken up to the absolute lowest is key.

**Describe the solution you'd like**
A simple tear down flag on the deploy command so that when you run it, it removes a preview environment from your `swa` instance.

## Options

- `-tre, --tear-down-env [environment]`: Removes a preview environment based on the name provided

```
swa deploy --tear-down-env "preview-environment-name"
```

**Describe alternatives you've considered**
The only alternative I can think of is logging into the Azure portal and manually deleting the preview environments.

**Additional context**
No additional context just to saw that I'm so happy you even created the `swa` tool. It's a lifesaver for me already, and I appreciate the continued support and enhancement to this tool and our unique use cases.

Contributor guide

Open the contributing guide

Research direction

Start at the swa deploy command and review how preview environments are created for a named environment. Add a teardown path that accepts the requested environment name and removes that preview environment, then verify that the command works for the GitLab on_stop use case and does not affect other environments.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, typescript
Domain
cli, cloud
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.