down.go 619 B

1234567891011121314151617181920212223242526272829303132
  1. package backend
  2. import (
  3. "context"
  4. "github.com/compose-spec/compose-go/cli"
  5. "github.com/docker/ecs-plugin/pkg/compose"
  6. "github.com/docker/ecs-plugin/pkg/console"
  7. )
  8. func (b *Backend) Down(ctx context.Context, options cli.ProjectOptions) error {
  9. name := options.Name
  10. if name == "" {
  11. project, err := cli.ProjectFromOptions(&options)
  12. if err != nil {
  13. return err
  14. }
  15. name = project.Name
  16. }
  17. err := b.api.DeleteStack(ctx, name)
  18. if err != nil {
  19. return err
  20. }
  21. w := console.NewProgressWriter()
  22. err = b.WaitStackCompletion(ctx, name, compose.StackDelete, w)
  23. if err != nil {
  24. return err
  25. }
  26. return nil
  27. }