From 39d57f3babb25b2f20ed042e032775e66f3b4746 Mon Sep 17 00:00:00 2001 From: Harshavardhana Date: Wed, 17 Jul 2024 14:47:05 -0700 Subject: [PATCH 1/2] fix: release build issues - remove incorrect 'go mod tidy' - remove unnecessary 'go mod download' --- .goreleaser.yml | 2 -- UPGRADE.md | 14 ++++---------- pkg/build-constants.go | 2 -- sidecar/.goreleaser.yml | 4 +--- sidecar/Makefile | 2 +- sidecar/pkg/build-constants.go | 2 -- 6 files changed, 6 insertions(+), 20 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 3ba33ed4207..1980e5be2f6 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -14,8 +14,6 @@ release: before: hooks: - make clean - - go mod tidy -compat=1.21.8 - - go mod download builds: - goos: diff --git a/UPGRADE.md b/UPGRADE.md index c5ce0ec43f4..b2b5820a7db 100644 --- a/UPGRADE.md +++ b/UPGRADE.md @@ -11,15 +11,8 @@ rolling restart for a MinIO Tenant, for example when the MinIO Operator is upgra This release introduces a readiness probe to prevent kubernetes from routing traffic to a MinIO pod that is not ready -> ⚠️ Upgrading to v6.0.0 will cause all pods to restart upon upgrade. - -v6.0.1 ---- - -This release includes improvements to reduce the number of restarts to MinIO including when changes to environment -variables happen, the operator will perform an in-place update to the MinIO pods without restarting them. - -> ⚠️ Upgrading to v6.0.1 will cause all pods to restart upon upgrade due to new sidecar image. +> [!IMPORTANT] +> Upgrading to v6.0.0 will cause all pods to restart upon upgrade. v5.0.0 --- @@ -39,7 +32,8 @@ left running as stand-alone deployments/statefulset with no connection to the Tenant CR itself, this means that if the Tenant CR is deleted, this will not cascade to these deployments. -> ⚠️ It is recommended to create a yaml file to manage these deployments subsequently. +> [!IMPORTANT] +> It is recommended to create a yaml file to manage these deployments subsequently. To back up these deployments: diff --git a/pkg/build-constants.go b/pkg/build-constants.go index 06dfbf4665d..65ab34306e6 100644 --- a/pkg/build-constants.go +++ b/pkg/build-constants.go @@ -27,6 +27,4 @@ var ( CommitID = "(dev)" // ShortCommitID - first 12 characters from CommitID. ShortCommitID = "(dev)" - // MPSecret - MP Secret - MPSecret = "(dev)" ) diff --git a/sidecar/.goreleaser.yml b/sidecar/.goreleaser.yml index f0210d9ca82..73f4d756c3e 100644 --- a/sidecar/.goreleaser.yml +++ b/sidecar/.goreleaser.yml @@ -14,8 +14,6 @@ release: before: hooks: - make clean - - go mod tidy -compat=1.21.8 - - go mod download builds: - id: minio-operator-sidecar @@ -31,7 +29,7 @@ builds: binary: minio-operator-sidecar main: ./cmd/sidecar/ ldflags: - - -s -w -X github.com/minio/operator/pkg.ReleaseTag={{.Tag}} -X github.com/minio/operator/pkg.CommitID={{.FullCommit}} -X github.com/minio/operator/sidecar/pkg.Version={{.Version}} -X github.com/minio/operator/sidecar/pkg.ShortCommitID={{.ShortCommit}} -X github.com/minio/operator/pkg.ReleaseTime={{.Date}} + - -s -w -X github.com/minio/operator/sidecar/pkg.ReleaseTag={{.Tag}} -X github.com/minio/operator/sidecar/pkg.CommitID={{.FullCommit}} -X github.com/minio/operator/sidecar/pkg.Version={{.Version}} -X github.com/minio/operator/sidecar/pkg.ShortCommitID={{.ShortCommit}} -X github.com/minio/operator/sidecar/pkg.ReleaseTime={{.Date}} flags: - -trimpath diff --git a/sidecar/Makefile b/sidecar/Makefile index 91c10556316..f75cdaa0535 100644 --- a/sidecar/Makefile +++ b/sidecar/Makefile @@ -7,7 +7,7 @@ VERSIONV ?= $(shell git describe --tags | sed 's,v,,g') endif TAG ?= "minio/operator-sidecar:$(VERSION)" SHA ?= $(shell git rev-parse --short HEAD) -LDFLAGS ?= "-s -w -X github.com/minio/operator/pkg.ReleaseTag=$(VERSIONV) -X github.com/minio/operator/sidecar/pkg.Version=$(VERSION) -X github.com/minio/operator/sidecar/pkg.ShortCommitID=$(SHA)" +LDFLAGS ?= "-s -w -X github.com/minio/operator/sidecar/pkg.ReleaseTag=$(VERSIONV) -X github.com/minio/operator/sidecar/pkg.Version=$(VERSION) -X github.com/minio/operator/sidecar/pkg.ShortCommitID=$(SHA)" GOPATH := $(shell go env GOPATH) GOARCH := $(shell go env GOARCH) GOOS := $(shell go env GOOS) diff --git a/sidecar/pkg/build-constants.go b/sidecar/pkg/build-constants.go index 1c01ddba425..aa984d55fac 100644 --- a/sidecar/pkg/build-constants.go +++ b/sidecar/pkg/build-constants.go @@ -27,6 +27,4 @@ var ( CommitID = "(dev)" // ShortCommitID - first 12 characters from CommitID. ShortCommitID = "(dev)" - // MPSecret - MP Secret - MPSecret = "(dev)" ) From 6cdc67929851b6ef410e3920170419ca7bea0485 Mon Sep 17 00:00:00 2001 From: pjuarezd Date: Wed, 17 Jul 2024 16:11:06 -0600 Subject: [PATCH 2/2] Last addition to release notes Signed-off-by: pjuarezd --- docs/notes/v6.0.0.md | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/docs/notes/v6.0.0.md b/docs/notes/v6.0.0.md index d6948667f1f..470ef33f34b 100644 --- a/docs/notes/v6.0.0.md +++ b/docs/notes/v6.0.0.md @@ -16,6 +16,9 @@ Operator 6.0.0 is now available. This release requires Kubernetes version 1.25.0 * Field `spec.pools.*.name` is required starting v5.0.15 * Headless service port name is now renamed based on TLS settings * Correctly indicate the proportion of usage of available storage +* Added PVC expansion logic for MinIO Operator +* Deprecated Operator UI +* Moving support for OpenShift from upstream Operator to downstream ## Introducing MinIO Job @@ -72,11 +75,12 @@ spec: ### Sidecar container -TODO +* Sidecar container is now distributed in a separated container image `minio/operator-sidecar:{version}`, this container release cycle will be separated to the Operator, meanwhile Operator image stays `minio/operator::{version}`, +* Sidecar now generates all environment variables exposed to MinIO, and no longer are exported in the pools Statefulset, this allow us to hot-reload minio on Upgrades without causing pods restart ### TLS Refactor -TODO +We broadly enhanced support for Cert-Manager, please refer to the guide in [cert-manager.md](https://github.com/minio/operator/blob/master/docs/cert-manager.md) for a detailed guide. ### Operator STS @@ -137,7 +141,7 @@ guide. If a node is failing, follow the [Node Failure Recovery guide](https://mi ### Field `spec.pools.*.name` is required starting v5.0.15 -TODO +Field `spec.pools.*.name` is now a required field, please make sure to include this with a non-duplicated value in the list of Pools. ### Field `spec.credsSecret` is removed @@ -223,3 +227,21 @@ Headless service port was not renamed, it was kept as `http-minio`, starting Ope the same way and rename the port with a `https-` prefix. +## Added PVC expansion logic for MinIO Operator + +Operator adds functionality to automatically expand PersistentVolumeClaims (PVCs) when the storage capacity specified in +the MinIO Tenant Custom Resource Definition (CRD) changes, this is if the Storage class supports the volume expansion. + +## Deprecated Operator UI + +We are phasing out the UI from the MinIO Operator because it has not been maintained actively for a few years. Initially, +the UI was introduced to help users become acquainted with the MinIO Operator. However, it's worth noting that no other +operators provide a UI for managing their resources. This is an uncommon practice, and maintaining an unused UI diverts +resources from more critical aspects of development. Therefore, we are removing the UI to concentrate solely on a +declarative approach to managing MinIO deployments through Kubernetes-native primitives, specifically using Tenant YAMLs. +This shift allows us to focus on the most efficient and widely-accepted methods of operation within the Kubernetes ecosystem. + +## Moving support for OpenShift from upstream Operator to downstream. + +Support will still be available through our downstream offerings, which will include comprehensive support. +This change allows us to focus our resources on maintaining and enhancing the quality of our support services for OpenShift users.