diff --git a/bundle.Dockerfile b/bundle.Dockerfile index 9751c54..06e44cf 100644 --- a/bundle.Dockerfile +++ b/bundle.Dockerfile @@ -5,7 +5,8 @@ LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1 LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/ LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/ LABEL operators.operatorframework.io.bundle.package.v1=wandb-operator -LABEL operators.operatorframework.io.bundle.channels.v1=alpha +LABEL operators.operatorframework.io.bundle.channels.v1=stable +LABEL operators.operatorframework.io.bundle.channel.default.v1=stable LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.37.0 LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1 LABEL operators.operatorframework.io.metrics.project_layout=go.kubebuilder.io/v3 @@ -15,6 +16,8 @@ LABEL operators.operatorframework.io.test.mediatype.v1=scorecard+v1 LABEL operators.operatorframework.io.test.config.v1=tests/scorecard/ # Copy files to locations specified by labels. -COPY bundle/manifests /manifests/ -COPY bundle/metadata /metadata/ -COPY bundle/tests/scorecard /tests/scorecard/ +COPY ./manifests /manifests/ +COPY ./metadata /metadata/ +COPY ./tests/scorecard /tests/scorecard/ + +LABEL com.redhat.openshift.versions=v4.12 diff --git a/bundle/ci.yaml b/bundle/ci.yaml new file mode 100644 index 0000000..b8f04d8 --- /dev/null +++ b/bundle/ci.yaml @@ -0,0 +1,8 @@ +--- +# Use `replaces-mode` or `semver-mode`. Once you switch to `semver-mode`, there is no easy way back. +updateGraph: replaces-mode +reviewers: + - danielpanzella + - jsbroks + - abhinavg6 + - velotioaastha \ No newline at end of file diff --git a/bundle/manifests/wandb-operator-manager_rbac.authorization.k8s.io_v1_clusterrole.yaml b/bundle/manifests/wandb-operator-manager_rbac.authorization.k8s.io_v1_clusterrole.yaml new file mode 100644 index 0000000..0a1f815 --- /dev/null +++ b/bundle/manifests/wandb-operator-manager_rbac.authorization.k8s.io_v1_clusterrole.yaml @@ -0,0 +1,22 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + labels: + app.kubernetes.io/managed-by: olm + app.kubernetes.io/name: wandb-operator + app.kubernetes.io/part-of: wandb-operator + name: wandb-operator-manager-role +rules: + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + - clusterrolebindings + verbs: + - create + - delete + - get + - list + - patch + - update + - watch diff --git a/bundle/manifests/wandb-operator-manager_rbac.authorization.k8s.io_v1_clusterrolebinding.yaml b/bundle/manifests/wandb-operator-manager_rbac.authorization.k8s.io_v1_clusterrolebinding.yaml new file mode 100644 index 0000000..7ce6103 --- /dev/null +++ b/bundle/manifests/wandb-operator-manager_rbac.authorization.k8s.io_v1_clusterrolebinding.yaml @@ -0,0 +1,16 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + labels: + app.kubernetes.io/managed-by: olm + app.kubernetes.io/name: wandb-operator + app.kubernetes.io/part-of: wandb-operator + name: wandb-operator-manager-rolebinding +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: wandb-operator-manager-role +subjects: +- kind: ServiceAccount + name: operator-controller-manager + namespace: wandb-system diff --git a/bundle/manifests/operator.clusterserviceversion.yaml b/bundle/manifests/wandb-operator.clusterserviceversion.yaml similarity index 85% rename from bundle/manifests/operator.clusterserviceversion.yaml rename to bundle/manifests/wandb-operator.clusterserviceversion.yaml index 8421d3b..3de6a71 100644 --- a/bundle/manifests/operator.clusterserviceversion.yaml +++ b/bundle/manifests/wandb-operator.clusterserviceversion.yaml @@ -2,6 +2,13 @@ apiVersion: operators.coreos.com/v1alpha1 kind: ClusterServiceVersion metadata: annotations: + features.operators.openshift.io/disconnected: "true" + features.operators.openshift.io/fips-compliant: "false" + features.operators.openshift.io/proxy-aware: "false" + features.operators.openshift.io/tls-profiles: "false" + features.operators.openshift.io/token-auth-aws: "false" + features.operators.openshift.io/token-auth-azure: "false" + features.operators.openshift.io/token-auth-gcp: "false" alm-examples: |- [ { @@ -11,7 +18,7 @@ metadata: "labels": { "app.kubernetes.io/created-by": "wandb-operator", "app.kubernetes.io/instance": "weightsandbiases-sample", - "app.kubernetes.io/managed-by": "kustomize", + "app.kubernetes.io/managed-by": "olm", "app.kubernetes.io/name": "weightsandbiases", "app.kubernetes.io/part-of": "wandb-operator" }, @@ -23,8 +30,11 @@ metadata: capabilities: Basic Install categories: "AI/Machine Learning,Developer Tools" certified: "false" + createdAt: "2024-10-10T14:46:54Z" + support: WeightsAndBiases repository: https://github.com/wandb/operator - containerImage: wandb/controller:latest + containerImage: quay.io/wandb_tools/wandb-k8s-operator:1.0.0 + operatorframework.io/suggested-namespace: wandb-system description: "Operator for Weights and Biases, enabling seamless integration and management of machine learning experiments in Kubernetes environments." name: wandb-operator.v1.0.0 namespace: placeholder @@ -52,6 +62,14 @@ spec: spec: clusterPermissions: - rules: + - apiGroups: + - security.openshift.io + resources: + - securitycontextconstraints + resourceNames: + - privileged + verbs: + - use - apiGroups: - "" resources: @@ -66,20 +84,33 @@ spec: - delete - get - list + - patch - update - watch - apiGroups: - "" resources: - namespaces + - namespaces/status - nodes + - nodes/metrics + - nodes/spec + - nodes/stats + - nodes/proxy - pods - pods/log + - pods/status - serviceaccounts - services + - endpoints + - ingresses + - resourcequotas + - replicationcontrollers + - replicationcontrollers/status verbs: - get - list + - watch - apiGroups: - apps resources: @@ -95,6 +126,7 @@ spec: - list - update - watch + - patch - apiGroups: - apps resources: @@ -131,7 +163,7 @@ spec: - patch - update - apiGroups: - - autoscaling/v2 + - autoscaling resources: - horizontalpodautoscalers verbs: @@ -141,6 +173,38 @@ spec: - list - update - watch + - apiGroups: + - batch + resources: + - cronjobs + - jobs + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: + - events.k8s.io + resources: + - events + verbs: + - watch + - list + - apiGroups: + - extensions + resources: + - daemonsets + - deployments + - ingresses + - replicasets + - ingresses/status + verbs: + - get + - list + - watch - apiGroups: - networking.k8s.io resources: @@ -151,8 +215,17 @@ spec: - delete - get - list + - patch - update - watch + - apiGroups: + - networking.k8s.io + resources: + - ingresses/status + verbs: + - get + - list + - watch - apiGroups: - rbac.authorization.k8s.io resources: @@ -165,15 +238,19 @@ spec: - list - update - watch + - nonResourceURLs: + - /metrics + verbs: + - get serviceAccountName: operator-controller-manager deployments: - label: app.kubernetes.io/component: manager - app.kubernetes.io/created-by: operator + app.kubernetes.io/created-by: wandb-operator app.kubernetes.io/instance: controller-manager - app.kubernetes.io/managed-by: kustomize - app.kubernetes.io/name: deployment - app.kubernetes.io/part-of: operator + app.kubernetes.io/managed-by: olm + app.kubernetes.io/name: wandb-operator + app.kubernetes.io/part-of: wandb-operator control-plane: controller-manager name: operator-controller-manager spec: @@ -199,7 +276,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.serviceAccountName - image: wandb/controller:latest + image: quay.io/wandb_tools/wandb-k8s-operator:1.0.0 livenessProbe: httpGet: path: /healthz @@ -287,8 +364,8 @@ spec: maintainers: - email: abhinav.garg@domain.com name: Abhinav Garg - maturity: alpha - minKubeVersion: 1.23.0 + maturity: stable + minKubeVersion: 1.25.0 provider: name: Weights & Biases url: https://wandb.ai diff --git a/bundle/metadata/annotations.yaml b/bundle/metadata/annotations.yaml index af6511b..1cd7db6 100644 --- a/bundle/metadata/annotations.yaml +++ b/bundle/metadata/annotations.yaml @@ -1,10 +1,12 @@ annotations: + com.redhat.openshift.versions: v4.12 # Core bundle annotations. operators.operatorframework.io.bundle.mediatype.v1: registry+v1 operators.operatorframework.io.bundle.manifests.v1: manifests/ operators.operatorframework.io.bundle.metadata.v1: metadata/ operators.operatorframework.io.bundle.package.v1: wandb-operator - operators.operatorframework.io.bundle.channels.v1: alpha + operators.operatorframework.io.bundle.channels.v1: stable + operators.operatorframework.io.bundle.channel.default.v1: stable operators.operatorframework.io.metrics.builder: operator-sdk-v1.37.0 operators.operatorframework.io.metrics.mediatype.v1: metrics+v1 operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v3