github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/operator/boom/application/applications/kubemetricsexporter/helm/values.go (about)

     1  package helm
     2  
     3  import (
     4  	"github.com/caos/orbos/pkg/kubernetes/k8s"
     5  )
     6  
     7  type Image struct {
     8  	Repository string `yaml:"repository"`
     9  	Tag        string `yaml:"tag"`
    10  	PullPolicy string `yaml:"pullPolicy"`
    11  }
    12  
    13  type Service struct {
    14  	Port           int               `yaml:"port"`
    15  	Type           string            `yaml:"type"`
    16  	NodePort       int               `yaml:"nodePort"`
    17  	LoadBalancerIP string            `yaml:"loadBalancerIP"`
    18  	Annotations    map[string]string `yaml:"annotations"`
    19  }
    20  
    21  type Rbac struct {
    22  	Create bool `yaml:"create"`
    23  }
    24  
    25  type ServiceAccount struct {
    26  	Create           bool          `yaml:"create"`
    27  	Name             interface{}   `yaml:"name"`
    28  	ImagePullSecrets []interface{} `yaml:"imagePullSecrets"`
    29  }
    30  
    31  type Prometheus struct {
    32  	Monitor *Monitor `yaml:"monitor"`
    33  }
    34  type Monitor struct {
    35  	Enabled          bool              `yaml:"enabled"`
    36  	AdditionalLabels map[string]string `yaml:"additionalLabels"`
    37  	Namespace        string            `yaml:"namespace"`
    38  	HonorLabels      bool              `yaml:"honorLabels"`
    39  }
    40  
    41  type PodSecurityPolicy struct {
    42  	Enabled     bool              `yaml:"enabled"`
    43  	Annotations map[string]string `yaml:"annotations"`
    44  }
    45  
    46  type SecurityContext struct {
    47  	Enabled   bool `yaml:"enabled"`
    48  	RunAsUser int  `yaml:"runAsUser"`
    49  	FsGroup   int  `yaml:"fsGroup"`
    50  }
    51  
    52  type Collectors struct {
    53  	Certificatesigningrequests bool `yaml:"certificatesigningrequests"`
    54  	Configmaps                 bool `yaml:"configmaps"`
    55  	Cronjobs                   bool `yaml:"cronjobs"`
    56  	Daemonsets                 bool `yaml:"daemonsets"`
    57  	Deployments                bool `yaml:"deployments"`
    58  	Endpoints                  bool `yaml:"endpoints"`
    59  	Horizontalpodautoscalers   bool `yaml:"horizontalpodautoscalers"`
    60  	Ingresses                  bool `yaml:"ingresses"`
    61  	Jobs                       bool `yaml:"jobs"`
    62  	Limitranges                bool `yaml:"limitranges"`
    63  	Namespaces                 bool `yaml:"namespaces"`
    64  	Nodes                      bool `yaml:"nodes"`
    65  	Persistentvolumeclaims     bool `yaml:"persistentvolumeclaims"`
    66  	Persistentvolumes          bool `yaml:"persistentvolumes"`
    67  	Poddisruptionbudgets       bool `yaml:"poddisruptionbudgets"`
    68  	Pods                       bool `yaml:"pods"`
    69  	Replicasets                bool `yaml:"replicasets"`
    70  	Replicationcontrollers     bool `yaml:"replicationcontrollers"`
    71  	Resourcequotas             bool `yaml:"resourcequotas"`
    72  	Secrets                    bool `yaml:"secrets"`
    73  	Services                   bool `yaml:"services"`
    74  	Statefulsets               bool `yaml:"statefulsets"`
    75  	Storageclasses             bool `yaml:"storageclasses"`
    76  	Verticalpodautoscalers     bool `yaml:"verticalpodautoscalers"`
    77  }
    78  
    79  type Selector struct {
    80  	MatchLabels map[string]string `yaml:"matchLabels,omitempty"`
    81  }
    82  
    83  type PodDisruptionBudget struct {
    84  	MaxUnavailable int       `yaml:"maxUnavailable,omitempty"`
    85  	Selector       *Selector `yaml:"selector,omitempty"`
    86  }
    87  
    88  type Values struct {
    89  	FullnameOverride    string               `yaml:"fullnameOverride,omitempty"`
    90  	PrometheusScrape    bool                 `yaml:"prometheusScrape"`
    91  	Image               *Image               `yaml:"image"`
    92  	Replicas            int                  `yaml:"replicas"`
    93  	Service             *Service             `yaml:"service"`
    94  	CustomLabels        map[string]string    `yaml:"customLabels"`
    95  	HostNetwork         bool                 `yaml:"hostNetwork"`
    96  	Rbac                *Rbac                `yaml:"rbac"`
    97  	ServiceAccount      *ServiceAccount      `yaml:"serviceAccount"`
    98  	Prometheus          *Prometheus          `yaml:"prometheus"`
    99  	PodSecurityPolicy   *PodSecurityPolicy   `yaml:"podSecurityPolicy"`
   100  	SecurityContext     *SecurityContext     `yaml:"securityContext"`
   101  	NodeSelector        map[string]string    `yaml:"nodeSelector"`
   102  	Affinity            *k8s.Affinity        `yaml:"affinity"`
   103  	Tolerations         k8s.Tolerations      `yaml:"tolerations"`
   104  	PodAnnotations      map[string]string    `yaml:"podAnnotations"`
   105  	Collectors          *Collectors          `yaml:"collectors"`
   106  	PodDisruptionBudget *PodDisruptionBudget `yaml:"podDisruptionBudget"`
   107  	Resources           *k8s.Resources       `yaml:"resources"`
   108  }