1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package enrollment_key
- import (
- "strings"
- "github.com/gravitl/netmaker/cli/functions"
- "github.com/gravitl/netmaker/models"
- "github.com/spf13/cobra"
- )
- var (
- expiration int
- usesRemaining int
- networks string
- unlimited bool
- tags string
- )
- var enrollmentKeyCreateCmd = &cobra.Command{
- Use: "create",
- Args: cobra.NoArgs,
- Short: "Create an enrollment key",
- Long: `Create an enrollment key`,
- Run: func(cmd *cobra.Command, args []string) {
- enrollKey := &models.APIEnrollmentKey{
- Expiration: int64(expiration),
- UsesRemaining: usesRemaining,
- Unlimited: unlimited,
- }
- if networks != "" {
- enrollKey.Networks = strings.Split(networks, ",")
- }
- if tags != "" {
- enrollKey.Tags = strings.Split(tags, ",")
- }
- functions.PrettyPrint(functions.CreateEnrollmentKey(enrollKey))
- },
- }
- func init() {
- enrollmentKeyCreateCmd.Flags().IntVar(&expiration, "expiration", 0, "Expiration time of the key in UNIX timestamp format")
- enrollmentKeyCreateCmd.Flags().IntVar(&usesRemaining, "uses", 0, "Number of times this key can be used")
- enrollmentKeyCreateCmd.Flags().StringVar(&networks, "networks", "", "Comma-separated list of networks which the enrollment key can access")
- enrollmentKeyCreateCmd.Flags().BoolVar(&unlimited, "unlimited", false, "Should the key have unlimited uses ?")
- enrollmentKeyCreateCmd.Flags().StringVar(&tags, "tags", "", "Comma-separated list of any additional tags")
- rootCmd.AddCommand(enrollmentKeyCreateCmd)
- }
|