common

package
v0.0.0-...-7cb3815 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Functions

func SetDurationSpan

func SetDurationSpan(startTime int64, span trace.Span, opts ...SpanOption)

Types

type ContainerLogOpts

type ContainerLogOpts struct {
	Tail         int       `json:"Tail"`
	LimitBytes   int       `json:"Bytes"`
	Timestamps   bool      `json:"Timestamps"`
	Follow       bool      `json:"Follow"`
	Previous     bool      `json:"Previous"`
	SinceSeconds int       `json:"SinceSeconds"`
	SinceTime    time.Time `json:"SinceTime"`
}

ContainerLogOpts is a struct in which it is possible to specify options to retrieve logs from the sidecar

type DockerConfig

type DockerConfig struct {
	VKConfigPath              string   `yaml:"VKConfigPath"`
	Socket                    string   `yaml:"Socket"`
	ExportPodData             bool     `yaml:"ExportPodData"`
	Commandprefix             string   `yaml:"CommandPrefix"`
	ImagePrefix               string   `yaml:"ImagePrefix"`
	DataRootFolder            string   `yaml:"DataRootFolder"`
	Namespace                 string   `yaml:"Namespace"`
	Tsocks                    bool     `yaml:"Tsocks"`
	Tsockspath                string   `yaml:"TsocksPath"`
	Tsockslogin               string   `yaml:"TsocksLoginNode"`
	BashPath                  string   `yaml:"BashPath"`
	VerboseLogging            bool     `yaml:"VerboseLogging"`
	ErrorsOnlyLogging         bool     `yaml:"ErrorsOnlyLogging"`
	SingularityDefaultOptions []string `yaml:"SingularityDefaultOptions"`
	SingularityPrefix         string   `yaml:"SingularityPrefix"`
	SingularityPath           string   `yaml:"SingularityPath"`
	EnableProbes              bool     `yaml:"EnableProbes"`
	// contains filtered or unexported fields
}
var InterLinkConfigInst DockerConfig

func NewInterLinkConfig

func NewInterLinkConfig() (DockerConfig, error)

NewInterLinkConfig returns a variable of type InterLinkConfig, used in many other functions and the first encountered error.

type InterLinkConfig

type InterLinkConfig struct {
	VKConfigPath      string `yaml:"VKConfigPath"`
	VKTokenFile       string `yaml:"VKTokenFile"`
	Interlinkurl      string `yaml:"InterlinkURL"`
	Sidecarurl        string `yaml:"SidecarURL"`
	Sbatchpath        string `yaml:"SbatchPath"`
	Scancelpath       string `yaml:"ScancelPath"`
	Squeuepath        string `yaml:"SqueuePath"`
	Interlinkport     string `yaml:"InterlinkPort"`
	Socket            string `yaml:"Socket"`
	Sidecarport       string `yaml:"SidecarPort"`
	Commandprefix     string `yaml:"CommandPrefix"`
	ExportPodData     bool   `yaml:"ExportPodData"`
	DataRootFolder    string `yaml:"DataRootFolder"`
	ServiceAccount    string `yaml:"ServiceAccount"`
	Namespace         string `yaml:"Namespace"`
	Tsocks            bool   `yaml:"Tsocks"`
	Tsockspath        string `yaml:"TsocksPath"`
	Tsocksconfig      string `yaml:"TsocksConfig"`
	Tsockslogin       string `yaml:"TsocksLoginNode"`
	BashPath          string `yaml:"BashPath"`
	VerboseLogging    bool   `yaml:"VerboseLogging"`
	ErrorsOnlyLogging bool   `yaml:"ErrorsOnlyLogging"`
	PodIP             string `yaml:"PodIP"`
	SingularityPrefix string `yaml:"SingularityPrefix"`
	// contains filtered or unexported fields
}

InterLinkConfig holds the whole configuration

type LogStruct

type LogStruct struct {
	Namespace     string           `json:"Namespace"`
	PodUID        string           `json:"PodUID"`
	PodName       string           `json:"PodName"`
	ContainerName string           `json:"ContainerName"`
	Opts          ContainerLogOpts `json:"Opts"`
}

LogStruct is needed to identify the job/container running on the sidecar to retrieve the logs from. Using ContainerLogOpts struct allows to specify more options on how to collect logs

type PodCreateRequests

type PodCreateRequests struct {
	Pod        v1.Pod         `json:"pod"`
	ConfigMaps []v1.ConfigMap `json:"configmaps"`
	Secrets    []v1.Secret    `json:"secrets"`
}

PodCreateRequests is a struct holding data for a create request. Retrieved ConfigMaps and Secrets are held along the Pod description itself.

type PodStatus

type PodStatus struct {
	PodName        string               `json:"name"`
	PodUID         string               `json:"UID"`
	PodNamespace   string               `json:"namespace"`
	JobID          string               `json:"JID"`
	Containers     []v1.ContainerStatus `json:"containers"`
	InitContainers []v1.ContainerStatus `json:"initContainers"`
}

PodStatus is a simplified v1.Pod struct, holding only necessary variables to uniquely identify a job/service in the sidecar. It is used to request

type RetrievedContainer

type RetrievedContainer struct {
	Name       string         `json:"name"`
	ConfigMaps []v1.ConfigMap `json:"configMaps"`
	Secrets    []v1.Secret    `json:"secrets"`
	EmptyDirs  []string       `json:"emptyDirs"`
}

RetrievedContainer is used in InterLink to rearrange data structure in a suitable way for the sidecar

type SpanConfig

type SpanConfig struct {
	HTTPReturnCode int
	SetHTTPCode    bool
}

type SpanOption

type SpanOption func(*SpanConfig)

func WithHTTPReturnCode

func WithHTTPReturnCode(code int) SpanOption

Jump to

Keyboard shortcuts

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