diff --git a/apis/installer/v1alpha1/license_proxyserver_manager_types.go b/apis/installer/v1alpha1/license_proxyserver_manager_types.go index 95022c893..37468fbcc 100644 --- a/apis/installer/v1alpha1/license_proxyserver_manager_types.go +++ b/apis/installer/v1alpha1/license_proxyserver_manager_types.go @@ -52,15 +52,11 @@ type LicenseProxyserverManagerSpec struct { RegistryFQDN string `json:"registryFQDN"` Image string `json:"image"` // +optional - Tag string `json:"tag"` - ImagePullPolicy string `json:"imagePullPolicy"` - // +optional - KubeconfigSecretName string `json:"kubeconfigSecretName"` - // +optional - AddonManagerNamespace string `json:"addonManagerNamespace"` - Placement PlacementSpec `json:"placement"` - Kubectl DockerImage `json:"kubectl"` - Platform PlatformSpec `json:"platform"` + Tag string `json:"tag"` + ImagePullPolicy string `json:"imagePullPolicy"` + Placement PlacementSpec `json:"placement"` + Kubectl DockerImage `json:"kubectl"` + Platform PlatformSpec `json:"platform"` //+optional SecurityContext *core.SecurityContext `json:"securityContext"` // List of sources to populate environment variables in the container. diff --git a/charts/license-proxyserver-manager/README.md b/charts/license-proxyserver-manager/README.md index ab8b7a62d..89e93dfff 100644 --- a/charts/license-proxyserver-manager/README.md +++ b/charts/license-proxyserver-manager/README.md @@ -45,34 +45,32 @@ The command removes all the Kubernetes components associated with the chart and The following table lists the configurable parameters of the `license-proxyserver-manager` chart and their default values. -| Parameter | Description | Default | -|------------------------------------------|---------------------------------------------------------------------|----------------------------------------------------------| -| nameOverride | | "" | -| fullnameOverride | | "" | -| registryFQDN | Docker registry fqdn used to pull license-proxyserver docker images | ghcr.io | -| image | | ghcr.io/appscode/license-proxyserver | -| tag | | "" | -| imagePullPolicy | | Always | -| kubeconfigSecretName | | "" | -| addonManagerNamespace | | open-cluster-management-license-proxyserver | -| placement.create | | true | -| placement.name | | global | -| kubectl.image | | ghcr.io/appscode/kubectl-nonroot:1.34 | -| platform.baseURL | | "" | -| platform.token | | "" | -| platform.tokenSecretName | | "" | -| platform.caBundle | | "" | -| platform.insecureSkipTLSVerify | | false | -| securityContext.allowPrivilegeEscalation | | false | -| securityContext.privileged | | false | -| securityContext.runAsNonRoot | | true | -| securityContext.runAsUser | | 65534 | -| securityContext.readOnlyRootFilesystem | | true | -| securityContext.seccompProfile.type | | RuntimeDefault | -| envFrom | List of sources to populate environment variables in the container | [] | -| env | List of environment variables to set in the container | [] | -| distro.openshift | | false | -| distro.ubi | | "" | +| Parameter | Description | Default | +|------------------------------------------|---------------------------------------------------------------------|----------------------------------------------------| +| nameOverride | | "" | +| fullnameOverride | | "" | +| registryFQDN | Docker registry fqdn used to pull license-proxyserver docker images | ghcr.io | +| image | | ghcr.io/appscode/license-proxyserver | +| tag | | "" | +| imagePullPolicy | | Always | +| placement.create | | true | +| placement.name | | global | +| kubectl.image | | ghcr.io/appscode/kubectl-nonroot:1.34 | +| platform.baseURL | | "" | +| platform.token | | "" | +| platform.tokenSecretName | | "" | +| platform.caBundle | | "" | +| platform.insecureSkipTLSVerify | | false | +| securityContext.allowPrivilegeEscalation | | false | +| securityContext.privileged | | false | +| securityContext.runAsNonRoot | | true | +| securityContext.runAsUser | | 65534 | +| securityContext.readOnlyRootFilesystem | | true | +| securityContext.seccompProfile.type | | RuntimeDefault | +| envFrom | List of sources to populate environment variables in the container | [] | +| env | List of environment variables to set in the container | [] | +| distro.openshift | | false | +| distro.ubi | | "" | Specify each parameter using the `--set key=value[,key=value]` argument to `helm upgrade -i`. For example: diff --git a/charts/license-proxyserver-manager/crds/addon.open-cluster-management.io_clustermanagementaddons.yaml b/charts/license-proxyserver-manager/crds/addon.open-cluster-management.io_clustermanagementaddons.yaml index f4cdb8072..a624aebb3 100644 --- a/charts/license-proxyserver-manager/crds/addon.open-cluster-management.io_clustermanagementaddons.yaml +++ b/charts/license-proxyserver-manager/crds/addon.open-cluster-management.io_clustermanagementaddons.yaml @@ -375,6 +375,7 @@ spec: type: object supportedConfigs: description: |- + Deprecated: Will be removed and replaced with DefaultConfigs in v1beta1. supportedConfigs is a list of configuration types supported by add-on. An empty list means the add-on does not require configurations. The default is an empty list @@ -421,7 +422,7 @@ spec: add-on. properties: defaultconfigReferences: - description: defaultconfigReferences is a list of current add-on default + description: DefaultConfigReferences is a list of current add-on default configuration references. items: description: |- @@ -522,6 +523,9 @@ spec: - type type: object type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map configReferences: description: configReferences is a list of current add-on configuration references. diff --git a/charts/license-proxyserver-manager/crds/cluster.open-cluster-management.io_placements.yaml b/charts/license-proxyserver-manager/crds/cluster.open-cluster-management.io_placements.yaml index 39fe40b5c..f8d2cbf07 100644 --- a/charts/license-proxyserver-manager/crds/cluster.open-cluster-management.io_placements.yaml +++ b/charts/license-proxyserver-manager/crds/cluster.open-cluster-management.io_placements.yaml @@ -600,6 +600,9 @@ spec: - type type: object type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map decisionGroups: description: List of decision groups determined by the placement and DecisionStrategy. diff --git a/charts/license-proxyserver-manager/crds/work.open-cluster-management.io_manifestworkreplicasets.yaml b/charts/license-proxyserver-manager/crds/work.open-cluster-management.io_manifestworkreplicasets.yaml index 40f471054..062a75857 100644 --- a/charts/license-proxyserver-manager/crds/work.open-cluster-management.io_manifestworkreplicasets.yaml +++ b/charts/license-proxyserver-manager/crds/work.open-cluster-management.io_manifestworkreplicasets.yaml @@ -302,6 +302,14 @@ spec: - type type: object type: array + feedbackScrapeType: + default: Poll + description: FeedbackScrapeType represents the way to monitor + resource, it could be Poll or Watch + enum: + - Poll + - Watch + type: string resourceIdentifier: description: |- ResourceIdentifier represents the group, resource, name and namespace of a resoure. @@ -722,6 +730,9 @@ spec: - type type: object type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map placementSummary: description: PlacementRef Summary items: @@ -750,12 +761,20 @@ spec: type: integer degraded: type: integer + desiredTotal: + description: DesiredTotal is the number of ManifestWorks + that will be created by the ManifestWorkReplicaSet. + type: integer progressing: type: integer total: description: Total number of ManifestWorks managed by the ManifestWorkReplicaSet type: integer + updated: + description: Updated is the number of clusters with updated + revision applied. + type: integer type: object type: object type: array @@ -772,11 +791,19 @@ spec: type: integer degraded: type: integer + desiredTotal: + description: DesiredTotal is the number of ManifestWorks that + will be created by the ManifestWorkReplicaSet. + type: integer progressing: type: integer total: description: Total number of ManifestWorks managed by the ManifestWorkReplicaSet type: integer + updated: + description: Updated is the number of clusters with updated revision + applied. + type: integer type: object type: object type: object diff --git a/charts/license-proxyserver-manager/templates/_helpers.tpl b/charts/license-proxyserver-manager/templates/_helpers.tpl index e5b739511..8848a6c6c 100644 --- a/charts/license-proxyserver-manager/templates/_helpers.tpl +++ b/charts/license-proxyserver-manager/templates/_helpers.tpl @@ -50,13 +50,6 @@ app.kubernetes.io/name: {{ include "license-proxyserver-manager.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} -{{/* -Addon manager namespace -*/}} -{{- define "license-proxyserver-manager.namespace" -}} -{{ ternary .Release.Namespace (required "A valid .Values.addonManagerNamespace is required!" .Values.addonManagerNamespace) (empty .Values.kubeconfigSecretName) }} -{{- end }} - {{/* Returns whether the OpenShift distribution is used */}} diff --git a/charts/license-proxyserver-manager/templates/k8s/cluster_role.yaml b/charts/license-proxyserver-manager/templates/cluster_role.yaml similarity index 97% rename from charts/license-proxyserver-manager/templates/k8s/cluster_role.yaml rename to charts/license-proxyserver-manager/templates/cluster_role.yaml index 84849345d..0a5fea87a 100644 --- a/charts/license-proxyserver-manager/templates/k8s/cluster_role.yaml +++ b/charts/license-proxyserver-manager/templates/cluster_role.yaml @@ -1,5 +1,3 @@ -{{- if not .Values.kubeconfigSecretName }} - kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: @@ -47,5 +45,3 @@ rules: - apiGroups: ["addon.open-cluster-management.io"] resources: ["managedclusteraddons/status"] verbs: ["update", "patch"] - -{{- end }} diff --git a/charts/license-proxyserver-manager/templates/k8s/cluster_role_binding.yaml b/charts/license-proxyserver-manager/templates/cluster_role_binding.yaml similarity index 87% rename from charts/license-proxyserver-manager/templates/k8s/cluster_role_binding.yaml rename to charts/license-proxyserver-manager/templates/cluster_role_binding.yaml index 85ab105cd..84e7b7cac 100644 --- a/charts/license-proxyserver-manager/templates/k8s/cluster_role_binding.yaml +++ b/charts/license-proxyserver-manager/templates/cluster_role_binding.yaml @@ -1,5 +1,3 @@ -{{- if not .Values.kubeconfigSecretName }} - apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: @@ -12,5 +10,3 @@ subjects: - kind: ServiceAccount name: license-proxyserver-manager namespace: {{ .Release.Namespace }} - -{{- end }} diff --git a/charts/license-proxyserver-manager/templates/deployment.yaml b/charts/license-proxyserver-manager/templates/deployment.yaml index 06e238d49..2faa93d57 100644 --- a/charts/license-proxyserver-manager/templates/deployment.yaml +++ b/charts/license-proxyserver-manager/templates/deployment.yaml @@ -56,7 +56,7 @@ spec: fieldRef: fieldPath: metadata.namespace - name: NAMESPACE - value: {{ include "license-proxyserver-manager.namespace" . }} + value: {{ .Release.Namespace }} {{- if eq "true" ( include "distro.openshift" . ) }} securityContext: {{- toYaml (omit .Values.securityContext "runAsUser" "runAsGroup" "fsGroup" "supplementalGroups") | nindent 12 }} diff --git a/charts/license-proxyserver-manager/templates/k8s/addon.yaml b/charts/license-proxyserver-manager/templates/k8s/addon.yaml deleted file mode 100644 index 3a154cb93..000000000 --- a/charts/license-proxyserver-manager/templates/k8s/addon.yaml +++ /dev/null @@ -1,15 +0,0 @@ -{{- if not .Values.kubeconfigSecretName }} - -{{- $restpl := $.Files.Get "common/addon/clustermanagementaddon.yaml" }} -{{ tpl $restpl $ }} ---- -{{- $restpl := $.Files.Get "common/addon/clustersetbinding.yaml" }} -{{ tpl $restpl $ }} ---- -{{- $restpl := $.Files.Get "common/addon/placement.yaml" }} -{{ tpl $restpl $ }} ---- -{{- $restpl := $.Files.Get "common/work-agent/perm.yaml" }} -{{ tpl $restpl $ }} - -{{- end }} diff --git a/charts/license-proxyserver-manager/templates/ocm-mc/addon.yaml b/charts/license-proxyserver-manager/templates/ocm-mc/addon.yaml deleted file mode 100644 index 79cf42d0c..000000000 --- a/charts/license-proxyserver-manager/templates/ocm-mc/addon.yaml +++ /dev/null @@ -1,52 +0,0 @@ -{{- if .Values.kubeconfigSecretName }} - -apiVersion: batch/v1 -kind: Job -metadata: - name: license-proxy-configure-addon - namespace: {{ .Release.Namespace }} - annotations: - "helm.sh/hook-weight": "2" - "helm.sh/hook": post-install,post-upgrade,post-rollback - "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded,hook-failed -spec: - ttlSecondsAfterFinished: 0 - backoffLimit: 3 - template: - spec: - automountServiceAccountToken: false - containers: - - name: kubectl - image: {{ .Values.kubectl.image }} - workingDir: /var/run/secrets/ocm - command: - - sh - - -c - - | - sleep 2; \ - kubectl --kubeconfig=auth/kubeconfig create ns {{ include "license-proxyserver-manager.namespace" $ }} || true; \ - kubectl --kubeconfig=auth/kubeconfig apply -f - <cluster-manager-hub; license-proxyserver-manager-->cluster-profile-manager; managed-serviceaccount-manager-->cluster-manager-hub; - mc-auth-manager-->multicluster-controlplane; - mc-auth-manager-->mc-profile-manager; - mc-auth-manager-->mc-serviceaccount-manager; - mc-gateway-manager-->multicluster-controlplane; - mc-gateway-manager-->mc-profile-manager; - mc-gateway-manager-->mc-serviceaccount-manager; - mc-gateway-manager-->mc-proxy-manager; - mc-profile-manager-->multicluster-controlplane; - mc-proxy-manager-->multicluster-controlplane; - mc-proxy-manager-->mc-profile-manager; - mc-fluxcd-manager-->multicluster-controlplane; - mc-fluxcd-manager-->mc-profile-manager; - mc-cluster-robot-->multicluster-controlplane; - mc-cluster-robot-->mc-auth-manager; - kube-ui-server-mc-->multicluster-controlplane; - kube-ui-server-mc-->mc-profile-manager; - mc-license-manager-->multicluster-controlplane; - mc-license-manager-->mc-profile-manager; - mc-serviceaccount-manager-->multicluster-controlplane; - mc-serviceaccount-manager-->mc-profile-manager; - multicluster-controlplane-->multicluster-ingress-reader; - multicluster-ingress-reader-->ingress-nginx-mc; kubestash-->license-proxyserver; stash-opscenter-->stash; stash-opscenter-->panopticon; diff --git a/hack/scripts/import-crds.sh b/hack/scripts/import-crds.sh index f1c13db43..35cb03a47 100755 --- a/hack/scripts/import-crds.sh +++ b/hack/scripts/import-crds.sh @@ -28,7 +28,7 @@ KUBEOPS_PETSET_TAG=${KUBEOPS_PETSET_TAG:-v0.0.16} KUBERNETES_SIGS_GATEWAY_API_TAG=${KUBERNETES_SIGS_GATEWAY_API_TAG:-v1.4.1} KUBESTASH_APIMACHINERY_TAG=${KUBESTASH_APIMACHINERY_TAG:-v0.23.0} KUBEVAULT_APIMACHINERY_TAG=${KUBEVAULT_APIMACHINERY_TAG:-v0.23.0} -OPEN_CLUSTER_MANAGEMENT_IO_API_TAG=${OPEN_CLUSTER_MANAGEMENT_IO_API_TAG:-v1.1.0} +OPEN_CLUSTER_MANAGEMENT_IO_API_TAG=${OPEN_CLUSTER_MANAGEMENT_IO_API_TAG:-v1.2.0} PROMETHEUS_OPERATOR_PROMETHEUS_OPERATOR=${PROMETHEUS_OPERATOR_PROMETHEUS_OPERATOR:-v0.87.1} X_HELM_APIMACHINERY_TAG=${X_HELM_APIMACHINERY_TAG:-v0.0.18}