clientcontext

package
v3.0.0-beta10 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Err is raised when a context definition has issues.
	Err = errors.New("context error")

	ConfigFolder = "~/.config/opensvc/"
	// ConfigFilename is the file where the context information is stored
	ConfigFilename = ConfigFolder + "contexts"
)

Functions

func IsSet

func IsSet() bool

IsSet returns true if the OSVC_CONTEXT environment variable is set

func Load

func Load() (config, error)

Types

type Cluster

type Cluster struct {
	CertificateAuthority *string `json:"certificate_authority,omitempty"`
	Server               string  `json:"server"`
	InsecureSkipVerify   *bool   `json:"insecure,omitempty"`
}

Cluster host the endpoint address or name, and the certificate authority to trust.

type Relation

type Relation struct {
	ClusterRefName       string             `json:"cluster"`
	UserRefName          string             `json:"user"`
	Namespace            *string            `json:"namespace,omitempty"`
	AccessTokenDuration  *duration.Duration `json:"access_token_duration,omitempty"`
	RefreshTokenDuration *duration.Duration `json:"refresh_token_duration,omitempty"`
}

Relation is a Cluster-User relation.

type T

type T struct {
	Cluster   Cluster `json:"cluster"`
	User      User    `json:"user"`
	Namespace string  `json:"namespace"`
}

T is a dereferenced Cluster-User relation.

func New

func New() (T, error)

New return a remote cluster connection context (endpoint and user)

func (T) String

func (t T) String() string

type TokenInfo

type TokenInfo struct {
	Name            string `json:"name"`
	AccessExpireAt  string `json:"access_expired_at"`
	RefreshExpireAt string `json:"refresh_expired_at"`
	Authenticated   bool   `json:"authenticated"`
	AuthenticatedAt string `json:"authenticated_at"`
}

func (*TokenInfo) Unstructured

func (t *TokenInfo) Unstructured() map[string]any

type User

type User struct {
	ClientCertificate *string `json:"client_certificate,omitempty"`
	ClientKey         *string `json:"client_key,omitempty"`
	Name              *string `json:"name,omitempty"`
}

User hosts the certificate and private to use to connect to the remote cluster.

Jump to

Keyboard shortcuts

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