github.com/Redstoneguy129/cli@v0.0.0-20230211220159-15dca4e91917/internal/secrets/unset/unset.go (about)

     1  package unset
     2  
     3  import (
     4  	"context"
     5  	"errors"
     6  	"fmt"
     7  	"net/http"
     8  
     9  	"github.com/Redstoneguy129/cli/internal/utils"
    10  	"github.com/spf13/afero"
    11  )
    12  
    13  func Run(ctx context.Context, args []string, fsys afero.Fs) error {
    14  	// 1. Sanity checks.
    15  	{
    16  		if err := utils.AssertSupabaseCliIsSetUpFS(fsys); err != nil {
    17  			return err
    18  		}
    19  	}
    20  
    21  	// 2. Unset secret(s).
    22  	{
    23  		projectRef, err := utils.LoadProjectRef(fsys)
    24  		if err != nil {
    25  			return err
    26  		}
    27  
    28  		resp, err := utils.GetSupabase().DeleteSecretsWithResponse(ctx, projectRef, args)
    29  		if err != nil {
    30  			return err
    31  		}
    32  
    33  		if resp.StatusCode() != http.StatusOK {
    34  			return errors.New("Unexpected error unsetting project secrets: " + string(resp.Body))
    35  		}
    36  	}
    37  
    38  	fmt.Println("Finished " + utils.Aqua("supabase secrets unset") + ".")
    39  	return nil
    40  }