Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cmd/info/version.go
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
package info

var Version = "0.0.66"
var Version = "0.0.67"
2 changes: 2 additions & 0 deletions cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import (
"github.com/kloudkit/ws-cli/cmd/log"
"github.com/kloudkit/ws-cli/cmd/logs"
"github.com/kloudkit/ws-cli/cmd/secrets"
"github.com/kloudkit/ws-cli/cmd/seed"
"github.com/kloudkit/ws-cli/cmd/serve"
"github.com/kloudkit/ws-cli/cmd/show"
"github.com/kloudkit/ws-cli/cmd/template"
Expand Down Expand Up @@ -57,5 +58,6 @@ func init() {
log.LogCmd,
logs.LogsCmd,
secrets.SecretsCmd,
seed.SeedCmd,
)
}
5 changes: 2 additions & 3 deletions cmd/secrets/secrets.go
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
package secrets

import (
"github.com/kloudkit/ws-cli/cmd/secrets/vault"
"github.com/spf13/cobra"
)

var SecretsCmd = &cobra.Command{
Use: "secrets",
Short: "Manage encryption, decryption, and vaults for secrets",
Short: "Manage encryption and decryption of secrets",
}

func init() {
Expand All @@ -17,5 +16,5 @@ func init() {
SecretsCmd.PersistentFlags().Bool("force", false, "Overwrite existing files")
SecretsCmd.PersistentFlags().Bool("raw", false, "Output without styling")

SecretsCmd.AddCommand(encryptCmd, decryptCmd, generateCmd, vault.VaultCmd)
SecretsCmd.AddCommand(encryptCmd, decryptCmd, generateCmd)
}
103 changes: 0 additions & 103 deletions cmd/secrets/vault/decrypt.go

This file was deleted.

50 changes: 0 additions & 50 deletions cmd/secrets/vault/ls.go

This file was deleted.

72 changes: 0 additions & 72 deletions cmd/secrets/vault/rotate.go

This file was deleted.

14 changes: 0 additions & 14 deletions cmd/secrets/vault/vault.go

This file was deleted.

50 changes: 50 additions & 0 deletions cmd/seed/apply.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package seed

import (
"io"
"os"

"github.com/kloudkit/ws-cli/internals/seed"
"github.com/spf13/cobra"
"golang.org/x/term"
)

var applyCmd = &cobra.Command{
Use: "apply [dest...]",
Short: "Project seed content onto the filesystem",
SilenceUsage: true,
RunE: runApply,
}

func runApply(cmd *cobra.Command, args []string) error {
source, _ := cmd.Flags().GetString("source")
force, _ := cmd.Flags().GetBool("force")
master, _ := cmd.Flags().GetString("master")

resolved, err := seed.ResolveSource(source)
if err != nil {
return err
}

return seed.Apply(seed.Options{
Source: resolved,
Force: force,
Dests: args,
MasterKey: master,
Out: cmd.OutOrStdout(),
Styled: isTerminal(cmd.OutOrStdout()),
})
}

func isTerminal(out io.Writer) bool {
file, ok := out.(*os.File)

return ok && term.IsTerminal(int(file.Fd()))
}

func init() {
applyCmd.Flags().Bool("force", false, "Overwrite existing destinations")
applyCmd.Flags().String("master", "", "Master key or path to key file")

SeedCmd.AddCommand(applyCmd)
}
54 changes: 54 additions & 0 deletions cmd/seed/ls.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package seed

import (
"strings"

"github.com/kloudkit/ws-cli/internals/seed"
"github.com/kloudkit/ws-cli/internals/styles"
"github.com/spf13/cobra"
)

var lsCmd = &cobra.Command{
Use: "ls",
Short: "List seed destinations and their behaviors",
RunE: runLs,
}

func runLs(cmd *cobra.Command, args []string) error {
source, _ := cmd.Flags().GetString("source")

resolved, err := seed.ResolveSource(source)
if err != nil {
return err
}

plan, err := seed.BuildPlan(resolved, false)
if err != nil {
return err
}

out := cmd.OutOrStdout()
for _, op := range plan.Ops {
styles.PrintKeyValue(out, op.Dest, describe(op))
}

return nil
}

func describe(op seed.ResolvedOp) string {
parts := []string{string(op.Op)}

if op.Secret {
parts = append(parts, "secret")
}

if op.Template {
parts = append(parts, "template")
}

return strings.Join(parts, " ")
}

func init() {
SeedCmd.AddCommand(lsCmd)
}
Loading
Loading