package jwt import ( "time" portainer "github.com/portainer/portainer/api" ) // GenerateTokenForKubeconfig generates a new JWT token for Kubeconfig func (service *Service) GenerateTokenForKubeconfig(data *portainer.TokenData) (string, error) { settings, err := service.dataStore.Settings().Settings() if err != nil { return "", err } expiryDuration, err := time.ParseDuration(settings.KubeconfigExpiry) if err != nil { return "", err } expiryAt := time.Now().Add(expiryDuration) if expiryDuration == time.Duration(0) { expiryAt = time.Time{} } return service.generateSignedToken(data, expiryAt, kubeConfigScope) }