oc-monitord/models/services.go

37 lines
1.1 KiB
Go
Raw Normal View History

package models
type ServiceResource struct {
Action string `yaml:"action,omitempty"`
2024-10-11 13:44:16 +02:00
SuccessCondition string `yaml:"successCondition,omitempty"`
FailureCondition string `yaml:"failureCondition,omitempty"`
SetOwnerReference bool `yaml:"setOwnerReference,omitempty"`
Manifest string `yaml:"manifest,omitempty"`
}
type Service struct {
2024-10-11 13:44:16 +02:00
APIVersion string `yaml:"apiVersion"`
Kind string `yaml:"kind"`
Metadata Metadata `yaml:"metadata"`
Spec ServiceSpec `yaml:"spec"`
}
type Metadata struct {
2024-10-11 13:44:16 +02:00
Name string `yaml:"name"`
}
// ServiceSpec is the specification of the Kubernetes Service
type ServiceSpec struct {
2024-10-11 13:44:16 +02:00
Selector map[string]string `yaml:"selector,omitempty"`
Ports []ServicePort `yaml:"ports"`
ClusterIP string `yaml:"clusterIP,omitempty"`
Type string `yaml:"type,omitempty"`
}
// ServicePort defines a port for a Kubernetes Service
type ServicePort struct {
2024-10-11 13:44:16 +02:00
Name string `yaml:"name"` // Even if empty need to be in the yaml
Protocol string `yaml:"protocol,omitempty"`
Port int `yaml:"port"`
TargetPort int `yaml:"targetPort,omitempty"`
}