From 6b2c04728cd914f27ae62c1df0bf5df24ac9a628 Mon Sep 17 00:00:00 2001 From: Clawd Date: Tue, 17 Feb 2026 07:54:26 -0800 Subject: Remove v1 code, simplify state to just base_domain - Delete all v1 commands (deploy, init, list, status, remove, etc.) - Delete v1 env/ and host/ subcommand directories - Simplify state.go: remove NextPort, Apps, AllocatePort, etc. - Local state now only tracks default_host + base_domain per host - Ports and deploys are tracked on the server (/etc/ship/ports/) - host init now creates minimal state.json --- cmd/ship/env/unset.go | 95 --------------------------------------------------- 1 file changed, 95 deletions(-) delete mode 100644 cmd/ship/env/unset.go (limited to 'cmd/ship/env/unset.go') diff --git a/cmd/ship/env/unset.go b/cmd/ship/env/unset.go deleted file mode 100644 index 8292f42..0000000 --- a/cmd/ship/env/unset.go +++ /dev/null @@ -1,95 +0,0 @@ -package env - -import ( - "fmt" - - "github.com/bdw/ship/internal/ssh" - "github.com/bdw/ship/internal/state" - "github.com/spf13/cobra" -) - -var unsetCmd = &cobra.Command{ - Use: "unset KEY...", - Short: "Unset environment variable(s)", - Long: "Remove one or more environment variables from an app.", - Args: cobra.MinimumNArgs(2), - RunE: runUnset, -} - -func runUnset(cmd *cobra.Command, args []string) error { - name := args[0] - if err := state.ValidateName(name); err != nil { - return err - } - keys := args[1:] - - st, err := state.Load() - if err != nil { - return fmt.Errorf("error loading state: %w", err) - } - - host, _ := cmd.Flags().GetString("host") - if host == "" { - host = st.GetDefaultHost() - } - - if host == "" { - return fmt.Errorf("--host is required") - } - - app, err := st.GetApp(host, name) - if err != nil { - return err - } - - if app.Type != "app" { - return fmt.Errorf("env is only available for apps, not static sites") - } - - if app.Env == nil { - return fmt.Errorf("no environment variables set") - } - - changed := false - for _, key := range keys { - if _, exists := app.Env[key]; exists { - delete(app.Env, key) - changed = true - fmt.Printf("Unset %s\n", key) - } else { - fmt.Printf("Warning: %s not found\n", key) - } - } - - if !changed { - return nil - } - - if err := st.Save(); err != nil { - return fmt.Errorf("error saving state: %w", err) - } - - client, err := ssh.Connect(host) - if err != nil { - return fmt.Errorf("error connecting to VPS: %w", err) - } - defer client.Close() - - fmt.Println("-> Updating environment file on VPS...") - envFilePath := fmt.Sprintf("/etc/ship/env/%s.env", name) - envContent := "" - for k, v := range app.Env { - envContent += fmt.Sprintf("%s=%s\n", k, v) - } - if err := client.WriteSudoFile(envFilePath, envContent); err != nil { - return fmt.Errorf("error updating env file: %w", err) - } - - fmt.Println("-> Restarting service...") - if _, err := client.RunSudo(fmt.Sprintf("systemctl restart %s", name)); err != nil { - return fmt.Errorf("error restarting service: %w", err) - } - - fmt.Println("Environment variables updated successfully") - return nil -} -- cgit v1.2.3