38 lines
		
	
	
		
			677 B
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			677 B
		
	
	
	
		
			Go
		
	
	
	
| package util
 | |
| 
 | |
| import (
 | |
| 	"fmt"
 | |
| 	"math/rand"
 | |
| 	"time"
 | |
| 
 | |
| 	"k8s.io/client-go/pkg/api/v1"
 | |
| )
 | |
| 
 | |
| var passwordChars = []byte("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
 | |
| 
 | |
| func init() {
 | |
| 	rand.Seed(int64(time.Now().Unix()))
 | |
| }
 | |
| 
 | |
| func RandomPassword(n int) string {
 | |
| 	b := make([]byte, n)
 | |
| 	for i := range b {
 | |
| 		b[i] = passwordChars[rand.Intn(len(passwordChars))]
 | |
| 	}
 | |
| 
 | |
| 	return string(b)
 | |
| }
 | |
| 
 | |
| func FullObjectNameFromMeta(meta v1.ObjectMeta) string {
 | |
| 	return FullObjectName(meta.Namespace, meta.Name)
 | |
| }
 | |
| 
 | |
| //TODO: Remove in favour of FullObjectNameFromMeta
 | |
| func FullObjectName(ns, name string) string {
 | |
| 	if ns == "" {
 | |
| 		ns = "default"
 | |
| 	}
 | |
| 
 | |
| 	return fmt.Sprintf("%s / %s", ns, name)
 | |
| }
 |