Documentation
¶
Index ¶
- Variables
- func PingInterLink(ctx context.Context) (bool, int, error)
- func SetDurationSpan(startTime int64, span trace.Span, opts ...SpanOption)
- type ContainerLogOpts
- type InterLinkConfig
- type LogStruct
- type PodCreateRequests
- type PodStatus
- type RetrievedContainer
- type RetrievedPodData
- type SpanConfig
- type SpanOption
Constants ¶
This section is empty.
Variables ¶
var Clientset *kubernetes.Clientset
Functions ¶
func PingInterLink ¶
PingInterLink pings the InterLink API and returns true if there's an answer. The second return value is given by the answer provided by the API.
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 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
var InterLinkConfigInst InterLinkConfig
func NewInterLinkConfig ¶
func NewInterLinkConfig() (InterLinkConfig, error)
NewInterLinkConfig returns a variable of type InterLinkConfig, used in many other functions and the first encountered error.
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 RetrievedPodData ¶
type RetrievedPodData struct {
Pod v1.Pod `json:"pod"`
Containers []RetrievedContainer `json:"container"`
InitContainers []RetrievedContainer `json:"initContainer"`
JobScript string `json:"jobScript"`
}
RetrievedPoData is used in InterLink to rearrange data structure in a suitable way for the sidecar
type SpanConfig ¶
type SpanOption ¶
type SpanOption func(*SpanConfig)
func WithHTTPReturnCode ¶
func WithHTTPReturnCode(code int) SpanOption