Commit 8a801f0
Changed files (2)
cmd
generate
internal
generate
cmd/generate/generate_password.go
@@ -1,33 +1,16 @@
package generate
import (
- "fmt"
-
- "github.com/kahnwong/swissknife/utils"
- "github.com/rs/zerolog/log"
- "github.com/sethvargo/go-password/password"
+ "github.com/kahnwong/swissknife/internal/generate"
"github.com/spf13/cobra"
)
-func generatePassword() string {
- // Generate a password that is 64 characters long with 10 digits, 10 symbols,
- // allowing upper and lower case letters, disallowing repeat characters.
- res, err := password.Generate(32, 10, 0, false, false)
- if err != nil {
- log.Fatal().Msg("Failed to generate password")
- }
-
- return res
-}
-
var generatePasswordCmd = &cobra.Command{
Use: "password",
Short: "Generate password",
Long: `Generate password. Result is copied to clipboard.`,
Run: func(cmd *cobra.Command, args []string) {
- password := generatePassword()
- utils.WriteToClipboard(password)
- fmt.Printf("%s\n", password)
+ generate.Password()
},
}
internal/generate/password.go
@@ -0,0 +1,26 @@
+package generate
+
+import (
+ "fmt"
+
+ "github.com/kahnwong/swissknife/internal/utils"
+ "github.com/rs/zerolog/log"
+ "github.com/sethvargo/go-password/password"
+)
+
+func generatePassword() string {
+ // Generate a password that is 64 characters long with 10 digits, 10 symbols,
+ // allowing upper and lower case letters, disallowing repeat characters.
+ res, err := password.Generate(32, 10, 0, false, false)
+ if err != nil {
+ log.Fatal().Msg("Failed to generate password")
+ }
+
+ return res
+}
+
+func Password() {
+ psswd := generatePassword()
+ utils.WriteToClipboard(psswd)
+ fmt.Printf("%s\n", psswd)
+}