diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9716196..ee4f85e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,17 +1,21 @@ name: Release # Builds and publishes the operator container image and the Helm chart to -# GitHub Container Registry (GHCR / GitHub Packages). +# GitHub Container Registry (GHCR / GitHub Packages), and creates the matching +# GitHub Release. # -# * workflow_dispatch -> manual snapshot, same as a push to main. +# * push tag v* -> tagged release: image + chart + GitHub Release. +# * workflow_dispatch -> manual build/publish of image + chart (no GitHub Release). on: + push: + tags: ["v*"] workflow_dispatch: inputs: version: - description: "Version to release" + description: "Version to release (without the leading v)" required: true - default: "0.0.0" + default: "0.1.2" concurrency: group: release-${{ github.ref }} @@ -40,8 +44,16 @@ jobs: id: compute run: | set -eu - echo "chart_version=${{ inputs.version }}" >> "$GITHUB_OUTPUT" - echo "image_tag=v${{ inputs.version }}" >> "$GITHUB_OUTPUT" + if [ "${{ github.ref_type }}" = "tag" ]; then + TAG="${{ github.ref_name }}" # e.g. v0.1.2 + CHART_VERSION="${TAG#v}" # 0.1.2 (chart/app versions are semver, no leading v) + IMAGE_TAG="$TAG" # v0.1.2 + else + CHART_VERSION="${{ inputs.version }}" + IMAGE_TAG="v${{ inputs.version }}" + fi + echo "chart_version=$CHART_VERSION" >> "$GITHUB_OUTPUT" + echo "image_tag=$IMAGE_TAG" >> "$GITHUB_OUTPUT" echo "is_release=true" >> "$GITHUB_OUTPUT" image: @@ -128,7 +140,7 @@ jobs: release: name: GitHub Release needs: [versions, chart] - if: needs.versions.outputs.is_release == 'true' + if: github.ref_type == 'tag' runs-on: hyperbytedb-operator-controller steps: - uses: actions/download-artifact@v4 @@ -138,6 +150,8 @@ jobs: - name: Create GitHub Release uses: softprops/action-gh-release@v2 with: + tag_name: ${{ github.ref_name }} + name: ${{ github.ref_name }} generate_release_notes: true files: hyperbytedb-operator-*.tgz body: | diff --git a/README.md b/README.md index b059170..3955e95 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ helm install hyperbytedb-operator \ ```sh helm install hyperbytedb-operator \ oci://ghcr.io/hyperbyte-cloud/charts/hyperbytedb-operator \ - --version 0.1.0 \ + --version 0.1.2 \ --namespace hyperbytedb-operator-system \ --create-namespace ``` @@ -92,9 +92,9 @@ explicitly: ```sh kubectl delete crd \ - hyperbytedbclusters.hyperbytedb.hyperbytedb.io \ - hyperbytedbbackups.hyperbytedb.hyperbytedb.io \ - hyperbytedbrestores.hyperbytedb.hyperbytedb.io + hyperbytedbclusters.hyperbytedb.hyperbyte.cloud \ + hyperbytedbbackups.hyperbytedb.hyperbyte.cloud \ + hyperbytedbrestores.hyperbytedb.hyperbyte.cloud ``` ### Install from source (development) @@ -113,7 +113,7 @@ helm install hyperbytedb-operator dist/chart \ ## Deploy a Cluster ```yaml -apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 +apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbCluster metadata: name: my-cluster diff --git a/api/v1alpha1/groupversion_info.go b/api/v1alpha1/groupversion_info.go index f9d69ff..bb72d8a 100644 --- a/api/v1alpha1/groupversion_info.go +++ b/api/v1alpha1/groupversion_info.go @@ -16,7 +16,7 @@ limitations under the License. // Package v1alpha1 contains API Schema definitions for the hyperbytedb v1alpha1 API group. // +kubebuilder:object:generate=true -// +groupName=hyperbytedb.hyperbytedb.io +// +groupName=hyperbytedb.hyperbyte.cloud package v1alpha1 import ( @@ -26,7 +26,7 @@ import ( var ( // GroupVersion is group version used to register these objects. - GroupVersion = schema.GroupVersion{Group: "hyperbytedb.hyperbytedb.io", Version: "v1alpha1"} + GroupVersion = schema.GroupVersion{Group: "hyperbytedb.hyperbyte.cloud", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} diff --git a/api/v1alpha1/hyperbytedbcluster_webhook.go b/api/v1alpha1/hyperbytedbcluster_webhook.go index d29cd38..267b086 100644 --- a/api/v1alpha1/hyperbytedbcluster_webhook.go +++ b/api/v1alpha1/hyperbytedbcluster_webhook.go @@ -36,7 +36,7 @@ func SetupHyperbytedbClusterWebhookWithManager(mgr ctrl.Manager) error { Complete() } -// +kubebuilder:webhook:path=/mutate-hyperbytedb-hyperbytedb-io-v1alpha1-hyperbytedbcluster,mutating=true,failurePolicy=fail,sideEffects=None,groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbclusters,verbs=create;update,versions=v1alpha1,name=mhyperbytedbcluster.kb.io,admissionReviewVersions=v1 +// +kubebuilder:webhook:path=/mutate-hyperbytedb-hyperbyte-cloud-v1alpha1-hyperbytedbcluster,mutating=true,failurePolicy=fail,sideEffects=None,groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbclusters,verbs=create;update,versions=v1alpha1,name=mhyperbytedbcluster.kb.io,admissionReviewVersions=v1 func (w *HyperbytedbClusterWebhook) Default(_ context.Context, obj *HyperbytedbCluster) error { if obj.Spec.Replicas == nil { @@ -89,7 +89,7 @@ func (w *HyperbytedbClusterWebhook) Default(_ context.Context, obj *HyperbytedbC return nil } -// +kubebuilder:webhook:path=/validate-hyperbytedb-hyperbytedb-io-v1alpha1-hyperbytedbcluster,mutating=false,failurePolicy=fail,sideEffects=None,groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbclusters,verbs=create;update,versions=v1alpha1,name=vhyperbytedbcluster.kb.io,admissionReviewVersions=v1 +// +kubebuilder:webhook:path=/validate-hyperbytedb-hyperbyte-cloud-v1alpha1-hyperbytedbcluster,mutating=false,failurePolicy=fail,sideEffects=None,groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbclusters,verbs=create;update,versions=v1alpha1,name=vhyperbytedbcluster.kb.io,admissionReviewVersions=v1 func (w *HyperbytedbClusterWebhook) ValidateCreate(_ context.Context, obj *HyperbytedbCluster) (admission.Warnings, error) { return validateCluster(obj) diff --git a/config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbbackups.yaml b/config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbbackups.yaml similarity index 98% rename from config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbbackups.yaml rename to config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbbackups.yaml index 6781e96..f3ad17b 100644 --- a/config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbbackups.yaml +++ b/config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbbackups.yaml @@ -4,9 +4,9 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbbackups.hyperbytedb.hyperbytedb.io + name: hyperbytedbbackups.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbBackup listKind: HyperbytedbBackupList diff --git a/config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbclusters.yaml b/config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbclusters.yaml similarity index 99% rename from config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbclusters.yaml rename to config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbclusters.yaml index 86aab52..e28f9e4 100644 --- a/config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbclusters.yaml +++ b/config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbclusters.yaml @@ -4,9 +4,9 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbclusters.hyperbytedb.hyperbytedb.io + name: hyperbytedbclusters.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbCluster listKind: HyperbytedbClusterList diff --git a/config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbrestores.yaml b/config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbrestores.yaml similarity index 98% rename from config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbrestores.yaml rename to config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbrestores.yaml index 4ac13a4..6a238a9 100644 --- a/config/crd/bases/hyperbytedb.hyperbytedb.io_hyperbytedbrestores.yaml +++ b/config/crd/bases/hyperbytedb.hyperbyte.cloud_hyperbytedbrestores.yaml @@ -4,9 +4,9 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbrestores.hyperbytedb.hyperbytedb.io + name: hyperbytedbrestores.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbRestore listKind: HyperbytedbRestoreList diff --git a/config/crd/kustomization.yaml b/config/crd/kustomization.yaml index 3c15a8d..4423276 100644 --- a/config/crd/kustomization.yaml +++ b/config/crd/kustomization.yaml @@ -2,9 +2,9 @@ # since it depends on service name and namespace that are out of this kustomize package. # It should be run by config/default resources: -- bases/hyperbytedb.hyperbytedb.io_hyperbytedbclusters.yaml -- bases/hyperbytedb.hyperbytedb.io_hyperbytedbbackups.yaml -- bases/hyperbytedb.hyperbytedb.io_hyperbytedbrestores.yaml +- bases/hyperbytedb.hyperbyte.cloud_hyperbytedbclusters.yaml +- bases/hyperbytedb.hyperbyte.cloud_hyperbytedbbackups.yaml +- bases/hyperbytedb.hyperbyte.cloud_hyperbytedbrestores.yaml # +kubebuilder:scaffold:crdkustomizeresource patches: diff --git a/config/rbac/hyperbytedbbackup_admin_role.yaml b/config/rbac/hyperbytedbbackup_admin_role.yaml index fc896b3..63dae1c 100644 --- a/config/rbac/hyperbytedbbackup_admin_role.yaml +++ b/config/rbac/hyperbytedbbackup_admin_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants full permissions ('*') over hyperbytedb.hyperbytedb.io. +# Grants full permissions ('*') over hyperbytedb.hyperbyte.cloud. # This role is intended for users authorized to modify roles and bindings within the cluster, # enabling them to delegate specific permissions to other users or groups as needed. @@ -14,13 +14,13 @@ metadata: name: hyperbytedbbackup-admin-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: diff --git a/config/rbac/hyperbytedbbackup_editor_role.yaml b/config/rbac/hyperbytedbbackup_editor_role.yaml index d78d864..0858ef5 100644 --- a/config/rbac/hyperbytedbbackup_editor_role.yaml +++ b/config/rbac/hyperbytedbbackup_editor_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants permissions to create, update, and delete resources within the hyperbytedb.hyperbytedb.io. +# Grants permissions to create, update, and delete resources within the hyperbytedb.hyperbyte.cloud. # This role is intended for users who need to manage these resources # but should not control RBAC or manage permissions for others. @@ -14,7 +14,7 @@ metadata: name: hyperbytedbbackup-editor-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: @@ -26,7 +26,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: diff --git a/config/rbac/hyperbytedbbackup_viewer_role.yaml b/config/rbac/hyperbytedbbackup_viewer_role.yaml index b016a12..3902d15 100644 --- a/config/rbac/hyperbytedbbackup_viewer_role.yaml +++ b/config/rbac/hyperbytedbbackup_viewer_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants read-only access to hyperbytedb.hyperbytedb.io resources. +# Grants read-only access to hyperbytedb.hyperbyte.cloud resources. # This role is intended for users who need visibility into these resources # without permissions to modify them. It is ideal for monitoring purposes and limited-access viewing. @@ -14,7 +14,7 @@ metadata: name: hyperbytedbbackup-viewer-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: @@ -22,7 +22,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: diff --git a/config/rbac/hyperbytedbcluster_admin_role.yaml b/config/rbac/hyperbytedbcluster_admin_role.yaml index 858b748..0281060 100644 --- a/config/rbac/hyperbytedbcluster_admin_role.yaml +++ b/config/rbac/hyperbytedbcluster_admin_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants full permissions ('*') over hyperbytedb.hyperbytedb.io. +# Grants full permissions ('*') over hyperbytedb.hyperbyte.cloud. # This role is intended for users authorized to modify roles and bindings within the cluster, # enabling them to delegate specific permissions to other users or groups as needed. @@ -14,13 +14,13 @@ metadata: name: hyperbytedbcluster-admin-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: diff --git a/config/rbac/hyperbytedbcluster_editor_role.yaml b/config/rbac/hyperbytedbcluster_editor_role.yaml index 64647d2..f175fd0 100644 --- a/config/rbac/hyperbytedbcluster_editor_role.yaml +++ b/config/rbac/hyperbytedbcluster_editor_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants permissions to create, update, and delete resources within the hyperbytedb.hyperbytedb.io. +# Grants permissions to create, update, and delete resources within the hyperbytedb.hyperbyte.cloud. # This role is intended for users who need to manage these resources # but should not control RBAC or manage permissions for others. @@ -14,7 +14,7 @@ metadata: name: hyperbytedbcluster-editor-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: @@ -26,7 +26,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: diff --git a/config/rbac/hyperbytedbcluster_viewer_role.yaml b/config/rbac/hyperbytedbcluster_viewer_role.yaml index b173027..e08b9d8 100644 --- a/config/rbac/hyperbytedbcluster_viewer_role.yaml +++ b/config/rbac/hyperbytedbcluster_viewer_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants read-only access to hyperbytedb.hyperbytedb.io resources. +# Grants read-only access to hyperbytedb.hyperbyte.cloud resources. # This role is intended for users who need visibility into these resources # without permissions to modify them. It is ideal for monitoring purposes and limited-access viewing. @@ -14,7 +14,7 @@ metadata: name: hyperbytedbcluster-viewer-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: @@ -22,7 +22,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: diff --git a/config/rbac/hyperbytedbrestore_admin_role.yaml b/config/rbac/hyperbytedbrestore_admin_role.yaml index fca0296..e2d25c2 100644 --- a/config/rbac/hyperbytedbrestore_admin_role.yaml +++ b/config/rbac/hyperbytedbrestore_admin_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants full permissions ('*') over hyperbytedb.hyperbytedb.io. +# Grants full permissions ('*') over hyperbytedb.hyperbyte.cloud. # This role is intended for users authorized to modify roles and bindings within the cluster, # enabling them to delegate specific permissions to other users or groups as needed. @@ -14,13 +14,13 @@ metadata: name: hyperbytedbrestore-admin-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: diff --git a/config/rbac/hyperbytedbrestore_editor_role.yaml b/config/rbac/hyperbytedbrestore_editor_role.yaml index 36c8f6d..545366c 100644 --- a/config/rbac/hyperbytedbrestore_editor_role.yaml +++ b/config/rbac/hyperbytedbrestore_editor_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants permissions to create, update, and delete resources within the hyperbytedb.hyperbytedb.io. +# Grants permissions to create, update, and delete resources within the hyperbytedb.hyperbyte.cloud. # This role is intended for users who need to manage these resources # but should not control RBAC or manage permissions for others. @@ -14,7 +14,7 @@ metadata: name: hyperbytedbrestore-editor-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: @@ -26,7 +26,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: diff --git a/config/rbac/hyperbytedbrestore_viewer_role.yaml b/config/rbac/hyperbytedbrestore_viewer_role.yaml index cd5f8c7..9969047 100644 --- a/config/rbac/hyperbytedbrestore_viewer_role.yaml +++ b/config/rbac/hyperbytedbrestore_viewer_role.yaml @@ -1,7 +1,7 @@ # This rule is not used by the project hyperbytedb-operator itself. # It is provided to allow the cluster admin to help manage permissions for users. # -# Grants read-only access to hyperbytedb.hyperbytedb.io resources. +# Grants read-only access to hyperbytedb.hyperbyte.cloud resources. # This role is intended for users who need visibility into these resources # without permissions to modify them. It is ideal for monitoring purposes and limited-access viewing. @@ -14,7 +14,7 @@ metadata: name: hyperbytedbrestore-viewer-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: @@ -22,7 +22,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: diff --git a/config/rbac/role.yaml b/config/rbac/role.yaml index 853d0a6..93256be 100644 --- a/config/rbac/role.yaml +++ b/config/rbac/role.yaml @@ -74,7 +74,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups - hyperbytedbclusters @@ -88,7 +88,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/finalizers - hyperbytedbclusters/finalizers @@ -96,7 +96,7 @@ rules: verbs: - update - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status - hyperbytedbclusters/status diff --git a/config/samples/hyperbytedb_v1alpha1_hyperbytedbbackup.yaml b/config/samples/hyperbytedb_v1alpha1_hyperbytedbbackup.yaml index 570d964..6963e46 100644 --- a/config/samples/hyperbytedb_v1alpha1_hyperbytedbbackup.yaml +++ b/config/samples/hyperbytedb_v1alpha1_hyperbytedbbackup.yaml @@ -1,4 +1,4 @@ -apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 +apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbBackup metadata: name: hyperbytedb-daily-backup diff --git a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_cluster.yaml b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_cluster.yaml index 373b83a..b99186e 100644 --- a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_cluster.yaml +++ b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_cluster.yaml @@ -1,4 +1,4 @@ -apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 +apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbCluster metadata: name: hyperbytedb-cluster diff --git a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_ha.yaml b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_ha.yaml index e52fd0c..02a5dc8 100644 --- a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_ha.yaml +++ b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_ha.yaml @@ -1,4 +1,4 @@ -apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 +apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbCluster metadata: name: hyperbytedb-ha diff --git a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_single.yaml b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_single.yaml index 821aa06..94a740d 100644 --- a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_single.yaml +++ b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_single.yaml @@ -1,4 +1,4 @@ -apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 +apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbCluster metadata: name: hyperbytedb-single diff --git a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_tls.yaml b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_tls.yaml index fd2eee9..ad6f2fb 100644 --- a/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_tls.yaml +++ b/config/samples/hyperbytedb_v1alpha1_hyperbytedbcluster_tls.yaml @@ -1,4 +1,4 @@ -apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 +apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbCluster metadata: name: hyperbytedb-tls diff --git a/config/samples/hyperbytedb_v1alpha1_hyperbytedbrestore.yaml b/config/samples/hyperbytedb_v1alpha1_hyperbytedbrestore.yaml index 7c57664..db473e1 100644 --- a/config/samples/hyperbytedb_v1alpha1_hyperbytedbrestore.yaml +++ b/config/samples/hyperbytedb_v1alpha1_hyperbytedbrestore.yaml @@ -1,4 +1,4 @@ -apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 +apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbRestore metadata: name: hyperbytedb-restore-latest diff --git a/config/webhook/manifests.yaml b/config/webhook/manifests.yaml index 58d5b53..0b56ebe 100644 --- a/config/webhook/manifests.yaml +++ b/config/webhook/manifests.yaml @@ -10,12 +10,12 @@ webhooks: service: name: webhook-service namespace: system - path: /mutate-hyperbytedb-hyperbytedb-io-v1alpha1-hyperbytedbcluster + path: /mutate-hyperbytedb-hyperbyte-cloud-v1alpha1-hyperbytedbcluster failurePolicy: Fail name: mhyperbytedbcluster.kb.io rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud apiVersions: - v1alpha1 operations: @@ -36,12 +36,12 @@ webhooks: service: name: webhook-service namespace: system - path: /validate-hyperbytedb-hyperbytedb-io-v1alpha1-hyperbytedbcluster + path: /validate-hyperbytedb-hyperbyte-cloud-v1alpha1-hyperbytedbcluster failurePolicy: Fail name: vhyperbytedbcluster.kb.io rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud apiVersions: - v1alpha1 operations: diff --git a/dist/chart/Chart.yaml b/dist/chart/Chart.yaml index eec62e3..9b9b610 100644 --- a/dist/chart/Chart.yaml +++ b/dist/chart/Chart.yaml @@ -7,8 +7,8 @@ type: application # release workflow (.github/workflows/release.yml) stamps them with the git # tag (or a `0.0.0-sha.` snapshot for main branch builds) when the # chart is packaged and pushed to ghcr.io. -version: 0.1.0 -appVersion: "0.1.0" +version: 0.1.2 +appVersion: "0.1.2" home: https://hyperbyte-cloud.github.io/hyperbytedb/ sources: diff --git a/dist/chart/templates/crd/hyperbytedbbackups.hyperbytedb.hyperbytedb.io.yaml b/dist/chart/templates/crd/hyperbytedbbackups.hyperbytedb.hyperbyte.cloud.yaml similarity index 98% rename from dist/chart/templates/crd/hyperbytedbbackups.hyperbytedb.hyperbytedb.io.yaml rename to dist/chart/templates/crd/hyperbytedbbackups.hyperbytedb.hyperbyte.cloud.yaml index 3e8de5c..1095dd4 100644 --- a/dist/chart/templates/crd/hyperbytedbbackups.hyperbytedb.hyperbytedb.io.yaml +++ b/dist/chart/templates/crd/hyperbytedbbackups.hyperbytedb.hyperbyte.cloud.yaml @@ -7,9 +7,9 @@ metadata: "helm.sh/resource-policy": keep {{- end }} controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbbackups.hyperbytedb.hyperbytedb.io + name: hyperbytedbbackups.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbBackup listKind: HyperbytedbBackupList diff --git a/dist/chart/templates/crd/hyperbytedbclusters.hyperbytedb.hyperbytedb.io.yaml b/dist/chart/templates/crd/hyperbytedbclusters.hyperbytedb.hyperbyte.cloud.yaml similarity index 99% rename from dist/chart/templates/crd/hyperbytedbclusters.hyperbytedb.hyperbytedb.io.yaml rename to dist/chart/templates/crd/hyperbytedbclusters.hyperbytedb.hyperbyte.cloud.yaml index 0be6400..8fa66df 100644 --- a/dist/chart/templates/crd/hyperbytedbclusters.hyperbytedb.hyperbytedb.io.yaml +++ b/dist/chart/templates/crd/hyperbytedbclusters.hyperbytedb.hyperbyte.cloud.yaml @@ -1,13 +1,15 @@ ---- ---- +{{- if .Values.crd.enable }} apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: + {{- if .Values.crd.keep }} + "helm.sh/resource-policy": keep + {{- end }} controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbclusters.hyperbytedb.hyperbytedb.io + name: hyperbytedbclusters.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbCluster listKind: HyperbytedbClusterList @@ -3138,6 +3140,11 @@ spec: type: object flush: properties: + arrowWALEnabled: + default: true + description: Keep chDB-ready Arrow batches in an in-memory WAL + cache for zero-copy flush. + type: boolean intervalSecs: default: 10 format: int32 @@ -3219,10 +3226,6 @@ spec: type: array logging: properties: - detailedTrace: - description: Emit per-phase performance logs (write/query/flush). - Off by default. - type: boolean format: default: text enum: @@ -3238,13 +3241,6 @@ spec: - warn - error type: string - otlpEndpoint: - description: OTLP HTTP endpoint for trace export (e.g. http://alloy-logs:4318). - type: string - otlpSampleRatio: - description: Fraction of traces exported to OTLP (0.0–1.0). Default - 1.0 when OTLP is set. - type: string type: object monitoring: properties: @@ -3613,6 +3609,13 @@ spec: storageClassName: type: string type: object + walFormat: + default: bincode + description: 'WAL encoding format: "bincode" (default) or "arrow_ipc".' + enum: + - bincode + - arrow_ipc + type: string type: object tolerations: items: @@ -3985,3 +3988,4 @@ spec: storage: true subresources: status: {} +{{- end }} diff --git a/dist/chart/templates/crd/hyperbytedbrestores.hyperbytedb.hyperbytedb.io.yaml b/dist/chart/templates/crd/hyperbytedbrestores.hyperbytedb.hyperbyte.cloud.yaml similarity index 98% rename from dist/chart/templates/crd/hyperbytedbrestores.hyperbytedb.hyperbytedb.io.yaml rename to dist/chart/templates/crd/hyperbytedbrestores.hyperbytedb.hyperbyte.cloud.yaml index bc18d06..2a39f37 100644 --- a/dist/chart/templates/crd/hyperbytedbrestores.hyperbytedb.hyperbytedb.io.yaml +++ b/dist/chart/templates/crd/hyperbytedbrestores.hyperbytedb.hyperbyte.cloud.yaml @@ -7,9 +7,9 @@ metadata: "helm.sh/resource-policy": keep {{- end }} controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbrestores.hyperbytedb.hyperbytedb.io + name: hyperbytedbrestores.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbRestore listKind: HyperbytedbRestoreList diff --git a/dist/chart/templates/rbac/hyperbytedbbackup-admin-role.yaml b/dist/chart/templates/rbac/hyperbytedbbackup-admin-role.yaml index b58484b..50d8e51 100644 --- a/dist/chart/templates/rbac/hyperbytedbbackup-admin-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbbackup-admin-role.yaml @@ -10,13 +10,13 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbbackup-admin-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbbackup-editor-role.yaml b/dist/chart/templates/rbac/hyperbytedbbackup-editor-role.yaml index 77e4e6e..15b35a9 100644 --- a/dist/chart/templates/rbac/hyperbytedbbackup-editor-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbbackup-editor-role.yaml @@ -10,7 +10,7 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbbackup-editor-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: @@ -22,7 +22,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbbackup-viewer-role.yaml b/dist/chart/templates/rbac/hyperbytedbbackup-viewer-role.yaml index fde84fe..1fa0545 100644 --- a/dist/chart/templates/rbac/hyperbytedbbackup-viewer-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbbackup-viewer-role.yaml @@ -10,7 +10,7 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbbackup-viewer-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: @@ -18,7 +18,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbcluster-admin-role.yaml b/dist/chart/templates/rbac/hyperbytedbcluster-admin-role.yaml index b334ca1..0aa5e7e 100644 --- a/dist/chart/templates/rbac/hyperbytedbcluster-admin-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbcluster-admin-role.yaml @@ -10,13 +10,13 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbcluster-admin-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbcluster-editor-role.yaml b/dist/chart/templates/rbac/hyperbytedbcluster-editor-role.yaml index 0ff99f0..af5cb5f 100644 --- a/dist/chart/templates/rbac/hyperbytedbcluster-editor-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbcluster-editor-role.yaml @@ -10,7 +10,7 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbcluster-editor-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: @@ -22,7 +22,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbcluster-viewer-role.yaml b/dist/chart/templates/rbac/hyperbytedbcluster-viewer-role.yaml index 8dbf2d2..78976ab 100644 --- a/dist/chart/templates/rbac/hyperbytedbcluster-viewer-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbcluster-viewer-role.yaml @@ -10,7 +10,7 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbcluster-viewer-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: @@ -18,7 +18,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbrestore-admin-role.yaml b/dist/chart/templates/rbac/hyperbytedbrestore-admin-role.yaml index 5b58fa5..9da0b1e 100644 --- a/dist/chart/templates/rbac/hyperbytedbrestore-admin-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbrestore-admin-role.yaml @@ -10,13 +10,13 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbrestore-admin-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbrestore-editor-role.yaml b/dist/chart/templates/rbac/hyperbytedbrestore-editor-role.yaml index 925c87a..6e5aa6f 100644 --- a/dist/chart/templates/rbac/hyperbytedbrestore-editor-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbrestore-editor-role.yaml @@ -10,7 +10,7 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbrestore-editor-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: @@ -22,7 +22,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: diff --git a/dist/chart/templates/rbac/hyperbytedbrestore-viewer-role.yaml b/dist/chart/templates/rbac/hyperbytedbrestore-viewer-role.yaml index fd55188..d5d0936 100644 --- a/dist/chart/templates/rbac/hyperbytedbrestore-viewer-role.yaml +++ b/dist/chart/templates/rbac/hyperbytedbrestore-viewer-role.yaml @@ -10,7 +10,7 @@ metadata: name: {{ include "hyperbytedb-operator.resourceName" (dict "suffix" "hyperbytedbrestore-viewer-role" "context" $) }} rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: @@ -18,7 +18,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: diff --git a/dist/chart/templates/rbac/manager-role.yaml b/dist/chart/templates/rbac/manager-role.yaml index 11b1789..93d0001 100644 --- a/dist/chart/templates/rbac/manager-role.yaml +++ b/dist/chart/templates/rbac/manager-role.yaml @@ -72,7 +72,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups - hyperbytedbclusters @@ -86,7 +86,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/finalizers - hyperbytedbclusters/finalizers @@ -94,7 +94,7 @@ rules: verbs: - update - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status - hyperbytedbclusters/status diff --git a/dist/install.yaml b/dist/install.yaml index 6b14655..4ef7384 100644 --- a/dist/install.yaml +++ b/dist/install.yaml @@ -12,9 +12,9 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbbackups.hyperbytedb.hyperbytedb.io + name: hyperbytedbbackups.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbBackup listKind: HyperbytedbBackupList @@ -207,9 +207,9 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbclusters.hyperbytedb.hyperbytedb.io + name: hyperbytedbclusters.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbCluster listKind: HyperbytedbClusterList @@ -3340,6 +3340,11 @@ spec: type: object flush: properties: + arrowWALEnabled: + default: true + description: Keep chDB-ready Arrow batches in an in-memory WAL + cache for zero-copy flush. + type: boolean intervalSecs: default: 10 format: int32 @@ -3392,7 +3397,10 @@ spec: type: integer type: object image: - default: hyperbytedb:latest + description: |- + Container image reference. When set with a tag (contains ':'), used as-is. + When set without a tag, treated as the repository and combined with Version. + When empty, defaults to hyperbytedb:{Version} or hyperbytedb:latest. type: string imagePullPolicy: description: PullPolicy describes a policy for if/when to pull a container @@ -3418,10 +3426,6 @@ spec: type: array logging: properties: - detailedTrace: - description: Emit per-phase performance logs (write/query/flush). - Off by default. - type: boolean format: default: text enum: @@ -3437,13 +3441,6 @@ spec: - warn - error type: string - otlpEndpoint: - description: OTLP HTTP endpoint for trace export (e.g. http://alloy-logs:4318). - type: string - otlpSampleRatio: - description: Fraction of traces exported to OTLP (0.0–1.0). Default - 1.0 when OTLP is set. - type: string type: object monitoring: properties: @@ -3474,7 +3471,7 @@ spec: returning errors to clients. properties: enabled: - default: false + default: true description: |- When false, the operator does not create or reconcile any proxy resources. Existing proxy Deployment/Service (if any) are left alone @@ -3486,7 +3483,7 @@ spec: Set to `/health/ready` for the deeper chDB-aware readiness check. type: string holdTimeoutSecs: - default: 10 + default: 30 description: |- How long the proxy waits for a backend to come back before failing a request with 503. Bigger values mean rolling restarts are smoother but @@ -3812,6 +3809,13 @@ spec: storageClassName: type: string type: object + walFormat: + default: bincode + description: 'WAL encoding format: "bincode" (default) or "arrow_ipc".' + enum: + - bincode + - arrow_ipc + type: string type: object tolerations: items: @@ -4026,6 +4030,10 @@ spec: type: object type: array version: + description: |- + Application version. Drives the container image tag for hyperbytedb and + hyperbytedb-proxy (e.g. version "0.8.3" → hyperbytedb:v0.8.3). Changing + this field triggers a rolling upgrade. type: string type: object status: @@ -4186,9 +4194,9 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.20.1 - name: hyperbytedbrestores.hyperbytedb.hyperbytedb.io + name: hyperbytedbrestores.hyperbytedb.hyperbyte.cloud spec: - group: hyperbytedb.hyperbytedb.io + group: hyperbytedb.hyperbyte.cloud names: kind: HyperbytedbRestore listKind: HyperbytedbRestoreList @@ -4422,13 +4430,13 @@ metadata: name: hyperbytedb-operator-hyperbytedbbackup-admin-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: @@ -4443,7 +4451,7 @@ metadata: name: hyperbytedb-operator-hyperbytedbbackup-editor-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: @@ -4455,7 +4463,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: @@ -4470,7 +4478,7 @@ metadata: name: hyperbytedb-operator-hyperbytedbbackup-viewer-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups verbs: @@ -4478,7 +4486,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status verbs: @@ -4493,13 +4501,13 @@ metadata: name: hyperbytedb-operator-hyperbytedbcluster-admin-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: @@ -4514,7 +4522,7 @@ metadata: name: hyperbytedb-operator-hyperbytedbcluster-editor-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: @@ -4526,7 +4534,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: @@ -4541,7 +4549,7 @@ metadata: name: hyperbytedb-operator-hyperbytedbcluster-viewer-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters verbs: @@ -4549,7 +4557,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbclusters/status verbs: @@ -4564,13 +4572,13 @@ metadata: name: hyperbytedb-operator-hyperbytedbrestore-admin-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: - '*' - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: @@ -4585,7 +4593,7 @@ metadata: name: hyperbytedb-operator-hyperbytedbrestore-editor-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: @@ -4597,7 +4605,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: @@ -4612,7 +4620,7 @@ metadata: name: hyperbytedb-operator-hyperbytedbrestore-viewer-role rules: - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores verbs: @@ -4620,7 +4628,7 @@ rules: - list - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbrestores/status verbs: @@ -4701,7 +4709,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups - hyperbytedbclusters @@ -4715,7 +4723,7 @@ rules: - update - watch - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/finalizers - hyperbytedbclusters/finalizers @@ -4723,7 +4731,7 @@ rules: verbs: - update - apiGroups: - - hyperbytedb.hyperbytedb.io + - hyperbytedb.hyperbyte.cloud resources: - hyperbytedbbackups/status - hyperbytedbclusters/status diff --git a/internal/controller/hyperbytedbbackup_controller.go b/internal/controller/hyperbytedbbackup_controller.go index 64d6f1e..f8d0a37 100644 --- a/internal/controller/hyperbytedbbackup_controller.go +++ b/internal/controller/hyperbytedbbackup_controller.go @@ -47,9 +47,9 @@ type HyperbytedbBackupReconciler struct { Recorder record.EventRecorder } -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbbackups,verbs=get;list;watch;create;update;patch;delete -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbbackups/status,verbs=get;update;patch -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbbackups/finalizers,verbs=update +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbbackups,verbs=get;list;watch;create;update;patch;delete +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbbackups/status,verbs=get;update;patch +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbbackups/finalizers,verbs=update // +kubebuilder:rbac:groups=batch,resources=jobs,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=batch,resources=cronjobs,verbs=get;list;watch;create;update;patch;delete diff --git a/internal/controller/hyperbytedbcluster_controller.go b/internal/controller/hyperbytedbcluster_controller.go index a444a65..51df9fb 100644 --- a/internal/controller/hyperbytedbcluster_controller.go +++ b/internal/controller/hyperbytedbcluster_controller.go @@ -43,7 +43,7 @@ import ( "github.com/hyperbyte-cloud/hyperbytedb-operator/internal/hyperbytedb" ) -const clusterFinalizer = "hyperbytedb.hyperbytedb.io/finalizer" +const clusterFinalizer = "hyperbytedb.hyperbyte.cloud/finalizer" // replicationStateHealthy is the ReplicationState value reported when all // nodes are within tolerance of each other on parquet file count. @@ -57,9 +57,9 @@ type HyperbytedbClusterReconciler struct { Members *hyperbytedb.MemberManager } -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbclusters,verbs=get;list;watch;create;update;patch;delete -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbclusters/status,verbs=get;update;patch -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbclusters/finalizers,verbs=update +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbclusters,verbs=get;list;watch;create;update;patch;delete +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbclusters/status,verbs=get;update;patch +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbclusters/finalizers,verbs=update // +kubebuilder:rbac:groups=apps,resources=statefulsets,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=apps,resources=deployments,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups="",resources=services,verbs=get;list;watch;create;update;patch;delete diff --git a/internal/controller/hyperbytedbrestore_controller.go b/internal/controller/hyperbytedbrestore_controller.go index 862b59b..7b84121 100644 --- a/internal/controller/hyperbytedbrestore_controller.go +++ b/internal/controller/hyperbytedbrestore_controller.go @@ -48,11 +48,11 @@ type HyperbytedbRestoreReconciler struct { Recorder record.EventRecorder } -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbrestores,verbs=get;list;watch;create;update;patch;delete -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbrestores/status,verbs=get;update;patch -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbrestores/finalizers,verbs=update -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbclusters,verbs=get;list;watch -// +kubebuilder:rbac:groups=hyperbytedb.hyperbytedb.io,resources=hyperbytedbbackups,verbs=get;list;watch +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbrestores,verbs=get;list;watch;create;update;patch;delete +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbrestores/status,verbs=get;update;patch +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbrestores/finalizers,verbs=update +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbclusters,verbs=get;list;watch +// +kubebuilder:rbac:groups=hyperbytedb.hyperbyte.cloud,resources=hyperbytedbbackups,verbs=get;list;watch // +kubebuilder:rbac:groups=apps,resources=statefulsets,verbs=get;list;watch;update;patch // +kubebuilder:rbac:groups=batch,resources=jobs,verbs=get;list;watch;create;delete diff --git a/internal/hyperbytedb/statefulset.go b/internal/hyperbytedb/statefulset.go index adcdb80..6643c24 100644 --- a/internal/hyperbytedb/statefulset.go +++ b/internal/hyperbytedb/statefulset.go @@ -277,7 +277,7 @@ exec hyperbytedb --config /etc/hyperbytedb/config.toml serve podAnnotations := make(map[string]string) maps.Copy(podAnnotations, cluster.Spec.PodAnnotations) if configHash != "" { - podAnnotations["hyperbytedb.hyperbytedb.io/config-hash"] = configHash + podAnnotations["hyperbytedb.hyperbyte.cloud/config-hash"] = configHash } // --------------- pod spec --------------- diff --git a/test/e2e/helpers_test.go b/test/e2e/helpers_test.go index 935eb6c..6cd63ed 100644 --- a/test/e2e/helpers_test.go +++ b/test/e2e/helpers_test.go @@ -9,7 +9,7 @@ import ( ) func singleNodeCR(name string) *strings.Reader { - return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 + return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbCluster metadata: name: %s @@ -39,7 +39,7 @@ spec: } func clusterCR(name string, replicas int) *strings.Reader { - return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 + return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbCluster metadata: name: %s @@ -69,7 +69,7 @@ spec: } func backupCR(name, clusterName string) *strings.Reader { - return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 + return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbBackup metadata: name: %s @@ -85,7 +85,7 @@ spec: } func restoreCR(name, clusterName, backupName string) *strings.Reader { - return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbytedb.io/v1alpha1 + return strings.NewReader(fmt.Sprintf(`apiVersion: hyperbytedb.hyperbyte.cloud/v1alpha1 kind: HyperbytedbRestore metadata: name: %s