token

package
v0.81.0-dev-3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 6, 2024 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Cmd = &cobra.Command{
	Use:   "token",
	Short: "Get token for ServiceAccount",
	Args:  cobra.NoArgs,
	Run: func(c *cobra.Command, args []string) {
		clientset, defaultNamespace, _ := k8s.KubernetesClient()

		namespace := defaultNamespace
		if CmdFlagNamespace != "" {
			namespace = CmdFlagNamespace
		}

		saClient := clientset.CoreV1().ServiceAccounts(namespace)
		secretClient := clientset.CoreV1().Secrets(namespace)

		sa, err := saClient.Get(context.TODO(), CmdFlagServiceAccount, metav1.GetOptions{})
		if err != nil {
			log.Fatal(err)
		}
		secret, err := secretClient.Get(context.TODO(), sa.Secrets[0].Name, metav1.GetOptions{})
		if err != nil {
			log.Fatal(err)
		}

		if FlagJson {
			outJson, err := json.Marshal(string(secret.Data["token"]))
			if err != nil {
				panic(err)
			}
			fmt.Println(string(outJson))
		} else {
			fmt.Println(string(secret.Data["token"]))
		}
	},
}
View Source
var CmdFlagNamespace string
View Source
var CmdFlagServiceAccount string
View Source
var FlagJson bool

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL