From 823cb9b847cda36b4a1001c995b9e101c83dc6ea Mon Sep 17 00:00:00 2001 From: faiq Date: Mon, 13 May 2024 12:38:22 -0600 Subject: [PATCH 01/10] feat: adds trust manager to chart --- .../Chart.lock | 6 ++++++ .../charts/trust-manager-v0.10.0.tgz | Bin 0 -> 16204 bytes .../requirements.yaml | 4 ++++ 3 files changed, 10 insertions(+) create mode 100644 charts/cluster-api-runtime-extensions-nutanix/Chart.lock create mode 100644 charts/cluster-api-runtime-extensions-nutanix/charts/trust-manager-v0.10.0.tgz create mode 100644 charts/cluster-api-runtime-extensions-nutanix/requirements.yaml diff --git a/charts/cluster-api-runtime-extensions-nutanix/Chart.lock b/charts/cluster-api-runtime-extensions-nutanix/Chart.lock new file mode 100644 index 000000000..b15bf393f --- /dev/null +++ b/charts/cluster-api-runtime-extensions-nutanix/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: trust-manager + repository: https://charts.jetstack.io + version: v0.10.0 +digest: sha256:58f4f9fd7f71f972e9344c62c1f61978ab19cc174d8854c9d5de7da83eee2049 +generated: "2024-05-13T12:35:00.623992598-06:00" diff --git a/charts/cluster-api-runtime-extensions-nutanix/charts/trust-manager-v0.10.0.tgz b/charts/cluster-api-runtime-extensions-nutanix/charts/trust-manager-v0.10.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..02e3a9b581cc90315b220f8c53f48dd6a6f4e7d6 GIT binary patch literal 16204 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 Date: Tue, 14 May 2024 17:45:31 -0600 Subject: [PATCH 02/10] feat: uses self hosted helm charts with mindthegap --- .../Chart.yaml | 4 + .../README.md | 7 + .../crd-trust.cert-manager.io_bundles.yaml | 391 ++++++ .../requirements.yaml | 4 - .../templates/bundle.yaml | 19 + .../templates/helm-config.yaml | 18 +- .../templates/job-role.yaml | 18 + .../templates/job-rolebinding.yaml | 17 + .../templates/job-sa.yaml | 8 + .../templates/job.yaml | 70 ++ .../{helm-chart-svc.yaml => mindthegap.yaml} | 28 +- .../values.yaml | 5 + devbox.json | 1 + devbox.lock | 1056 +---------------- hack/addons/fetch-helm-crds.sh | 26 + .../kustomize/nfd/kustomization.yaml.tmpl | 2 +- .../mindthegap-helm-registry/repos.yaml | 2 +- make/addons.mk | 12 +- make/helm.mk | 4 + .../lifecycle/nfd/strategy_helmaddon.go | 2 +- 20 files changed, 628 insertions(+), 1066 deletions(-) create mode 100644 charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/requirements.yaml create mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml create mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml create mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml create mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml create mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml rename charts/cluster-api-runtime-extensions-nutanix/templates/{helm-chart-svc.yaml => mindthegap.yaml} (67%) create mode 100755 hack/addons/fetch-helm-crds.sh diff --git a/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml b/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml index e02f8de90..e1b0c6b16 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml @@ -14,6 +14,10 @@ maintainers: url: https://eng.d2iq.com sources: - https://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix +dependencies: + - name: trust-manager + version: v0.10.0 + repository: https://charts.jetstack.io appVersion: v0.0.0-dev version: v0.0.0-dev diff --git a/charts/cluster-api-runtime-extensions-nutanix/README.md b/charts/cluster-api-runtime-extensions-nutanix/README.md index be9af839f..918126364 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/README.md +++ b/charts/cluster-api-runtime-extensions-nutanix/README.md @@ -21,6 +21,12 @@ A Helm chart for cluster-api-runtime-extensions-nutanix * +## Requirements + +| Repository | Name | Version | +|------------|------|---------| +| https://charts.jetstack.io | trust-manager | v0.10.0 | + ## Values | Key | Type | Default | Description | @@ -84,3 +90,4 @@ A Helm chart for cluster-api-runtime-extensions-nutanix | service.port | int | `443` | | | service.type | string | `"ClusterIP"` | | | tolerations | list | `[{"effect":"NoSchedule","key":"node-role.kubernetes.io/master","operator":"Equal"},{"effect":"NoSchedule","key":"node-role.kubernetes.io/control-plane","operator":"Equal"}]` | Kubernetes pod tolerations | +| trust-manager.app.trust.namespace | string | `"mindthegap"` | | diff --git a/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml new file mode 100644 index 000000000..95e3e8b1f --- /dev/null +++ b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml @@ -0,0 +1,391 @@ +# Copyright 2023 D2iQ, Inc. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: "bundles.trust.cert-manager.io" + annotations: + helm.sh/resource-policy: keep + meta.helm.sh/release-name: cluster-api-runtime-extensions-nutanix + meta.helm.sh/release-namespace: default + labels: + app.kubernetes.io/managed-by: Helm +spec: + group: trust.cert-manager.io + names: + kind: Bundle + listKind: BundleList + plural: bundles + singular: bundle + scope: Cluster + versions: + - additionalPrinterColumns: + - description: Bundle ConfigMap Target Key + jsonPath: .spec.target.configMap.key + name: ConfigMap Target + type: string + - description: Bundle Secret Target Key + jsonPath: .spec.target.secret.key + name: Secret Target + type: string + - description: Bundle has been synced + jsonPath: .status.conditions[?(@.type == "Synced")].status + name: Synced + type: string + - description: Reason Bundle has Synced status + jsonPath: .status.conditions[?(@.type == "Synced")].reason + name: Reason + type: string + - description: Timestamp Bundle was created + jsonPath: .metadata.creationTimestamp + name: Age + type: date + name: v1alpha1 + schema: + openAPIV3Schema: + 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: Desired state of the Bundle resource. + properties: + sources: + description: Sources is a set of references to data whose data will + sync to the target. + items: + description: |- + BundleSource is the set of sources whose data will be appended and synced to + the BundleTarget in all Namespaces. + properties: + configMap: + description: |- + ConfigMap is a reference (by name) to a ConfigMap's `data` key, or to a + list of ConfigMap's `data` key using label selector, in the trust Namespace. + properties: + key: + description: Key is the key of the entry in the object's + `data` field to be used. + type: string + name: + description: |- + Name is the name of the source object in the trust Namespace. + This field must be left empty when `selector` is set + type: string + selector: + description: |- + Selector is the label selector to use to fetch a list of objects. Must not be set + when `Name` is set. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + required: + - key + type: object + inLine: + description: InLine is a simple string to append as the source + data. + type: string + secret: + description: |- + Secret is a reference (by name) to a Secret's `data` key, or to a + list of Secret's `data` key using label selector, in the trust Namespace. + properties: + key: + description: Key is the key of the entry in the object's + `data` field to be used. + type: string + name: + description: |- + Name is the name of the source object in the trust Namespace. + This field must be left empty when `selector` is set + type: string + selector: + description: |- + Selector is the label selector to use to fetch a list of objects. Must not be set + when `Name` is set. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + required: + - key + type: object + useDefaultCAs: + description: |- + UseDefaultCAs, when true, requests the default CA bundle to be used as a source. + Default CAs are available if trust-manager was installed via Helm + or was otherwise set up to include a package-injecting init container by using the + "--default-package-location" flag when starting the trust-manager controller. + If default CAs were not configured at start-up, any request to use the default + CAs will fail. + The version of the default CA package which is used for a Bundle is stored in the + defaultCAPackageVersion field of the Bundle's status field. + type: boolean + type: object + type: array + target: + description: Target is the target location in all namespaces to + sync source data to. + properties: + additionalFormats: + description: AdditionalFormats specifies any additional formats + to write to the target + properties: + jks: + description: |- + JKS requests a JKS-formatted binary trust bundle to be written to the target. + The bundle has "changeit" as the default password. + For more information refer to this link https://cert-manager.io/docs/faq/#keystore-passwords + properties: + key: + description: Key is the key of the entry in the object's + `data` field to be used. + type: string + password: + default: changeit + description: Password for JKS trust store + maxLength: 128 + minLength: 1 + type: string + required: + - key + type: object + pkcs12: + description: |- + PKCS12 requests a PKCS12-formatted binary trust bundle to be written to the target. + The bundle is by default created without a password. + properties: + key: + description: Key is the key of the entry in the object's + `data` field to be used. + type: string + password: + default: "" + description: Password for PKCS12 trust store + maxLength: 128 + type: string + required: + - key + type: object + type: object + configMap: + description: |- + ConfigMap is the target ConfigMap in Namespaces that all Bundle source + data will be synced to. + properties: + key: + description: Key is the key of the entry in the object's + `data` field to be used. + type: string + required: + - key + type: object + namespaceSelector: + description: |- + NamespaceSelector will, if set, only sync the target resource in + Namespaces which match the selector. + properties: + matchLabels: + additionalProperties: + type: string + description: |- + MatchLabels matches on the set of labels that must be present on a + Namespace for the Bundle target to be synced there. + type: object + type: object + secret: + description: |- + Secret is the target Secret that all Bundle source data will be synced to. + Using Secrets as targets is only supported if enabled at trust-manager startup. + By default, trust-manager has no permissions for writing to secrets and can only read secrets in the trust namespace. + properties: + key: + description: Key is the key of the entry in the object's + `data` field to be used. + type: string + required: + - key + type: object + type: object + required: + - sources + - target + type: object + status: + description: Status of the Bundle. This is set and managed automatically. + properties: + conditions: + description: |- + List of status conditions to indicate the status of the Bundle. + Known condition types are `Bundle`. + items: + description: BundleCondition contains condition information for + a Bundle. + properties: + lastTransitionTime: + description: |- + LastTransitionTime is the timestamp corresponding to the last status + change of this condition. + format: date-time + type: string + message: + description: |- + Message is a human-readable description of the details of the last + transition, complementing reason. + maxLength: 32768 + type: string + observedGeneration: + description: |- + If set, this represents the .metadata.generation that the condition was + set based upon. + For instance, if .metadata.generation is currently 12, but the + .status.condition[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the Bundle. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + Reason is a brief machine-readable explanation for the condition's last + transition. + 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 the condition, known values are (`Synced`). + 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 + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + defaultCAVersion: + description: |- + DefaultCAPackageVersion, if set and non-empty, indicates the version information + which was retrieved when the set of default CAs was requested in the bundle + source. This should only be set if useDefaultCAs was set to "true" on a source, + and will be the same for the same version of a bundle with identical certificates. + type: string + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} diff --git a/charts/cluster-api-runtime-extensions-nutanix/requirements.yaml b/charts/cluster-api-runtime-extensions-nutanix/requirements.yaml deleted file mode 100644 index 5ee028183..000000000 --- a/charts/cluster-api-runtime-extensions-nutanix/requirements.yaml +++ /dev/null @@ -1,4 +0,0 @@ -dependencies: - - name: trust-manager - version: v0.10.0 - repository: https://charts.jetstack.io diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml new file mode 100644 index 000000000..baaed8296 --- /dev/null +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml @@ -0,0 +1,19 @@ +# Copyright 2023 D2iQ, Inc. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +apiVersion: trust.cert-manager.io/v1alpha1 +kind: Bundle +metadata: + name: caren-bundle +spec: + sources: + - useDefaultCAs: true + - secret: + key: tls.crt + name: mindthegap-tls + target: + configMap: + key: ca-certificates.crt + namespaceSelector: + matchLabels: + clusterctl.cluster.x-k8s.io: "" diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml index bc43c2a93..424432616 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml @@ -10,35 +10,35 @@ data: cilium: | ChartName: cilium ChartVersion: 1.15.0 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + RepositoryURL: oci://mindthegap.mindthegap.svc/charts cluster-autoscaler: | ChartName: cluster-autoscaler ChartVersion: 9.35.0 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + RepositoryURL: oci://mindthegap.mindthegap.svc/charts metallb: | ChartName: metallb ChartVersion: v0.14.5 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + RepositoryURL: oci://mindthegap.mindthegap.svc/charts nfd: | ChartName: node-feature-discovery - ChartVersion: v0.15.2 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + ChartVersion: 0.15.2 + RepositoryURL: oci://mindthegap.mindthegap.svc/charts nutanix-ccm: | ChartName: nutanix-cloud-provider ChartVersion: 0.3.3 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + RepositoryURL: oci://mindthegap.mindthegap.svc/charts nutanix-snapshot-csi: | ChartName: nutanix-csi-snapshot ChartVersion: 6.3.2 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + RepositoryURL: oci://mindthegap.mindthegap.svc/charts nutanix-storage-csi: | ChartName: nutanix-csi-storage ChartVersion: v3.0.0-beta.1912 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + RepositoryURL: oci://mindthegap.mindthegap.svc/charts tigera-operator: | ChartName: tigera-operator ChartVersion: v3.26.4 - RepositoryURL: oci://mindthegap.{{ .Release.Namespace }}.svc + RepositoryURL: oci://mindthegap.mindthegap.svc/charts kind: ConfigMap metadata: creationTimestamp: null diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml new file mode 100644 index 000000000..56c758db9 --- /dev/null +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml @@ -0,0 +1,18 @@ +# Copyright 2023 D2iQ, Inc. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + name: helm-hook-role + namespace: caaph-system +rules: + - apiGroups: + - apps + resources: + - deployments + verbs: + - get + - list + - patch + - update diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml new file mode 100644 index 000000000..ac2021146 --- /dev/null +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml @@ -0,0 +1,17 @@ +# Copyright 2023 D2iQ, Inc. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +# templates/rolebinding.yaml +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: helm-hook-binding + namespace: caaph-system +subjects: +- kind: ServiceAccount + name: helm-hook-sa + namespace: caaph-system +roleRef: + kind: Role + name: helm-hook-role + apiGroup: rbac.authorization.k8s.io diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml new file mode 100644 index 000000000..eabd8da8c --- /dev/null +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml @@ -0,0 +1,8 @@ +# Copyright 2023 D2iQ, Inc. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +apiVersion: v1 +kind: ServiceAccount +metadata: + name: helm-hook-sa + namespace: caaph-system diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml new file mode 100644 index 000000000..95981a7a7 --- /dev/null +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml @@ -0,0 +1,70 @@ +# Copyright 2023 D2iQ, Inc. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +apiVersion: batch/v1 +kind: Job +metadata: + name: update-trust-manager-namespace + namespace: caaph-system + annotations: + "helm.sh/hook": post-install,post-upgrade + "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded +spec: + template: + spec: + serviceAccountName: helm-hook-sa + containers: + - name: kubectl + image: bitnami/kubectl:latest + command: + - /bin/sh + - -c + - | + set -e + # Check if volume already exists + if kubectl get deployment caaph-controller-manager -n caaph-system -o jsonpath='{.spec.template.spec.volumes[?(@.name=="ca-certificate-only")]}' | grep -q "ca-certificate-only"; then + echo "Volume already exists. Skipping addition." + else + kubectl patch deployment caaph-controller-manager \ + -n caaph-system \ + --type=json \ + -p='[ + { + "op": "add", + "path": "/spec/template/spec/volumes/-", + "value": { + "name": "ca-certificate-only", + "configMap": { + "name": "caren-bundle", + "defaultMode": 420, + "optional": false, + "items": [ + { + "key": "ca-certificates.crt", + "path": "ca-certificates.crt" + } + ] + } + } + } + ]' + fi + if kubectl get deployment caaph-controller-manager -n caaph-system -o jsonpath='{.spec.template.spec.containers[0].volumeMounts[?(@.mountPath=="/etc/ssl/certs/")]}' | grep -q "ca-certificate-only"; then + echo "VolumeMount already exists. Skipping addition." + else + kubectl patch deployment caaph-controller-manager \ + -n caaph-system \ + --type=json \ + -p='[ + { + "op": "add", + "path": "/spec/template/spec/containers/0/volumeMounts/-", + "value": { + "mountPath": "/etc/ssl/certs/", + "name": "ca-certificate-only", + "readOnly": true + } + } + ]' + fi + restartPolicy: Never diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-chart-svc.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml similarity index 67% rename from charts/cluster-api-runtime-extensions-nutanix/templates/helm-chart-svc.yaml rename to charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml index 7b1434ad4..985562e41 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-chart-svc.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml @@ -1,23 +1,35 @@ # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 - +# +# This file contains the manifests to run a mindthegap deployment which contains helm charts for our addons. +# The pod is built via goreleaser with configuration from hack/addons. +# +# NOTE: We use a hard code namespace here because trust-manager +# need to set app.trust.namespace to be able to read secrets +# from this namespace. We then distribute the certificates +# to CAAPH system, which is the primary user of this service. +apiVersion: v1 +kind: Namespace +metadata: + name: mindthegap +--- apiVersion: cert-manager.io/v1 kind: Issuer metadata: name: mindthegap-selfsigned - namespace: {{ .Release.Namespace }} + namespace: mindthegap spec: selfSigned: {} --- apiVersion: cert-manager.io/v1 kind: Certificate metadata: - name: mindthegap-example-tls - namespace: {{ .Release.Namespace }} + name: mindthegap-tls + namespace: mindthegap spec: dnsNames: - - mindthegap.default.svc - - mindthegap.default.svc.cluster.local + - mindthegap.mindthegap.svc + - mindthegap.mindthegap.svc.cluster.local issuerRef: name: mindthegap-selfsigned kind: Issuer @@ -27,7 +39,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: mindthegap - namespace: {{ .Release.Namespace }} + namespace: mindthegap labels: app: mindthegap spec: @@ -64,7 +76,7 @@ apiVersion: v1 kind: Service metadata: name: mindthegap - namespace: {{ .Release.Namespace }} + namespace: mindthegap spec: selector: app: mindthegap diff --git a/charts/cluster-api-runtime-extensions-nutanix/values.yaml b/charts/cluster-api-runtime-extensions-nutanix/values.yaml index f5c9ed85a..a79ecd9dd 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/values.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/values.yaml @@ -1,5 +1,10 @@ # Copyright 2023 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 +# +trust-manager: + app: + trust: + namespace: mindthegap hooks: cni: diff --git a/devbox.json b/devbox.json index 69aa45eb4..892ff2837 100644 --- a/devbox.json +++ b/devbox.json @@ -29,6 +29,7 @@ "shfmt@latest", "yamale@latest", "yamllint@latest", + "yq@latest", "path:./hack/flakes#clusterawsadm", "path:./hack/flakes#clusterctl", "path:./hack/flakes#controller-gen", diff --git a/devbox.lock b/devbox.lock index a3c789dad..7637b1451 100644 --- a/devbox.lock +++ b/devbox.lock @@ -8,43 +8,15 @@ "version": "1.6.27", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/qygspplxrcnd3jbwlg0k0zzf19478k1y-actionlint-1.6.27", - "default": true - } - ], "store_path": "/nix/store/qygspplxrcnd3jbwlg0k0zzf19478k1y-actionlint-1.6.27" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ivly2rxzf4hpzz9qw40yhv9m32kimlsx-actionlint-1.6.27", - "default": true - } - ], "store_path": "/nix/store/ivly2rxzf4hpzz9qw40yhv9m32kimlsx-actionlint-1.6.27" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/zydlj1yk2aydq76nck3swhnydvm7pkin-actionlint-1.6.27", - "default": true - } - ], "store_path": "/nix/store/zydlj1yk2aydq76nck3swhnydvm7pkin-actionlint-1.6.27" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/imnkd6dsgzlvbfcd9qiv6yqdrnch80fa-actionlint-1.6.27", - "default": true - } - ], "store_path": "/nix/store/imnkd6dsgzlvbfcd9qiv6yqdrnch80fa-actionlint-1.6.27" } } @@ -56,43 +28,15 @@ "version": "3.10.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4355325mw74sjl1rinpg23i6d3kcgcvc-chart-testing-3.10.1", - "default": true - } - ], "store_path": "/nix/store/4355325mw74sjl1rinpg23i6d3kcgcvc-chart-testing-3.10.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/wwpgl6vw146afzszriy5i0bysslq4ia4-chart-testing-3.10.1", - "default": true - } - ], "store_path": "/nix/store/wwpgl6vw146afzszriy5i0bysslq4ia4-chart-testing-3.10.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/gbdn7vj86lbv2k1c0nmrpy08zz229z1f-chart-testing-3.10.1", - "default": true - } - ], "store_path": "/nix/store/gbdn7vj86lbv2k1c0nmrpy08zz229z1f-chart-testing-3.10.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/jx3smjl9173mxsz8l4layfmrjq65s05y-chart-testing-3.10.1", - "default": true - } - ], "store_path": "/nix/store/jx3smjl9173mxsz8l4layfmrjq65s05y-chart-testing-3.10.1" } } @@ -104,67 +48,15 @@ "version": "9.5", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ssqkq33b9jb441g7baplb87z8vnyp34i-coreutils-9.5", - "default": true - }, - { - "name": "info", - "path": "/nix/store/n417gpwyz6dc7y7fr8cayl6hlm7izqc4-coreutils-9.5-info" - } - ], "store_path": "/nix/store/ssqkq33b9jb441g7baplb87z8vnyp34i-coreutils-9.5" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/wxkj5fzayx8shn2cl9p6q7l7pynp23zj-coreutils-9.5", - "default": true - }, - { - "name": "debug", - "path": "/nix/store/9a3qfq2m1gz8ix4x6vzxks42fgv5sa26-coreutils-9.5-debug" - }, - { - "name": "info", - "path": "/nix/store/c1pbqrlbl9jivq6jaw6fqs28df4ad7aq-coreutils-9.5-info" - } - ], "store_path": "/nix/store/wxkj5fzayx8shn2cl9p6q7l7pynp23zj-coreutils-9.5" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4xiysj68rc0nq0s448csm68a5whyhvfr-coreutils-9.5", - "default": true - }, - { - "name": "info", - "path": "/nix/store/rlhcgllgks6qn00cdc4r3f76v487jcaw-coreutils-9.5-info" - } - ], "store_path": "/nix/store/4xiysj68rc0nq0s448csm68a5whyhvfr-coreutils-9.5" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/asqa3kfq3maclk7cqqhrjvp7vriw6ahy-coreutils-9.5", - "default": true - }, - { - "name": "debug", - "path": "/nix/store/3vb38vqqkdm1q62rgp24ni7n5j45ksj3-coreutils-9.5-debug" - }, - { - "name": "info", - "path": "/nix/store/k9qai5vqaldxq2fjsapggrbzhw2lyf3l-coreutils-9.5-info" - } - ], "store_path": "/nix/store/asqa3kfq3maclk7cqqhrjvp7vriw6ahy-coreutils-9.5" } } @@ -176,43 +68,15 @@ "version": "1.4.2", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/k1yh3iayj0bhspnq7c8q686lac9zkhxl-envsubst-1.4.2", - "default": true - } - ], "store_path": "/nix/store/k1yh3iayj0bhspnq7c8q686lac9zkhxl-envsubst-1.4.2" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/jm277id1383qrbpsl9a617amcizv636w-envsubst-1.4.2", - "default": true - } - ], "store_path": "/nix/store/jm277id1383qrbpsl9a617amcizv636w-envsubst-1.4.2" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/dlpcwgqp7rckaickj4rgp3adz3hlnbas-envsubst-1.4.2", - "default": true - } - ], "store_path": "/nix/store/dlpcwgqp7rckaickj4rgp3adz3hlnbas-envsubst-1.4.2" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/zarprjjn1ms8cdkxymrnpciakh3mpdaq-envsubst-1.4.2", - "default": true - } - ], "store_path": "/nix/store/zarprjjn1ms8cdkxymrnpciakh3mpdaq-envsubst-1.4.2" } } @@ -224,75 +88,15 @@ "version": "4.9.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/f2zkblkcbxvgczjdxa53xn8d0652d4x0-findutils-4.9.0", - "default": true - }, - { - "name": "info", - "path": "/nix/store/crj6g6z8rdkp2qhbvddbss42pwzygdnp-findutils-4.9.0-info" - }, - { - "name": "locate", - "path": "/nix/store/l1s999mk7cm1ndwi2mgg2qdfcypbb70v-findutils-4.9.0-locate" - } - ], "store_path": "/nix/store/f2zkblkcbxvgczjdxa53xn8d0652d4x0-findutils-4.9.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/48s8dsa5pkk907f95adzgx0f6h2j5kx6-findutils-4.9.0", - "default": true - }, - { - "name": "info", - "path": "/nix/store/gg8hj8l9xral4n0kxk8k2xwi7ccaprz9-findutils-4.9.0-info" - }, - { - "name": "locate", - "path": "/nix/store/zhi1qfhbbl66029yqxjpdzm0ajsyfp4h-findutils-4.9.0-locate" - } - ], "store_path": "/nix/store/48s8dsa5pkk907f95adzgx0f6h2j5kx6-findutils-4.9.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/03mm3xdylmym33apqya6p4hrl15na03h-findutils-4.9.0", - "default": true - }, - { - "name": "info", - "path": "/nix/store/nljqq3vj63g7dha3ni04mc1y2ynpwz4a-findutils-4.9.0-info" - }, - { - "name": "locate", - "path": "/nix/store/kblii4jylpkxdfzb2hm85c5qa6f6mqxl-findutils-4.9.0-locate" - } - ], "store_path": "/nix/store/03mm3xdylmym33apqya6p4hrl15na03h-findutils-4.9.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/vf8cjkgwmgd4sb3vkxh6x9iar71s1w1c-findutils-4.9.0", - "default": true - }, - { - "name": "info", - "path": "/nix/store/r80d9k23pnllj2fygr2qfjccv1q3vnzw-findutils-4.9.0-info" - }, - { - "name": "locate", - "path": "/nix/store/40v3pfgiln10gm274m5z1fhd1sxrx9bf-findutils-4.9.0-locate" - } - ], "store_path": "/nix/store/vf8cjkgwmgd4sb3vkxh6x9iar71s1w1c-findutils-4.9.0" } } @@ -304,43 +108,15 @@ "version": "2.48.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/al0w11wik8xvjv311f9hdcni6lcbd22g-gh-2.48.0", - "default": true - } - ], "store_path": "/nix/store/al0w11wik8xvjv311f9hdcni6lcbd22g-gh-2.48.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/fa3pwqlw4izfip7kg4c1iv7gdhwjgsf7-gh-2.48.0", - "default": true - } - ], "store_path": "/nix/store/fa3pwqlw4izfip7kg4c1iv7gdhwjgsf7-gh-2.48.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/m9jcg3yp042alkymg4qy3k4skyfzxpgs-gh-2.48.0", - "default": true - } - ], "store_path": "/nix/store/m9jcg3yp042alkymg4qy3k4skyfzxpgs-gh-2.48.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/yk2hqa1jnc9r26q93cs8m6gi4872s1ga-gh-2.48.0", - "default": true - } - ], "store_path": "/nix/store/yk2hqa1jnc9r26q93cs8m6gi4872s1ga-gh-2.48.0" } } @@ -352,43 +128,15 @@ "version": "2.17.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/94622rky2ffpbz6vpyqdmi86knm3czkw-ginkgo-2.17.1", - "default": true - } - ], "store_path": "/nix/store/94622rky2ffpbz6vpyqdmi86knm3czkw-ginkgo-2.17.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/d06nha7nl3f8iw5vf06vsfircmvlj852-ginkgo-2.17.1", - "default": true - } - ], "store_path": "/nix/store/d06nha7nl3f8iw5vf06vsfircmvlj852-ginkgo-2.17.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ihm49vvp0z4aifblx362ramg8spinkz5-ginkgo-2.17.1", - "default": true - } - ], "store_path": "/nix/store/ihm49vvp0z4aifblx362ramg8spinkz5-ginkgo-2.17.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/rsq6y6wxhdvh6xr5sk39pp9agxd9vvf5-ginkgo-2.17.1", - "default": true - } - ], "store_path": "/nix/store/rsq6y6wxhdvh6xr5sk39pp9agxd9vvf5-ginkgo-2.17.1" } } @@ -400,67 +148,15 @@ "version": "2.44.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/m0xxxwbvmfkpr2xl8xglp6pdcy2b32yr-git-2.44.0", - "default": true - }, - { - "name": "doc", - "path": "/nix/store/ixfyjbvrvcgjd6pvlmwd837n7gpacpsh-git-2.44.0-doc" - } - ], "store_path": "/nix/store/m0xxxwbvmfkpr2xl8xglp6pdcy2b32yr-git-2.44.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/53m8frqp4ibslq73c9rw25aim802cz6d-git-2.44.0", - "default": true - }, - { - "name": "debug", - "path": "/nix/store/wmzbmb8nx1w5i4r9sadfkm5wsnrc626n-git-2.44.0-debug" - }, - { - "name": "doc", - "path": "/nix/store/n43ma18dqvddxslzzbcdg4z1ck0yjlrn-git-2.44.0-doc" - } - ], "store_path": "/nix/store/53m8frqp4ibslq73c9rw25aim802cz6d-git-2.44.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/31aiia9d9zfmk53wsc2pkixipmhpb2s6-git-2.44.0", - "default": true - }, - { - "name": "doc", - "path": "/nix/store/r10zhb4fvl4mgkwk67nc30mp0z3qs384-git-2.44.0-doc" - } - ], "store_path": "/nix/store/31aiia9d9zfmk53wsc2pkixipmhpb2s6-git-2.44.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/apl2ibxqrxbbj6z79nfgv892999z1zyv-git-2.44.0", - "default": true - }, - { - "name": "debug", - "path": "/nix/store/8ibxf7vhwzn2iqzggksgj7wmfph6krr4-git-2.44.0-debug" - }, - { - "name": "doc", - "path": "/nix/store/ylvh2h3hr0m5578rs6ms184923xvsd1j-git-2.44.0-doc" - } - ], "store_path": "/nix/store/apl2ibxqrxbbj6z79nfgv892999z1zyv-git-2.44.0" } } @@ -472,87 +168,15 @@ "version": "4.4.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/1cjkrg6qi2hqvl2j9arrhda5ik3dw707-gnumake-4.4.1", - "default": true - }, - { - "name": "man", - "path": "/nix/store/ksik878xm0c9bxb75wfhfg2ylm4w0aav-gnumake-4.4.1-man", - "default": true - }, - { - "name": "info", - "path": "/nix/store/j2pa8kq1rba6mkqbbbv7k5r89fqgrgrx-gnumake-4.4.1-info" - } - ], "store_path": "/nix/store/1cjkrg6qi2hqvl2j9arrhda5ik3dw707-gnumake-4.4.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/779cbnya6zazh6yv8v3axky7wqd1d6xi-gnumake-4.4.1", - "default": true - }, - { - "name": "man", - "path": "/nix/store/8k2f18wc4ngq3y67zwqfvx5ckcbqadl5-gnumake-4.4.1-man", - "default": true - }, - { - "name": "debug", - "path": "/nix/store/lbbdq6cvncqqd2i6yhw1jgivr69hpxav-gnumake-4.4.1-debug" - }, - { - "name": "info", - "path": "/nix/store/af203hd2f4zjfnjd159h9mgdhfbs4iwm-gnumake-4.4.1-info" - } - ], "store_path": "/nix/store/779cbnya6zazh6yv8v3axky7wqd1d6xi-gnumake-4.4.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/f990ckg8csfq517rczrn9nnpzcfwzd3d-gnumake-4.4.1", - "default": true - }, - { - "name": "man", - "path": "/nix/store/q857swx734dh6xcjvcmqfgiqrx4cnvn0-gnumake-4.4.1-man", - "default": true - }, - { - "name": "info", - "path": "/nix/store/1iqhxfpxjadf9x3nbrbc9ha0dczrr7jx-gnumake-4.4.1-info" - } - ], "store_path": "/nix/store/f990ckg8csfq517rczrn9nnpzcfwzd3d-gnumake-4.4.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/igc1cay5d5nqlj96vrq2icdxkdby1pay-gnumake-4.4.1", - "default": true - }, - { - "name": "man", - "path": "/nix/store/pnffk89cmqpszkhw0jawwfph8sh6gcyp-gnumake-4.4.1-man", - "default": true - }, - { - "name": "debug", - "path": "/nix/store/js0frfqk4xrglycqh2jh87cdb29z4pp3-gnumake-4.4.1-debug" - }, - { - "name": "info", - "path": "/nix/store/4s87rpcgdh4nlsy0xv802xm94x2ky757-gnumake-4.4.1-info" - } - ], "store_path": "/nix/store/igc1cay5d5nqlj96vrq2icdxkdby1pay-gnumake-4.4.1" } } @@ -564,59 +188,15 @@ "version": "4.9", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/7bv9z3svwrqc9jlxbk5mamnahfvpm2vp-gnused-4.9", - "default": true - }, - { - "name": "info", - "path": "/nix/store/yx0ndpivlmgmpwy1klb7z66jkw7qrr5f-gnused-4.9-info" - } - ], "store_path": "/nix/store/7bv9z3svwrqc9jlxbk5mamnahfvpm2vp-gnused-4.9" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/lql8aw5cli8jym5iwhcw81003vhv3swq-gnused-4.9", - "default": true - }, - { - "name": "info", - "path": "/nix/store/wxwxmhh46z2x5sd0r74i5dnzgrkrzc76-gnused-4.9-info" - } - ], "store_path": "/nix/store/lql8aw5cli8jym5iwhcw81003vhv3swq-gnused-4.9" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/1qwza8ysi153w6v88sfnn6f4y4j8zcag-gnused-4.9", - "default": true - }, - { - "name": "info", - "path": "/nix/store/mybxia2rv2yn0b754cgf006vxx2mkfpx-gnused-4.9-info" - } - ], "store_path": "/nix/store/1qwza8ysi153w6v88sfnn6f4y4j8zcag-gnused-4.9" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ard747zf4fkkkqa0pwj3fxp9fhnyfm7p-gnused-4.9", - "default": true - }, - { - "name": "info", - "path": "/nix/store/jm2zc3iqm9hc26n3nfhc9k93ag46ipwb-gnused-4.9-info" - } - ], "store_path": "/nix/store/ard747zf4fkkkqa0pwj3fxp9fhnyfm7p-gnused-4.9" } } @@ -628,43 +208,15 @@ "version": "1.22.2", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/x7gzwywk7mvjamdyc4n45fh62jks7lma-go-1.22.2", - "default": true - } - ], "store_path": "/nix/store/x7gzwywk7mvjamdyc4n45fh62jks7lma-go-1.22.2" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ka1iykac1bfvy98p9g2ii3xn2fnl98cn-go-1.22.2", - "default": true - } - ], "store_path": "/nix/store/ka1iykac1bfvy98p9g2ii3xn2fnl98cn-go-1.22.2" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/s26vypls3i2rvprj2jq7l1ypb5y12mq9-go-1.22.2", - "default": true - } - ], "store_path": "/nix/store/s26vypls3i2rvprj2jq7l1ypb5y12mq9-go-1.22.2" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/9kriq85qac7phcxgpdqbqr25vlr61ifw-go-1.22.2", - "default": true - } - ], "store_path": "/nix/store/9kriq85qac7phcxgpdqbqr25vlr61ifw-go-1.22.2" } } @@ -676,43 +228,15 @@ "version": "0.12.15", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/zrydwzci0h352b2yiyyyqcdlql8h9c25-gojq-0.12.15", - "default": true - } - ], "store_path": "/nix/store/zrydwzci0h352b2yiyyyqcdlql8h9c25-gojq-0.12.15" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/v0xp7kzaaiqkmrqcpjgpap8llaa0pzh5-gojq-0.12.15", - "default": true - } - ], "store_path": "/nix/store/v0xp7kzaaiqkmrqcpjgpap8llaa0pzh5-gojq-0.12.15" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/lahf7ask3i06ycs0mb125rkx176krq0q-gojq-0.12.15", - "default": true - } - ], "store_path": "/nix/store/lahf7ask3i06ycs0mb125rkx176krq0q-gojq-0.12.15" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/a6b7q5hdjzmfgq2ggx7lixc13gy979h7-gojq-0.12.15", - "default": true - } - ], "store_path": "/nix/store/a6b7q5hdjzmfgq2ggx7lixc13gy979h7-gojq-0.12.15" } } @@ -724,43 +248,15 @@ "version": "0.12.2", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/cgx4l2m6v0x827m2fyjrlqrv83dmahzq-golines-0.12.2", - "default": true - } - ], "store_path": "/nix/store/cgx4l2m6v0x827m2fyjrlqrv83dmahzq-golines-0.12.2" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/aafbk8ismkdyvvcj1zgf55d8k2bb76g7-golines-0.12.2", - "default": true - } - ], "store_path": "/nix/store/aafbk8ismkdyvvcj1zgf55d8k2bb76g7-golines-0.12.2" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/5mfbkv3hhal0awyjqcbpmdhm8f9d4mvr-golines-0.12.2", - "default": true - } - ], "store_path": "/nix/store/5mfbkv3hhal0awyjqcbpmdhm8f9d4mvr-golines-0.12.2" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/azw2ayvqq2vb98bk65wi9lh6adraric3-golines-0.12.2", - "default": true - } - ], "store_path": "/nix/store/azw2ayvqq2vb98bk65wi9lh6adraric3-golines-0.12.2" } } @@ -772,43 +268,15 @@ "version": "1.25.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ilnb078zcij6ph351ll5fx29b2z2426i-goreleaser-1.25.1", - "default": true - } - ], "store_path": "/nix/store/ilnb078zcij6ph351ll5fx29b2z2426i-goreleaser-1.25.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/007575nisbps89sgw675kw1f2w3q4jpx-goreleaser-1.25.1", - "default": true - } - ], "store_path": "/nix/store/007575nisbps89sgw675kw1f2w3q4jpx-goreleaser-1.25.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/c2yy1f6a35vibr366hkszcfh3d9igsx2-goreleaser-1.25.1", - "default": true - } - ], "store_path": "/nix/store/c2yy1f6a35vibr366hkszcfh3d9igsx2-goreleaser-1.25.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/fqjwqmd5wnxffzcs5r1qbh5a25nifjin-goreleaser-1.25.1", - "default": true - } - ], "store_path": "/nix/store/fqjwqmd5wnxffzcs5r1qbh5a25nifjin-goreleaser-1.25.1" } } @@ -820,43 +288,15 @@ "version": "1.10.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ig0lkm37qv1dwwcjwr86110wgkr6ifdj-gotestsum-1.10.1", - "default": true - } - ], "store_path": "/nix/store/ig0lkm37qv1dwwcjwr86110wgkr6ifdj-gotestsum-1.10.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/zx1qgqrjh64mzghizb5aqrpn5w6m9cwy-gotestsum-1.10.1", - "default": true - } - ], "store_path": "/nix/store/zx1qgqrjh64mzghizb5aqrpn5w6m9cwy-gotestsum-1.10.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/n5gzxnld94v1z2fdqpadav2ncs21fx0a-gotestsum-1.10.1", - "default": true - } - ], "store_path": "/nix/store/n5gzxnld94v1z2fdqpadav2ncs21fx0a-gotestsum-1.10.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/nq7a90jrbzykxwsgd57sgyqnhj141xix-gotestsum-1.10.1", - "default": true - } - ], "store_path": "/nix/store/nq7a90jrbzykxwsgd57sgyqnhj141xix-gotestsum-1.10.1" } } @@ -868,43 +308,15 @@ "version": "1.1.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/3drkd0smbpn45r10nsw9pyql4ri627cj-govulncheck-1.1.0", - "default": true - } - ], "store_path": "/nix/store/3drkd0smbpn45r10nsw9pyql4ri627cj-govulncheck-1.1.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/nhcv6r6m29x502f1sh16v4ybdn2nz940-govulncheck-1.1.0", - "default": true - } - ], "store_path": "/nix/store/nhcv6r6m29x502f1sh16v4ybdn2nz940-govulncheck-1.1.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/lp9ak63fvb63vjl05fadbaylb1p7k53j-govulncheck-1.1.0", - "default": true - } - ], "store_path": "/nix/store/lp9ak63fvb63vjl05fadbaylb1p7k53j-govulncheck-1.1.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/il628qrar7dkz9cb3c6d7l5sagc56rkz-govulncheck-1.1.0", - "default": true - } - ], "store_path": "/nix/store/il628qrar7dkz9cb3c6d7l5sagc56rkz-govulncheck-1.1.0" } } @@ -916,43 +328,15 @@ "version": "1.13.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/c2dc5mn43gyvafhaxvw99y1b4r59f1y3-helm-docs-1.13.1", - "default": true - } - ], "store_path": "/nix/store/c2dc5mn43gyvafhaxvw99y1b4r59f1y3-helm-docs-1.13.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/sd4zri0m7rim2vm87frh0dl6s1v23vnc-helm-docs-1.13.1", - "default": true - } - ], "store_path": "/nix/store/sd4zri0m7rim2vm87frh0dl6s1v23vnc-helm-docs-1.13.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/cggw7gl27ch6jbah908f8gfxzbn40g66-helm-docs-1.13.1", - "default": true - } - ], "store_path": "/nix/store/cggw7gl27ch6jbah908f8gfxzbn40g66-helm-docs-1.13.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/82vr534g0h22gjzzllwx35dqx9df5fk0-helm-docs-1.13.1", - "default": true - } - ], "store_path": "/nix/store/82vr534g0h22gjzzllwx35dqx9df5fk0-helm-docs-1.13.1" } } @@ -964,43 +348,15 @@ "version": "0.125.4", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/2ssds5l4s15xfgljv2ygjhqpn949lxj4-hugo-0.125.4", - "default": true - } - ], "store_path": "/nix/store/2ssds5l4s15xfgljv2ygjhqpn949lxj4-hugo-0.125.4" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/nln80v8vsw5h3hv7kihglb12fy077flb-hugo-0.125.4", - "default": true - } - ], "store_path": "/nix/store/nln80v8vsw5h3hv7kihglb12fy077flb-hugo-0.125.4" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/n6az4gns36nrq9sbiqf2kf7kgn1kjyfm-hugo-0.125.4", - "default": true - } - ], "store_path": "/nix/store/n6az4gns36nrq9sbiqf2kf7kgn1kjyfm-hugo-0.125.4" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/k53ijl83p62i6lqia2jjky8l136x42i7-hugo-0.125.4", - "default": true - } - ], "store_path": "/nix/store/k53ijl83p62i6lqia2jjky8l136x42i7-hugo-0.125.4" } } @@ -1012,43 +368,15 @@ "version": "0.22.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/7b44andnvna5df49kxck6i4va51y2izm-kind-0.22.0", - "default": true - } - ], "store_path": "/nix/store/7b44andnvna5df49kxck6i4va51y2izm-kind-0.22.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/qjq6mvqrhyr4hwmx5bdnfhjjlvqqcznb-kind-0.22.0", - "default": true - } - ], "store_path": "/nix/store/qjq6mvqrhyr4hwmx5bdnfhjjlvqqcznb-kind-0.22.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/dslzli66l7dhyqjwfs4r2j9bxdx0m23w-kind-0.22.0", - "default": true - } - ], "store_path": "/nix/store/dslzli66l7dhyqjwfs4r2j9bxdx0m23w-kind-0.22.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/nd4i4035fm5055m7y6j8pg5s24139ppf-kind-0.22.0", - "default": true - } - ], "store_path": "/nix/store/nd4i4035fm5055m7y6j8pg5s24139ppf-kind-0.22.0" } } @@ -1060,43 +388,15 @@ "version": "0.15.2", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/fiv4qvv9qh9gyq1jklwv1s8dhbvqznbq-ko-0.15.2", - "default": true - } - ], "store_path": "/nix/store/fiv4qvv9qh9gyq1jklwv1s8dhbvqznbq-ko-0.15.2" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/vk8yhsp9ar2c4vswvgr6kw79sr4prf5y-ko-0.15.2", - "default": true - } - ], "store_path": "/nix/store/vk8yhsp9ar2c4vswvgr6kw79sr4prf5y-ko-0.15.2" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/wzj6ljwz4z5vjw4pqd5zql47s5gdwbs0-ko-0.15.2", - "default": true - } - ], "store_path": "/nix/store/wzj6ljwz4z5vjw4pqd5zql47s5gdwbs0-ko-0.15.2" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/s8vviasrwpgcl5qafy0s9l3y9rpkznv6-ko-0.15.2", - "default": true - } - ], "store_path": "/nix/store/s8vviasrwpgcl5qafy0s9l3y9rpkznv6-ko-0.15.2" } } @@ -1108,43 +408,15 @@ "version": "3.14.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/0amj5zw2rka2zjvq076ljfn80pch4dsa-kubebuilder-3.14.1", - "default": true - } - ], "store_path": "/nix/store/0amj5zw2rka2zjvq076ljfn80pch4dsa-kubebuilder-3.14.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ckx2xzgy6h4qq1pqr7z8k39yg6s0spin-kubebuilder-3.14.1", - "default": true - } - ], "store_path": "/nix/store/ckx2xzgy6h4qq1pqr7z8k39yg6s0spin-kubebuilder-3.14.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4zwb2jklg7wy2whkhp9wg5gnlqldms3a-kubebuilder-3.14.1", - "default": true - } - ], "store_path": "/nix/store/4zwb2jklg7wy2whkhp9wg5gnlqldms3a-kubebuilder-3.14.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/fswxi79rrm0qdqsv6njwmygyc8mzz6sy-kubebuilder-3.14.1", - "default": true - } - ], "store_path": "/nix/store/fswxi79rrm0qdqsv6njwmygyc8mzz6sy-kubebuilder-3.14.1" } } @@ -1156,79 +428,15 @@ "version": "1.30.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/37l125fmsqjlgzg6nkv84kbq0bdfdn09-kubectl-1.30.0", - "default": true - }, - { - "name": "man", - "path": "/nix/store/vcjzq65cqyrzcfmjzsj42hrw3x45mk8s-kubectl-1.30.0-man", - "default": true - }, - { - "name": "convert", - "path": "/nix/store/6fx7d4rwmkvsbzkxl395r1y5401386yr-kubectl-1.30.0-convert" - } - ], "store_path": "/nix/store/37l125fmsqjlgzg6nkv84kbq0bdfdn09-kubectl-1.30.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/mw521nhjmm9zij283yrxdbh0fislpdy4-kubectl-1.30.0", - "default": true - }, - { - "name": "man", - "path": "/nix/store/grk8qw3nmp1vxc31dyg1z5z507l9ckpq-kubectl-1.30.0-man", - "default": true - }, - { - "name": "convert", - "path": "/nix/store/nl734r759bgqw8rarrrbs03y4qa04ky7-kubectl-1.30.0-convert" - } - ], "store_path": "/nix/store/mw521nhjmm9zij283yrxdbh0fislpdy4-kubectl-1.30.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/kzi7bl9hpgn5c9i7pcq2cby92gwighaj-kubectl-1.30.0", - "default": true - }, - { - "name": "man", - "path": "/nix/store/1f08fr3w6ba623fb4n56s2dk7mrmpb0h-kubectl-1.30.0-man", - "default": true - }, - { - "name": "convert", - "path": "/nix/store/739cc0ccyia6410bhrxg2iv1qj0zqjsz-kubectl-1.30.0-convert" - } - ], "store_path": "/nix/store/kzi7bl9hpgn5c9i7pcq2cby92gwighaj-kubectl-1.30.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/r5gah9impdhsi9f5hsbg32xqfqsajh90-kubectl-1.30.0", - "default": true - }, - { - "name": "man", - "path": "/nix/store/6r4jpknb24y1x83wrrind0b0h1as07a4-kubectl-1.30.0-man", - "default": true - }, - { - "name": "convert", - "path": "/nix/store/4hbqv5y1h7hw88xkjrbgr0gn8p7pwszp-kubectl-1.30.0-convert" - } - ], "store_path": "/nix/store/r5gah9impdhsi9f5hsbg32xqfqsajh90-kubectl-1.30.0" } } @@ -1240,43 +448,15 @@ "version": "3.14.4", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/1rlaqgp0b551xzi4mi31wy2zwk3qbs4j-kubernetes-helm-3.14.4", - "default": true - } - ], "store_path": "/nix/store/1rlaqgp0b551xzi4mi31wy2zwk3qbs4j-kubernetes-helm-3.14.4" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/jl1h7r1m77qi845ji1grrchgvcsjb7w6-kubernetes-helm-3.14.4", - "default": true - } - ], "store_path": "/nix/store/jl1h7r1m77qi845ji1grrchgvcsjb7w6-kubernetes-helm-3.14.4" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/hl7n59kix0bv78vgiq4irkscgyndm81h-kubernetes-helm-3.14.4", - "default": true - } - ], "store_path": "/nix/store/hl7n59kix0bv78vgiq4irkscgyndm81h-kubernetes-helm-3.14.4" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/mg1wazgldz91y0k2nfks8w3imlpmf4k7-kubernetes-helm-3.14.4", - "default": true - } - ], "store_path": "/nix/store/mg1wazgldz91y0k2nfks8w3imlpmf4k7-kubernetes-helm-3.14.4" } } @@ -1288,43 +468,15 @@ "version": "5.3.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/wv3jslzlcnycaxp6h6ni5b6yl72is4yk-kustomize-5.3.0", - "default": true - } - ], "store_path": "/nix/store/wv3jslzlcnycaxp6h6ni5b6yl72is4yk-kustomize-5.3.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/n8ygx4ql0xsxyhmvdfx5l00nr2zy7dgy-kustomize-5.3.0", - "default": true - } - ], "store_path": "/nix/store/n8ygx4ql0xsxyhmvdfx5l00nr2zy7dgy-kustomize-5.3.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/9ywmswh6f6y3fwbmdibj9pgj86fd1vjj-kustomize-5.3.0", - "default": true - } - ], "store_path": "/nix/store/9ywmswh6f6y3fwbmdibj9pgj86fd1vjj-kustomize-5.3.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/i4bhj98f4qzn9kyl9k7kcq2r5y3qqm98-kustomize-5.3.0", - "default": true - } - ], "store_path": "/nix/store/i4bhj98f4qzn9kyl9k7kcq2r5y3qqm98-kustomize-5.3.0" } } @@ -1336,59 +488,15 @@ "version": "3.7.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/17qf8srf152m3pqg544bs6vs3mq6p2jg-pre-commit-3.7.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/b6y24scz61gj279r2cfz70kxbap0qdbg-pre-commit-3.7.0-dist" - } - ], "store_path": "/nix/store/17qf8srf152m3pqg544bs6vs3mq6p2jg-pre-commit-3.7.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/g0jl2wzkr8qlqwv9xnjdyv8makl96hjz-pre-commit-3.7.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/nvxrb7i01qz4zm5kn377db05avvwbsf8-pre-commit-3.7.0-dist" - } - ], "store_path": "/nix/store/g0jl2wzkr8qlqwv9xnjdyv8makl96hjz-pre-commit-3.7.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/kg1208c3dkkicj7ds3j46xjqisd8piyq-pre-commit-3.7.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/37r0h0dsby70m5nv7pn64ywxykk6cgb1-pre-commit-3.7.0-dist" - } - ], "store_path": "/nix/store/kg1208c3dkkicj7ds3j46xjqisd8piyq-pre-commit-3.7.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/86xlgibvlyfag4hmdclkvgk0qkmcpp25-pre-commit-3.7.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/7ap1fmxdwxnycyfn4rfx0qxx8f40idix-pre-commit-3.7.0-dist" - } - ], "store_path": "/nix/store/86xlgibvlyfag4hmdclkvgk0qkmcpp25-pre-commit-3.7.0" } } @@ -1400,43 +508,15 @@ "version": "3.2.7", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/lmn0856fjg2h00dbkgd0yi7dg2i1czrq-rsync-3.2.7", - "default": true - } - ], "store_path": "/nix/store/lmn0856fjg2h00dbkgd0yi7dg2i1czrq-rsync-3.2.7" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/plqiay0igxv3q4nf862libyma5sjzwfi-rsync-3.2.7", - "default": true - } - ], "store_path": "/nix/store/plqiay0igxv3q4nf862libyma5sjzwfi-rsync-3.2.7" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/3ikzv9bs3hm26s4kahyvlc4l3frydc52-rsync-3.2.7", - "default": true - } - ], "store_path": "/nix/store/3ikzv9bs3hm26s4kahyvlc4l3frydc52-rsync-3.2.7" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/azidifgdi990qzks68gcg0xj0cpffpbz-rsync-3.2.7", - "default": true - } - ], "store_path": "/nix/store/azidifgdi990qzks68gcg0xj0cpffpbz-rsync-3.2.7" } } @@ -1448,43 +528,15 @@ "version": "3.8.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/l8sm1992vmnmr8j99jh7q8byaclf1jv1-shfmt-3.8.0", - "default": true - } - ], "store_path": "/nix/store/l8sm1992vmnmr8j99jh7q8byaclf1jv1-shfmt-3.8.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/4g57adzvp11gwiv16n4bkc5ikzir4lml-shfmt-3.8.0", - "default": true - } - ], "store_path": "/nix/store/4g57adzvp11gwiv16n4bkc5ikzir4lml-shfmt-3.8.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/9ng247brll7wshkzjg63rip0qsa369h8-shfmt-3.8.0", - "default": true - } - ], "store_path": "/nix/store/9ng247brll7wshkzjg63rip0qsa369h8-shfmt-3.8.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/w8rmc8xx4cs1kfjfy8cnsdcdipjipylf-shfmt-3.8.0", - "default": true - } - ], "store_path": "/nix/store/w8rmc8xx4cs1kfjfy8cnsdcdipjipylf-shfmt-3.8.0" } } @@ -1496,59 +548,15 @@ "version": "5.2.0", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/v2h1an586fx1zpc75l61wj8zbzy5dv3h-python3.11-yamale-5.2.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/fwf3f88dzdnj5kr2h4i8q69j91gzj42d-python3.11-yamale-5.2.0-dist" - } - ], "store_path": "/nix/store/v2h1an586fx1zpc75l61wj8zbzy5dv3h-python3.11-yamale-5.2.0" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/ph8a2s0694jq9xs6a0jkl6iafb2jc2q5-python3.11-yamale-5.2.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/4zfx3f35gm28yacv9vn343mdi8qnqpk2-python3.11-yamale-5.2.0-dist" - } - ], "store_path": "/nix/store/ph8a2s0694jq9xs6a0jkl6iafb2jc2q5-python3.11-yamale-5.2.0" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/6pp1smzrgr8wwm3vnxzglf739vcclrvz-python3.11-yamale-5.2.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/32mwfa7bd3j9ibdqkxb4a4pdxjqrki7j-python3.11-yamale-5.2.0-dist" - } - ], "store_path": "/nix/store/6pp1smzrgr8wwm3vnxzglf739vcclrvz-python3.11-yamale-5.2.0" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/65s07kw177vfbf26v49rpbqrr7kz0mg7-python3.11-yamale-5.2.0", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/ix14i2ma4j672kinq83ap8xjrqxjnx4x-python3.11-yamale-5.2.0-dist" - } - ], "store_path": "/nix/store/65s07kw177vfbf26v49rpbqrr7kz0mg7-python3.11-yamale-5.2.0" } } @@ -1560,62 +568,38 @@ "version": "1.35.1", "systems": { "aarch64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/vd7zfjfphrbp62z5a355km2k1b5pcna2-python3.11-yamllint-1.35.1", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/81v5lk1warbhybasxf50af3p1bckypri-python3.11-yamllint-1.35.1-dist" - } - ], "store_path": "/nix/store/vd7zfjfphrbp62z5a355km2k1b5pcna2-python3.11-yamllint-1.35.1" }, "aarch64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/alway1qh97cggix9vmfpscs22hzflc77-python3.11-yamllint-1.35.1", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/5y3sw452d4anxs88j15vissb7q6qyi5a-python3.11-yamllint-1.35.1-dist" - } - ], "store_path": "/nix/store/alway1qh97cggix9vmfpscs22hzflc77-python3.11-yamllint-1.35.1" }, "x86_64-darwin": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/i67vc49gcvlvx1z8is15nb3k5yqvnqjr-python3.11-yamllint-1.35.1", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/zclqzl9lfajahf4pxw88gv1k52gv1cx4-python3.11-yamllint-1.35.1-dist" - } - ], "store_path": "/nix/store/i67vc49gcvlvx1z8is15nb3k5yqvnqjr-python3.11-yamllint-1.35.1" }, "x86_64-linux": { - "outputs": [ - { - "name": "out", - "path": "/nix/store/6bak83f1ib271wfl5ybw4m7vw5qr34kk-python3.11-yamllint-1.35.1", - "default": true - }, - { - "name": "dist", - "path": "/nix/store/hl6l62im8mnxldvqpifi62n8abnwbi93-python3.11-yamllint-1.35.1-dist" - } - ], "store_path": "/nix/store/6bak83f1ib271wfl5ybw4m7vw5qr34kk-python3.11-yamllint-1.35.1" } } + }, + "yq@latest": { + "last_modified": "2024-05-03T15:42:32Z", + "resolved": "github:NixOS/nixpkgs/5fd8536a9a5932d4ae8de52b7dc08d92041237fc#yq", + "source": "devbox-search", + "version": "3.4.3", + "systems": { + "aarch64-darwin": { + "store_path": "/nix/store/a2fl3r5yz6sn3y76hp297v9vxg6rsxvm-python3.11-yq-3.4.3" + }, + "aarch64-linux": { + "store_path": "/nix/store/fjq379l09b2mpjfd6nfq2m061fvipasw-python3.11-yq-3.4.3" + }, + "x86_64-darwin": { + "store_path": "/nix/store/w84j63jqij1adzwd7667nr9rakb27364-python3.11-yq-3.4.3" + }, + "x86_64-linux": { + "store_path": "/nix/store/k58r09rfyaspq2ba32ng0irw09cpf8nh-python3.11-yq-3.4.3" + } + } } } } diff --git a/hack/addons/fetch-helm-crds.sh b/hack/addons/fetch-helm-crds.sh new file mode 100755 index 000000000..8b2ae9de4 --- /dev/null +++ b/hack/addons/fetch-helm-crds.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash +# +# this script fetches the CRDs so that we can use the bundle type in our templates +# see this issue which describes the problem: https://github.com/cert-manager/trust-manager/issues/281 +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +readonly SCRIPT_DIR + +# shellcheck source=hack/common.sh +source "${SCRIPT_DIR}/../common.sh" + +RAW_URL="https://raw.githubusercontent.com/cert-manager/trust-manager" +VERSION="$(yq .dependencies[0].version <"${GIT_REPO_ROOT}/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml" | xargs)" +CRD_URL_PATH="deploy/charts/trust-manager/templates/crd-trust.cert-manager.io_bundles.yaml" +CRD_PATH="${GIT_REPO_ROOT}/charts/cluster-api-runtime-extensions-nutanix/crds/" +mkdir -p "${CRD_PATH}" +echo "${RAW_URL}/${VERSION}/${CRD_URL_PATH}" +CRD_FILE="${CRD_PATH}/crd-trust.cert-manager.io_bundles.yaml" +curl -l -o "${CRD_FILE}" "${RAW_URL}/${VERSION}/${CRD_URL_PATH}" +sed -i s/{{\.*}}//g "${CRD_FILE}" +yq -Y '.metadata.annotations["meta.helm.sh/release-name"] = "cluster-api-runtime-extensions-nutanix" | + .metadata.annotations["meta.helm.sh/release-namespace"] = "default" | + .metadata.labels["app.kubernetes.io/managed-by"] = "Helm"' <./charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml >>tmp.yaml + +mv tmp.yaml "${CRD_FILE}" diff --git a/hack/addons/kustomize/nfd/kustomization.yaml.tmpl b/hack/addons/kustomize/nfd/kustomization.yaml.tmpl index 20ece8855..6ca1ffa32 100644 --- a/hack/addons/kustomize/nfd/kustomization.yaml.tmpl +++ b/hack/addons/kustomize/nfd/kustomization.yaml.tmpl @@ -18,7 +18,7 @@ helmCharts: valuesFile: helm-values.yaml valuesInline: image: - tag: "${NODE_FEATURE_DISCOVERY_VERSION}-minimal" + tag: "v${NODE_FEATURE_DISCOVERY_VERSION}-minimal" includeCRDs: true skipTests: true namespace: node-feature-discovery diff --git a/hack/addons/mindthegap-helm-registry/repos.yaml b/hack/addons/mindthegap-helm-registry/repos.yaml index 85977e006..97ef35bdb 100644 --- a/hack/addons/mindthegap-helm-registry/repos.yaml +++ b/hack/addons/mindthegap-helm-registry/repos.yaml @@ -25,7 +25,7 @@ repositories: repoURL: https://kubernetes-sigs.github.io/node-feature-discovery/charts charts: node-feature-discovery: - - v0.15.2 + - 0.15.2 nutanix-cloud-provider: repoURL: https://nutanix.github.io/helm/ charts: diff --git a/make/addons.mk b/make/addons.mk index 2405eedd4..7d4318bf5 100644 --- a/make/addons.mk +++ b/make/addons.mk @@ -3,7 +3,7 @@ export CALICO_VERSION := v3.26.4 export CILIUM_VERSION := 1.15.0 -export NODE_FEATURE_DISCOVERY_VERSION := v0.15.2 +export NODE_FEATURE_DISCOVERY_VERSION := 0.15.2 export CLUSTER_AUTOSCALER_VERSION := 9.35.0 export AWS_CSI_SNAPSHOT_CONTROLLER_VERSION := v6.3.3 export AWS_EBS_CSI_CHART_VERSION := v2.28.1 @@ -54,8 +54,8 @@ update-addon.aws-ccm.%: ; $(info $(M) updating aws ccm $* manifests) update-addon.kube-vip: ; $(info $(M) updating kube-vip manifests) ./hack/addons/update-kube-vip-manifests.sh -.PHONY: generate-helm-configmap ## this file is now used by generate-mindthegap-repofile -generate-helm-configmap: ; $(info $(M) genrating helm configmap) +.PHONY: generate-helm-configmap +generate-helm-configmap: ; $(info $(M) genrating helm configmap) ## this file is now used by generate-mindthegap-repofile go run hack/tools/helm-cm/main.go -kustomize-directory="./hack/addons/kustomize" -output-file="./charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml" ./hack/addons/add-warning-helm-configmap.sh @@ -63,6 +63,6 @@ generate-helm-configmap: ; $(info $(M) genrating helm configmap) generate-mindthegap-repofile: generate-helm-configmap ; $(info $(M) generating helm repofile for mindthgap) ./hack/addons/generate-mindthegap-repofile.sh -.PHONY: replace-with-mindthegap ## this is used by gorealeaser to set the helm value to this. -replace-with-mindthegap: generate-mindthegap-repofile - sed -i 's/RepositoryURL:.*/RepositoryURL: oci:\/\/mindthegap.{{ .Release.Namespace }}.svc/g' "./charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml" +.PHONY: replace-with-mindthegap +replace-with-mindthegap: generate-mindthegap-repofile ## this is used by gorealeaser to set the helm value to this. + sed -i 's/RepositoryURL:.*/RepositoryURL: oci:\/\/mindthegap.mindthegap.svc\/charts/g' "./charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml" diff --git a/make/helm.mk b/make/helm.mk index dd3dfdc20..9093ce69b 100644 --- a/make/helm.mk +++ b/make/helm.mk @@ -11,3 +11,7 @@ lint-and-install-chart: ## Lints and installs helm chart lint-and-install-chart: ct lint-and-install --config charts/ct-config.yaml ct lint-and-install --config charts/ct-config.yaml --upgrade + +.PHONY: helm-fetch-crds +helm-fetch-crds: + ./hack/addons/fetch-helm-crds.sh diff --git a/pkg/handlers/generic/lifecycle/nfd/strategy_helmaddon.go b/pkg/handlers/generic/lifecycle/nfd/strategy_helmaddon.go index 33f4ce8b5..b8ad76acc 100644 --- a/pkg/handlers/generic/lifecycle/nfd/strategy_helmaddon.go +++ b/pkg/handlers/generic/lifecycle/nfd/strategy_helmaddon.go @@ -68,7 +68,7 @@ func (s helmAddonStrategy) apply( values += fmt.Sprintf(` image: - tag: %s-minimal + tag: v%s-minimal `, s.helmChart.Version) hcp := &caaphv1.HelmChartProxy{ From 92f5dbdb2c092420422fc9101818ff6371599f6f Mon Sep 17 00:00:00 2001 From: faiq Date: Tue, 14 May 2024 18:25:12 -0600 Subject: [PATCH 03/10] fix: version number for nutanix csi --- .../templates/helm-config.yaml | 2 +- hack/addons/mindthegap-helm-registry/repos.yaml | 2 +- make/addons.mk | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml index 424432616..ceae8c885 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml @@ -33,7 +33,7 @@ data: RepositoryURL: oci://mindthegap.mindthegap.svc/charts nutanix-storage-csi: | ChartName: nutanix-csi-storage - ChartVersion: v3.0.0-beta.1912 + ChartVersion: 3.0.0-beta.1912 RepositoryURL: oci://mindthegap.mindthegap.svc/charts tigera-operator: | ChartName: tigera-operator diff --git a/hack/addons/mindthegap-helm-registry/repos.yaml b/hack/addons/mindthegap-helm-registry/repos.yaml index 97ef35bdb..e834cc635 100644 --- a/hack/addons/mindthegap-helm-registry/repos.yaml +++ b/hack/addons/mindthegap-helm-registry/repos.yaml @@ -40,7 +40,7 @@ repositories: repoURL: https://nutanix.github.io/helm-releases/ charts: nutanix-csi-storage: - - v3.0.0-beta.1912 + - 3.0.0-beta.1912 tigera-operator: repoURL: https://docs.tigera.io/calico/charts charts: diff --git a/make/addons.mk b/make/addons.mk index 7d4318bf5..8430bf061 100644 --- a/make/addons.mk +++ b/make/addons.mk @@ -7,7 +7,7 @@ export NODE_FEATURE_DISCOVERY_VERSION := 0.15.2 export CLUSTER_AUTOSCALER_VERSION := 9.35.0 export AWS_CSI_SNAPSHOT_CONTROLLER_VERSION := v6.3.3 export AWS_EBS_CSI_CHART_VERSION := v2.28.1 -export NUTANIX_STORAGE_CSI_CHART_VERSION := v3.0.0-beta.1912 +export NUTANIX_STORAGE_CSI_CHART_VERSION := 3.0.0-beta.1912 export NUTANIX_SNAPSHOT_CSI_CHART_VERSION := 6.3.2 # a map of AWS CCM versions export AWS_CCM_VERSION_127 := v1.27.1 From 79428c5cdf0414264a1a82d42202c405c00db5fa Mon Sep 17 00:00:00 2001 From: faiq Date: Tue, 14 May 2024 18:45:44 -0600 Subject: [PATCH 04/10] fix: minor linting fixups --- hack/addons/fetch-helm-crds.sh | 1 + make/helm.mk | 1 + 2 files changed, 2 insertions(+) diff --git a/hack/addons/fetch-helm-crds.sh b/hack/addons/fetch-helm-crds.sh index 8b2ae9de4..f092c0ffd 100755 --- a/hack/addons/fetch-helm-crds.sh +++ b/hack/addons/fetch-helm-crds.sh @@ -18,6 +18,7 @@ mkdir -p "${CRD_PATH}" echo "${RAW_URL}/${VERSION}/${CRD_URL_PATH}" CRD_FILE="${CRD_PATH}/crd-trust.cert-manager.io_bundles.yaml" curl -l -o "${CRD_FILE}" "${RAW_URL}/${VERSION}/${CRD_URL_PATH}" +#shellcheck disable=SC1083 # this is supposed to be literal values sed -i s/{{\.*}}//g "${CRD_FILE}" yq -Y '.metadata.annotations["meta.helm.sh/release-name"] = "cluster-api-runtime-extensions-nutanix" | .metadata.annotations["meta.helm.sh/release-namespace"] = "default" | diff --git a/make/helm.mk b/make/helm.mk index 9093ce69b..13233f74c 100644 --- a/make/helm.mk +++ b/make/helm.mk @@ -13,5 +13,6 @@ lint-and-install-chart: ct lint-and-install --config charts/ct-config.yaml --upgrade .PHONY: helm-fetch-crds +helm-fetch-crds: helm-fetch-crds: ./hack/addons/fetch-helm-crds.sh From 051e0c7672e0abcde5c58bf64d11242da11cab33 Mon Sep 17 00:00:00 2001 From: faiq Date: Tue, 14 May 2024 19:09:19 -0600 Subject: [PATCH 05/10] fix: pre-commit --- .../crds/crd-trust.cert-manager.io_bundles.yaml | 3 +++ .../templates/bundle.yaml | 3 +++ .../templates/job-role.yaml | 3 +++ .../templates/job-rolebinding.yaml | 3 +++ .../templates/job-sa.yaml | 3 +++ .../templates/job.yaml | 3 +++ .../templates/mindthegap.yaml | 3 +++ charts/ct-config.yaml | 2 ++ hack/addons/mindthegap-helm-registry/repos.yaml | 2 +- hack/tools/mindthegap-helm-reg/main.go | 3 +++ pkg/handlers/generic/lifecycle/clusterautoscaler/template.go | 5 ++++- 11 files changed, 31 insertions(+), 2 deletions(-) diff --git a/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml index 95e3e8b1f..0a96d72f5 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml index baaed8296..896abfc9a 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml index 56c758db9..366d27530 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml index ac2021146..ac91dcf08 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml index eabd8da8c..9dbe4f23b 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml index 95981a7a7..5401084e1 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml index 985562e41..615388477 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + # Copyright 2023 D2iQ, Inc. All rights reserved. # SPDX-License-Identifier: Apache-2.0 # diff --git a/charts/ct-config.yaml b/charts/ct-config.yaml index 52b1ed15b..feaa977bf 100644 --- a/charts/ct-config.yaml +++ b/charts/ct-config.yaml @@ -3,6 +3,8 @@ chart-dirs: - charts +chart-repos: + - jetstack=https://charts.jetstack.io target-branch: main chart-yaml-schema: charts/chart_schema.yaml lint-conf: charts/lintconf.yaml diff --git a/hack/addons/mindthegap-helm-registry/repos.yaml b/hack/addons/mindthegap-helm-registry/repos.yaml index e834cc635..4be45bd8f 100644 --- a/hack/addons/mindthegap-helm-registry/repos.yaml +++ b/hack/addons/mindthegap-helm-registry/repos.yaml @@ -1,4 +1,4 @@ -# Copyright 2023 D2iQ, Inc. All rights reserved. +# Copyright 2024 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 #================================================================= diff --git a/hack/tools/mindthegap-helm-reg/main.go b/hack/tools/mindthegap-helm-reg/main.go index 46c48e324..3cf924d55 100644 --- a/hack/tools/mindthegap-helm-reg/main.go +++ b/hack/tools/mindthegap-helm-reg/main.go @@ -1,3 +1,6 @@ +// Copyright 2024 Nutanix. All rights reserved. +// SPDX-License-Identifier: Apache-2.0 + // Copyright 2023 D2iQ, Inc. All rights reserved. // SPDX-License-Identifier: Apache-2.0 diff --git a/pkg/handlers/generic/lifecycle/clusterautoscaler/template.go b/pkg/handlers/generic/lifecycle/clusterautoscaler/template.go index 2b0341efa..ac85aac41 100644 --- a/pkg/handlers/generic/lifecycle/clusterautoscaler/template.go +++ b/pkg/handlers/generic/lifecycle/clusterautoscaler/template.go @@ -45,7 +45,10 @@ func templateValues(cluster *clusterv1.Cluster, text string) (string, error) { var b bytes.Buffer err = clusterAutoscalerTemplate.Execute(&b, templateInput) if err != nil { - return "", fmt.Errorf("failed setting target Cluster name and namespace in template: %w", err) + return "", fmt.Errorf( + "failed setting target Cluster name and namespace in template: %w", + err, + ) } return b.String(), nil From 3396a260383af7f604bd51817a3b455b5f4e6ba4 Mon Sep 17 00:00:00 2001 From: faiq Date: Tue, 14 May 2024 21:56:12 -0600 Subject: [PATCH 06/10] fix: remove old copyright and remove helm hook --- .../templates/bundle.yaml | 3 --- .../templates/job-role.yaml | 3 --- .../templates/job-rolebinding.yaml | 5 ----- .../templates/job-sa.yaml | 3 --- .../templates/job.yaml | 7 ------- .../templates/mindthegap.yaml | 4 ---- 6 files changed, 25 deletions(-) diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml index 896abfc9a..c8c79948f 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml @@ -1,9 +1,6 @@ # Copyright 2024 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 -# Copyright 2023 D2iQ, Inc. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - apiVersion: trust.cert-manager.io/v1alpha1 kind: Bundle metadata: diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml index 366d27530..bd9ba5124 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml @@ -1,9 +1,6 @@ # Copyright 2024 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 -# Copyright 2023 D2iQ, Inc. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml index ac91dcf08..dc277bf0c 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml @@ -1,10 +1,5 @@ # Copyright 2024 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 - -# Copyright 2023 D2iQ, Inc. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - -# templates/rolebinding.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml index 9dbe4f23b..b0d5a49dc 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml @@ -1,9 +1,6 @@ # Copyright 2024 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 -# Copyright 2023 D2iQ, Inc. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - apiVersion: v1 kind: ServiceAccount metadata: diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml index 5401084e1..794046d22 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml @@ -1,17 +1,10 @@ # Copyright 2024 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 - -# Copyright 2023 D2iQ, Inc. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - apiVersion: batch/v1 kind: Job metadata: name: update-trust-manager-namespace namespace: caaph-system - annotations: - "helm.sh/hook": post-install,post-upgrade - "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded spec: template: spec: diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml index 615388477..9460a28a5 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml @@ -1,9 +1,5 @@ # Copyright 2024 Nutanix. All rights reserved. # SPDX-License-Identifier: Apache-2.0 - -# Copyright 2023 D2iQ, Inc. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 -# # This file contains the manifests to run a mindthegap deployment which contains helm charts for our addons. # The pod is built via goreleaser with configuration from hack/addons. # From 40525874765f1baf3b3d419b5772e4b7a88012bc Mon Sep 17 00:00:00 2001 From: faiq Date: Wed, 15 May 2024 12:37:00 -0600 Subject: [PATCH 07/10] fix: updates items with new namespace --- README.md | 1 + .../crd-trust.cert-manager.io_bundles.yaml | 9 +------- .../aws-cluster-class.yaml | 6 ++++++ .../docker-cluster-class.yaml | 6 ++++++ .../nutanix-cluster-class.yaml | 6 ++++++ .../templates/helm-config.yaml | 17 ++++++++------- .../templates/mindthegap.yaml | 21 ++++++------------- .../values.yaml | 3 +-- hack/addons/fetch-helm-crds.sh | 3 ++- .../aws/kustomization.yaml.tmpl | 1 + .../docker/kustomization.yaml.tmpl | 1 + .../nutanix/kustomization.yaml.tmpl | 1 + hack/tools/helm-cm/main.go | 3 ++- make/addons.mk | 2 +- make/dev.mk | 12 ++++++----- 15 files changed, 51 insertions(+), 41 deletions(-) diff --git a/README.md b/README.md index 0b2205f1b..8e75195e7 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,7 @@ export KUBERNETES_VERSION=v1.28.7 clusterctl generate cluster ${CLUSTER_NAME} \ --from ${CLUSTER_FILE} \ --kubernetes-version ${KUBERNETES_VERSION} \ + -n caren-system \ --worker-machine-count 1 | \ kubectl apply --server-side -f - ``` diff --git a/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml index 0a96d72f5..05f9ced17 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml @@ -1,17 +1,10 @@ -# Copyright 2024 Nutanix. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - -# Copyright 2023 D2iQ, Inc. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: name: "bundles.trust.cert-manager.io" annotations: - helm.sh/resource-policy: keep meta.helm.sh/release-name: cluster-api-runtime-extensions-nutanix - meta.helm.sh/release-namespace: default + meta.helm.sh/release-namespace: caren-system labels: app.kubernetes.io/managed-by: Helm spec: diff --git a/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/aws-cluster-class.yaml b/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/aws-cluster-class.yaml index 26de0b104..aa6a37388 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/aws-cluster-class.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/aws-cluster-class.yaml @@ -4,6 +4,7 @@ metadata: labels: cluster.x-k8s.io/provider: aws name: aws-quick-start + namespace: caren-system spec: controlPlane: machineInfrastructure: @@ -64,6 +65,7 @@ metadata: labels: cluster.x-k8s.io/provider: aws name: aws-quick-start + namespace: caren-system spec: template: spec: {} @@ -74,6 +76,7 @@ metadata: labels: cluster.x-k8s.io/provider: aws name: aws-quick-start-control-plane + namespace: caren-system spec: template: spec: @@ -102,6 +105,7 @@ metadata: labels: cluster.x-k8s.io/provider: aws name: aws-quick-start-control-plane + namespace: caren-system spec: template: spec: @@ -114,6 +118,7 @@ metadata: labels: cluster.x-k8s.io/provider: aws name: aws-quick-start-worker-machinetemplate + namespace: caren-system spec: template: spec: @@ -126,6 +131,7 @@ metadata: labels: cluster.x-k8s.io/provider: aws name: aws-quick-start-worker-bootstraptemplate + namespace: caren-system spec: template: spec: diff --git a/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/docker-cluster-class.yaml b/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/docker-cluster-class.yaml index b865361f2..c6afa7021 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/docker-cluster-class.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/docker-cluster-class.yaml @@ -4,6 +4,7 @@ metadata: labels: cluster.x-k8s.io/provider: docker name: docker-quick-start + namespace: caren-system spec: controlPlane: machineInfrastructure: @@ -50,6 +51,7 @@ metadata: labels: cluster.x-k8s.io/provider: docker name: docker-quick-start-cluster + namespace: caren-system spec: template: spec: {} @@ -60,6 +62,7 @@ metadata: labels: cluster.x-k8s.io/provider: docker name: docker-quick-start-control-plane + namespace: caren-system spec: template: spec: @@ -76,6 +79,7 @@ metadata: labels: cluster.x-k8s.io/provider: docker name: docker-quick-start-control-plane + namespace: caren-system spec: template: spec: @@ -89,6 +93,7 @@ metadata: labels: cluster.x-k8s.io/provider: docker name: docker-quick-start-default-worker-machinetemplate + namespace: caren-system spec: template: spec: @@ -102,6 +107,7 @@ metadata: labels: cluster.x-k8s.io/provider: docker name: docker-quick-start-default-worker-bootstraptemplate + namespace: caren-system spec: template: spec: diff --git a/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/nutanix-cluster-class.yaml b/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/nutanix-cluster-class.yaml index 41966e73c..1eef6b193 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/nutanix-cluster-class.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/defaultclusterclasses/nutanix-cluster-class.yaml @@ -4,6 +4,7 @@ metadata: labels: cluster.x-k8s.io/provider: nutanix name: nutanix-quick-start-kcfg-0 + namespace: caren-system spec: template: spec: @@ -26,6 +27,7 @@ metadata: labels: cluster.x-k8s.io/provider: nutanix name: nutanix-quick-start + namespace: caren-system spec: controlPlane: machineHealthCheck: @@ -116,6 +118,7 @@ metadata: labels: cluster.x-k8s.io/provider: nutanix name: nutanix-quick-start-kcpt + namespace: caren-system spec: template: spec: @@ -164,6 +167,7 @@ metadata: labels: cluster.x-k8s.io/provider: nutanix name: nutanix-quick-start-nct + namespace: caren-system spec: template: spec: @@ -185,6 +189,7 @@ metadata: labels: cluster.x-k8s.io/provider: nutanix name: nutanix-quick-start-cp-nmt + namespace: caren-system spec: template: spec: @@ -210,6 +215,7 @@ metadata: labels: cluster.x-k8s.io/provider: nutanix name: nutanix-quick-start-md-nmt + namespace: caren-system spec: template: spec: diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml index ceae8c885..f286b17f5 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml @@ -10,36 +10,37 @@ data: cilium: | ChartName: cilium ChartVersion: 1.15.0 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts cluster-autoscaler: | ChartName: cluster-autoscaler ChartVersion: 9.35.0 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts metallb: | ChartName: metallb ChartVersion: v0.14.5 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts nfd: | ChartName: node-feature-discovery ChartVersion: 0.15.2 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts nutanix-ccm: | ChartName: nutanix-cloud-provider ChartVersion: 0.3.3 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts nutanix-snapshot-csi: | ChartName: nutanix-csi-snapshot ChartVersion: 6.3.2 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts nutanix-storage-csi: | ChartName: nutanix-csi-storage ChartVersion: 3.0.0-beta.1912 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts tigera-operator: | ChartName: tigera-operator ChartVersion: v3.26.4 - RepositoryURL: oci://mindthegap.mindthegap.svc/charts + RepositoryURL: oci://mindthegap.caren-system.svc/charts kind: ConfigMap metadata: creationTimestamp: null name: {{ .Values.helmAddonsConfigMap }} + namespace: caren-system diff --git a/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml index 9460a28a5..38bf6deaa 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/templates/mindthegap.yaml @@ -3,20 +3,11 @@ # This file contains the manifests to run a mindthegap deployment which contains helm charts for our addons. # The pod is built via goreleaser with configuration from hack/addons. # -# NOTE: We use a hard code namespace here because trust-manager -# need to set app.trust.namespace to be able to read secrets -# from this namespace. We then distribute the certificates -# to CAAPH system, which is the primary user of this service. -apiVersion: v1 -kind: Namespace -metadata: - name: mindthegap ---- apiVersion: cert-manager.io/v1 kind: Issuer metadata: name: mindthegap-selfsigned - namespace: mindthegap + namespace: {{ .Release.Namespace }} spec: selfSigned: {} --- @@ -24,11 +15,11 @@ apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: mindthegap-tls - namespace: mindthegap + namespace: {{ .Release.Namespace }} spec: dnsNames: - - mindthegap.mindthegap.svc - - mindthegap.mindthegap.svc.cluster.local + - mindthegap.{{ .Release.Namespace }}.svc + - mindthegap.{{ .Release.Namespace }}.svc.cluster.local issuerRef: name: mindthegap-selfsigned kind: Issuer @@ -38,7 +29,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: mindthegap - namespace: mindthegap + namespace: {{ .Release.Namespace }} labels: app: mindthegap spec: @@ -75,7 +66,7 @@ apiVersion: v1 kind: Service metadata: name: mindthegap - namespace: mindthegap + namespace: {{ .Release.Namespace }} spec: selector: app: mindthegap diff --git a/charts/cluster-api-runtime-extensions-nutanix/values.yaml b/charts/cluster-api-runtime-extensions-nutanix/values.yaml index a79ecd9dd..aed58f701 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/values.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/values.yaml @@ -4,8 +4,7 @@ trust-manager: app: trust: - namespace: mindthegap - + namespace: caren-system hooks: cni: calico: diff --git a/hack/addons/fetch-helm-crds.sh b/hack/addons/fetch-helm-crds.sh index f092c0ffd..ca171ba19 100755 --- a/hack/addons/fetch-helm-crds.sh +++ b/hack/addons/fetch-helm-crds.sh @@ -20,8 +20,9 @@ CRD_FILE="${CRD_PATH}/crd-trust.cert-manager.io_bundles.yaml" curl -l -o "${CRD_FILE}" "${RAW_URL}/${VERSION}/${CRD_URL_PATH}" #shellcheck disable=SC1083 # this is supposed to be literal values sed -i s/{{\.*}}//g "${CRD_FILE}" +sed -i '/helm.sh\/resource-policy: keep/d' "${CRD_FILE}" yq -Y '.metadata.annotations["meta.helm.sh/release-name"] = "cluster-api-runtime-extensions-nutanix" | - .metadata.annotations["meta.helm.sh/release-namespace"] = "default" | + .metadata.annotations["meta.helm.sh/release-namespace"] = "caren-system" | .metadata.labels["app.kubernetes.io/managed-by"] = "Helm"' <./charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml >>tmp.yaml mv tmp.yaml "${CRD_FILE}" diff --git a/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl b/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl index 839b01929..090b52391 100644 --- a/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl +++ b/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl @@ -3,6 +3,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: caren-system resources: - ../../../bases/aws/clusterclass diff --git a/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl b/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl index b64994466..8ec9d3d1b 100644 --- a/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl +++ b/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl @@ -3,6 +3,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: caren-system resources: - ../../../bases/docker/clusterclass diff --git a/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl b/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl index fb69b9647..0af4669ce 100644 --- a/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl +++ b/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl @@ -3,6 +3,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization +namespace: caren-system resources: - ../../../bases/nutanix/clusterclass diff --git a/hack/tools/helm-cm/main.go b/hack/tools/helm-cm/main.go index 2762d30b4..1de953824 100644 --- a/hack/tools/helm-cm/main.go +++ b/hack/tools/helm-cm/main.go @@ -134,7 +134,8 @@ func createConfigMapFromDir(kustomizeDir string) (*corev1.ConfigMap, error) { finalCM := corev1.ConfigMap{ ObjectMeta: metav1.ObjectMeta{ - Name: "placeholder", + Name: "placeholder", + Namespace: "caren-system", }, TypeMeta: metav1.TypeMeta{ APIVersion: corev1.SchemeGroupVersion.String(), diff --git a/make/addons.mk b/make/addons.mk index 8430bf061..1b5df7ab2 100644 --- a/make/addons.mk +++ b/make/addons.mk @@ -65,4 +65,4 @@ generate-mindthegap-repofile: generate-helm-configmap ; $(info $(M) generating h .PHONY: replace-with-mindthegap replace-with-mindthegap: generate-mindthegap-repofile ## this is used by gorealeaser to set the helm value to this. - sed -i 's/RepositoryURL:.*/RepositoryURL: oci:\/\/mindthegap.mindthegap.svc\/charts/g' "./charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml" + sed -i 's/RepositoryURL:.*/RepositoryURL: oci:\/\/mindthegap.caren-system.svc\/charts/g' "./charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml" diff --git a/make/dev.mk b/make/dev.mk index 214e349c8..86f4ff0ed 100644 --- a/make/dev.mk +++ b/make/dev.mk @@ -13,13 +13,15 @@ endif ko.local/cluster-api-runtime-extensions-nutanix:$$(gojq -r .version dist/metadata.json) kind load docker-image --name $(KIND_CLUSTER_NAME) \ ghcr.io/nutanix-cloud-native/caren-helm-reg:$$(gojq -r .version dist/metadata.json) + kubectl create namespace caren-system || true helm upgrade --install cluster-api-runtime-extensions-nutanix ./charts/cluster-api-runtime-extensions-nutanix \ + --namespace caren-system \ --set-string image.repository=ko.local/cluster-api-runtime-extensions-nutanix \ --set-string image.tag=$$(gojq -r .version dist/metadata.json) \ --set-string mindthegapImage.tag=$$(gojq -r .version dist/metadata.json) \ --wait --wait-for-jobs - kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix - kubectl rollout status deployment cluster-api-runtime-extensions-nutanix + kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix -n caren-system + kubectl rollout status deployment cluster-api-runtime-extensions-nutanix -n caren-system .PHONY: dev.update-webhook-image-on-kind dev.update-webhook-image-on-kind: export KUBECONFIG := $(KIND_KUBECONFIG) @@ -29,9 +31,9 @@ ifndef SKIP_BUILD endif kind load docker-image --name $(KIND_CLUSTER_NAME) \ ko.local/cluster-api-runtime-extensions-nutanix:$$(gojq -r .version dist/metadata.json) - kubectl set image deployment cluster-api-runtime-extensions-nutanix webhook=ko.local/cluster-api-runtime-extensions-nutanix:$$(gojq -r .version dist/metadata.json) - kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix - kubectl rollout status deployment cluster-api-runtime-extensions-nutanix + kubectl set image deployment -n caren-system cluster-api-runtime-extensions-nutanix webhook=ko.local/cluster-api-runtime-extensions-nutanix:$$(gojq -r .version dist/metadata.json) + kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix -n caren-system + kubectl rollout status deployment cluster-api-runtime-extensions-nutanix -n caren-system .PHONY: dev.update-bootstrap-credentials-aws From c2228066fbe7ffbe16f3f6ef58519821102e7de5 Mon Sep 17 00:00:00 2001 From: faiq Date: Wed, 15 May 2024 12:46:12 -0600 Subject: [PATCH 08/10] fix: precommit errors --- charts/cluster-api-runtime-extensions-nutanix/README.md | 2 +- .../crds/crd-trust.cert-manager.io_bundles.yaml | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/charts/cluster-api-runtime-extensions-nutanix/README.md b/charts/cluster-api-runtime-extensions-nutanix/README.md index 918126364..e63350aaa 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/README.md +++ b/charts/cluster-api-runtime-extensions-nutanix/README.md @@ -90,4 +90,4 @@ A Helm chart for cluster-api-runtime-extensions-nutanix | service.port | int | `443` | | | service.type | string | `"ClusterIP"` | | | tolerations | list | `[{"effect":"NoSchedule","key":"node-role.kubernetes.io/master","operator":"Equal"},{"effect":"NoSchedule","key":"node-role.kubernetes.io/control-plane","operator":"Equal"}]` | Kubernetes pod tolerations | -| trust-manager.app.trust.namespace | string | `"mindthegap"` | | +| trust-manager.app.trust.namespace | string | `"caren-system"` | | diff --git a/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml index 05f9ced17..7360ba84a 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml @@ -1,3 +1,6 @@ +# Copyright 2024 Nutanix. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: From 40853b83071e4804c5253ddf5981b77a1deb7b29 Mon Sep 17 00:00:00 2001 From: faiq Date: Wed, 15 May 2024 13:01:25 -0600 Subject: [PATCH 09/10] fix: adds namespace to ct lint --- .github/workflows/checks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 3a2cbb707..9a52db6bb 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -198,7 +198,7 @@ jobs: name: Run chart-testing (lint) run: | devbox run -- \ - ct lint --config charts/ct-config.yaml + ct lint --namespace=caren-system --config charts/ct-config.yaml - if: steps.list-changed.outputs.changed == 'true' name: Create kind cluster From 254dacfdb6ed0adf8fdbb69f1ae0983383976a4c Mon Sep 17 00:00:00 2001 From: faiq Date: Thu, 16 May 2024 12:32:19 -0600 Subject: [PATCH 10/10] fix: remove trust manager --- .github/workflows/checks.yml | 2 +- README.md | 1 - .../Chart.lock | 6 - .../Chart.yaml | 4 - .../README.md | 7 - .../charts/trust-manager-v0.10.0.tgz | Bin 16204 -> 0 bytes .../crd-trust.cert-manager.io_bundles.yaml | 390 ------------------ .../aws-cluster-class.yaml | 6 - .../docker-cluster-class.yaml | 6 - .../nutanix-cluster-class.yaml | 6 - .../templates/bundle.yaml | 19 - .../templates/helm-config.yaml | 17 +- .../templates/job-role.yaml | 18 - .../templates/job-rolebinding.yaml | 15 - .../templates/job-sa.yaml | 8 - .../templates/job.yaml | 66 --- .../values.yaml | 6 +- charts/ct-config.yaml | 2 - devbox.json | 1 - devbox.lock | 20 - hack/addons/fetch-helm-crds.sh | 28 -- .../aws/kustomization.yaml.tmpl | 1 - .../docker/kustomization.yaml.tmpl | 1 - .../nutanix/kustomization.yaml.tmpl | 1 - hack/tools/helm-cm/main.go | 3 +- hack/tools/mindthegap-helm-reg/main.go | 4 - make/addons.mk | 2 +- make/dev.mk | 10 +- make/helm.mk | 5 - 29 files changed, 16 insertions(+), 639 deletions(-) delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/Chart.lock delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/charts/trust-manager-v0.10.0.tgz delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/crds/crd-trust.cert-manager.io_bundles.yaml delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/bundle.yaml delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job-role.yaml delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job-rolebinding.yaml delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job-sa.yaml delete mode 100644 charts/cluster-api-runtime-extensions-nutanix/templates/job.yaml delete mode 100755 hack/addons/fetch-helm-crds.sh diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 9a52db6bb..3a2cbb707 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -198,7 +198,7 @@ jobs: name: Run chart-testing (lint) run: | devbox run -- \ - ct lint --namespace=caren-system --config charts/ct-config.yaml + ct lint --config charts/ct-config.yaml - if: steps.list-changed.outputs.changed == 'true' name: Create kind cluster diff --git a/README.md b/README.md index 8e75195e7..0b2205f1b 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,6 @@ export KUBERNETES_VERSION=v1.28.7 clusterctl generate cluster ${CLUSTER_NAME} \ --from ${CLUSTER_FILE} \ --kubernetes-version ${KUBERNETES_VERSION} \ - -n caren-system \ --worker-machine-count 1 | \ kubectl apply --server-side -f - ``` diff --git a/charts/cluster-api-runtime-extensions-nutanix/Chart.lock b/charts/cluster-api-runtime-extensions-nutanix/Chart.lock deleted file mode 100644 index b15bf393f..000000000 --- a/charts/cluster-api-runtime-extensions-nutanix/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: trust-manager - repository: https://charts.jetstack.io - version: v0.10.0 -digest: sha256:58f4f9fd7f71f972e9344c62c1f61978ab19cc174d8854c9d5de7da83eee2049 -generated: "2024-05-13T12:35:00.623992598-06:00" diff --git a/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml b/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml index e1b0c6b16..e02f8de90 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml +++ b/charts/cluster-api-runtime-extensions-nutanix/Chart.yaml @@ -14,10 +14,6 @@ maintainers: url: https://eng.d2iq.com sources: - https://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix -dependencies: - - name: trust-manager - version: v0.10.0 - repository: https://charts.jetstack.io appVersion: v0.0.0-dev version: v0.0.0-dev diff --git a/charts/cluster-api-runtime-extensions-nutanix/README.md b/charts/cluster-api-runtime-extensions-nutanix/README.md index e63350aaa..be9af839f 100644 --- a/charts/cluster-api-runtime-extensions-nutanix/README.md +++ b/charts/cluster-api-runtime-extensions-nutanix/README.md @@ -21,12 +21,6 @@ A Helm chart for cluster-api-runtime-extensions-nutanix * -## Requirements - -| Repository | Name | Version | -|------------|------|---------| -| https://charts.jetstack.io | trust-manager | v0.10.0 | - ## Values | Key | Type | Default | Description | @@ -90,4 +84,3 @@ A Helm chart for cluster-api-runtime-extensions-nutanix | service.port | int | `443` | | | service.type | string | `"ClusterIP"` | | | tolerations | list | `[{"effect":"NoSchedule","key":"node-role.kubernetes.io/master","operator":"Equal"},{"effect":"NoSchedule","key":"node-role.kubernetes.io/control-plane","operator":"Equal"}]` | Kubernetes pod tolerations | -| trust-manager.app.trust.namespace | string | `"caren-system"` | | diff --git a/charts/cluster-api-runtime-extensions-nutanix/charts/trust-manager-v0.10.0.tgz b/charts/cluster-api-runtime-extensions-nutanix/charts/trust-manager-v0.10.0.tgz deleted file mode 100644 index 02e3a9b581cc90315b220f8c53f48dd6a6f4e7d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16204 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.yaml - -mv tmp.yaml "${CRD_FILE}" diff --git a/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl b/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl index 090b52391..839b01929 100644 --- a/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl +++ b/hack/examples/overlays/clusterclasses/aws/kustomization.yaml.tmpl @@ -3,7 +3,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: caren-system resources: - ../../../bases/aws/clusterclass diff --git a/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl b/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl index 8ec9d3d1b..b64994466 100644 --- a/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl +++ b/hack/examples/overlays/clusterclasses/docker/kustomization.yaml.tmpl @@ -3,7 +3,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: caren-system resources: - ../../../bases/docker/clusterclass diff --git a/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl b/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl index 0af4669ce..fb69b9647 100644 --- a/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl +++ b/hack/examples/overlays/clusterclasses/nutanix/kustomization.yaml.tmpl @@ -3,7 +3,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: caren-system resources: - ../../../bases/nutanix/clusterclass diff --git a/hack/tools/helm-cm/main.go b/hack/tools/helm-cm/main.go index 1de953824..2762d30b4 100644 --- a/hack/tools/helm-cm/main.go +++ b/hack/tools/helm-cm/main.go @@ -134,8 +134,7 @@ func createConfigMapFromDir(kustomizeDir string) (*corev1.ConfigMap, error) { finalCM := corev1.ConfigMap{ ObjectMeta: metav1.ObjectMeta{ - Name: "placeholder", - Namespace: "caren-system", + Name: "placeholder", }, TypeMeta: metav1.TypeMeta{ APIVersion: corev1.SchemeGroupVersion.String(), diff --git a/hack/tools/mindthegap-helm-reg/main.go b/hack/tools/mindthegap-helm-reg/main.go index 3cf924d55..2e18775e2 100644 --- a/hack/tools/mindthegap-helm-reg/main.go +++ b/hack/tools/mindthegap-helm-reg/main.go @@ -1,9 +1,5 @@ // Copyright 2024 Nutanix. All rights reserved. // SPDX-License-Identifier: Apache-2.0 - -// Copyright 2023 D2iQ, Inc. All rights reserved. -// SPDX-License-Identifier: Apache-2.0 - package main import ( diff --git a/make/addons.mk b/make/addons.mk index 1b5df7ab2..eae29da98 100644 --- a/make/addons.mk +++ b/make/addons.mk @@ -65,4 +65,4 @@ generate-mindthegap-repofile: generate-helm-configmap ; $(info $(M) generating h .PHONY: replace-with-mindthegap replace-with-mindthegap: generate-mindthegap-repofile ## this is used by gorealeaser to set the helm value to this. - sed -i 's/RepositoryURL:.*/RepositoryURL: oci:\/\/mindthegap.caren-system.svc\/charts/g' "./charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml" + sed -i 's/RepositoryURL:.*/RepositoryURL: oci:\/\/mindthegap.{{ .Release.Namespace }}.svc\/charts/g' "./charts/cluster-api-runtime-extensions-nutanix/templates/helm-config.yaml" diff --git a/make/dev.mk b/make/dev.mk index 86f4ff0ed..9f8dbd51d 100644 --- a/make/dev.mk +++ b/make/dev.mk @@ -13,15 +13,13 @@ endif ko.local/cluster-api-runtime-extensions-nutanix:$$(gojq -r .version dist/metadata.json) kind load docker-image --name $(KIND_CLUSTER_NAME) \ ghcr.io/nutanix-cloud-native/caren-helm-reg:$$(gojq -r .version dist/metadata.json) - kubectl create namespace caren-system || true helm upgrade --install cluster-api-runtime-extensions-nutanix ./charts/cluster-api-runtime-extensions-nutanix \ - --namespace caren-system \ --set-string image.repository=ko.local/cluster-api-runtime-extensions-nutanix \ --set-string image.tag=$$(gojq -r .version dist/metadata.json) \ --set-string mindthegapImage.tag=$$(gojq -r .version dist/metadata.json) \ --wait --wait-for-jobs - kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix -n caren-system - kubectl rollout status deployment cluster-api-runtime-extensions-nutanix -n caren-system + kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix + kubectl rollout status deployment cluster-api-runtime-extensions-nutanix .PHONY: dev.update-webhook-image-on-kind dev.update-webhook-image-on-kind: export KUBECONFIG := $(KIND_KUBECONFIG) @@ -32,8 +30,8 @@ endif kind load docker-image --name $(KIND_CLUSTER_NAME) \ ko.local/cluster-api-runtime-extensions-nutanix:$$(gojq -r .version dist/metadata.json) kubectl set image deployment -n caren-system cluster-api-runtime-extensions-nutanix webhook=ko.local/cluster-api-runtime-extensions-nutanix:$$(gojq -r .version dist/metadata.json) - kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix -n caren-system - kubectl rollout status deployment cluster-api-runtime-extensions-nutanix -n caren-system + kubectl rollout restart deployment cluster-api-runtime-extensions-nutanix + kubectl rollout status deployment cluster-api-runtime-extensions-nutanix .PHONY: dev.update-bootstrap-credentials-aws diff --git a/make/helm.mk b/make/helm.mk index 13233f74c..dd3dfdc20 100644 --- a/make/helm.mk +++ b/make/helm.mk @@ -11,8 +11,3 @@ lint-and-install-chart: ## Lints and installs helm chart lint-and-install-chart: ct lint-and-install --config charts/ct-config.yaml ct lint-and-install --config charts/ct-config.yaml --upgrade - -.PHONY: helm-fetch-crds -helm-fetch-crds: -helm-fetch-crds: - ./hack/addons/fetch-helm-crds.sh