diff --git a/charts/odigos/templates/cleanup/cleanup-job.yaml b/charts/odigos/templates/cleanup/cleanup-job.yaml index 9418e11..aa21763 100644 --- a/charts/odigos/templates/cleanup/cleanup-job.yaml +++ b/charts/odigos/templates/cleanup/cleanup-job.yaml @@ -15,9 +15,9 @@ spec: containers: - name: cleanup {{- if .Values.imagePrefix }} - image: "{{ .Values.imagePrefix }}/keyval/odigos-cli:latest" + image: "{{ .Values.imagePrefix }}/{{ .Values.cli.image.repository }}:{{ .Values.image.tag }}" {{- else }} - image: keyval/odigos-cli:latest + image: "{{ .Values.cli.image.repository }}:{{ .Values.image.tag }}" {{- end }} args: ["uninstall", "--yes"] restartPolicy: Never diff --git a/charts/odigos/templates/crds/actions/errorsampler.yaml b/charts/odigos/templates/crds/actions/errorsampler.yaml new file mode 100644 index 0000000..4fb196e --- /dev/null +++ b/charts/odigos/templates/crds/actions/errorsampler.yaml @@ -0,0 +1,151 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: errorsamplers.actions.odigos.io +spec: + group: actions.odigos.io + names: + kind: ErrorSampler + listKind: ErrorSamplerList + plural: errorsamplers + shortNames: + - es + singular: errorsampler + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + description: ErrorSampler is the Schema for the ErrorSampler odigos action + API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ErrorSamplerSpec defines the desired state of ErrorSampler + action + properties: + actionName: + type: string + disabled: + type: boolean + fallback_sampling_ratio: + description: Specifies the ratio of non-error traces to be sampled. + type: number + notes: + type: string + signals: + items: + enum: + - LOGS + - TRACES + - METRICS + type: string + type: array + required: + - fallback_sampling_ratio + - signals + type: object + status: + description: ErrorSamplerStatus defines the observed state of ErrorSampler + action + properties: + conditions: + description: |- + Represents the observations of a ErrorSampler's current state. + Known .status.conditions.type are: "Available", "Progressing" + items: + description: "Condition contains details for one aspect of the current + state of this API Resource.\n---\nThis struct is intended for + direct use as an array at the field path .status.conditions. For + example,\n\n\n\ttype FooStatus struct{\n\t // Represents the + observations of a foo's current state.\n\t // Known .status.conditions.type + are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // + +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t + \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" + patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t + \ // other fields\n\t}" + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: |- + type of condition in CamelCase or in foo.example.com/CamelCase. + --- + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict is important. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + type: object + type: object + served: true + storage: true + subresources: + status: {} diff --git a/charts/odigos/templates/crds/actions/latencysampler.yaml b/charts/odigos/templates/crds/actions/latencysampler.yaml new file mode 100644 index 0000000..c6c08df --- /dev/null +++ b/charts/odigos/templates/crds/actions/latencysampler.yaml @@ -0,0 +1,176 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: latencysamplers.actions.odigos.io +spec: + group: actions.odigos.io + names: + kind: LatencySampler + listKind: LatencySamplerList + plural: latencysamplers + shortNames: + - ls + singular: latencysampler + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + description: LatencySampler is the Schema for the LatencySampler odigos action + API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: LatencySamplerSpec defines the desired state of LatencySampler + action + properties: + actionName: + type: string + disabled: + type: boolean + endpoints_filters: + description: Specifies the list of endpoint filters to be applied + for sampling + items: + properties: + fallback_sampling_ratio: + description: Specifies the fallback sampling ratio to be applied + in case service and endpoint filter match but the latency + threshold is not met. + type: number + http_route: + description: Specifies the http.route to be sampled + type: string + minimum_latency_threshold: + description: Specifies the lower latency threshold in milliseconds; + traces with latency equal to or exceeding this value will + be considered for sampling. + type: integer + service_name: + description: Specifies the service to be sampled + type: string + required: + - fallback_sampling_ratio + - http_route + - minimum_latency_threshold + - service_name + type: object + type: array + notes: + type: string + signals: + items: + enum: + - LOGS + - TRACES + - METRICS + type: string + type: array + required: + - endpoints_filters + - signals + type: object + status: + description: LatencySamplerStatus defines the observed state of LatencySampler + action + properties: + conditions: + description: |- + Represents the observations of a LatencySampler's current state. + Known .status.conditions.type are: "Available", "Progressing" + items: + description: "Condition contains details for one aspect of the current + state of this API Resource.\n---\nThis struct is intended for + direct use as an array at the field path .status.conditions. For + example,\n\n\n\ttype FooStatus struct{\n\t // Represents the + observations of a foo's current state.\n\t // Known .status.conditions.type + are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // + +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t + \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" + patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t + \ // other fields\n\t}" + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: |- + type of condition in CamelCase or in foo.example.com/CamelCase. + --- + Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be + useful (see .node.status.conditions), the ability to deconflict is important. + The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + type: object + type: object + served: true + storage: true + subresources: + status: {} diff --git a/charts/odigos/values.yaml b/charts/odigos/values.yaml index 76ec398..256cb07 100644 --- a/charts/odigos/values.yaml +++ b/charts/odigos/values.yaml @@ -79,6 +79,10 @@ odiglet: value: windows affinity: {} +cli: + image: + repository: keyval/odigos-cli + # Pod Security Policy psp: enabled: false