diff --git a/resource_customizations/minio.min.io/Tenant/health.lua b/resource_customizations/minio.min.io/Tenant/health.lua index 9f202b1f17f54..088d70a5ecf4f 100644 --- a/resource_customizations/minio.min.io/Tenant/health.lua +++ b/resource_customizations/minio.min.io/Tenant/health.lua @@ -36,11 +36,21 @@ if obj.status ~= nil then health_status.message = obj.status.currentState return health_status end + if obj.status.currentState == "Tenant credentials are not set properly" then + health_status.status = "Degraded" + health_status.message = obj.status.currentState + return health_status + end if obj.status.currentState == "Different versions across MinIO Pools" then health_status.status = "Degraded" health_status.message = obj.status.currentState return health_status end + if obj.status.currentState == "Pool Decommissioning Not Allowed" then + health_status.status = "Degraded" + health_status.message = obj.status.currentState + return health_status + end health_status.status = "Progressing" health_status.message = obj.status.currentState return health_status diff --git a/resource_customizations/minio.min.io/Tenant/health_test.yaml b/resource_customizations/minio.min.io/Tenant/health_test.yaml index 525d7674b11bd..c20b410a560d4 100644 --- a/resource_customizations/minio.min.io/Tenant/health_test.yaml +++ b/resource_customizations/minio.min.io/Tenant/health_test.yaml @@ -23,10 +23,18 @@ tests: status: Degraded message: "Another MinIO Tenant already exists in the namespace" inputPath: testdata/another_tenant_exists.yaml +- healthStatus: + status: Degraded + message: "Tenant credentials are not set properly" + inputPath: testdata/incorrect_tenant_credentials.yaml - healthStatus: status: Degraded message: "Different versions across MinIO Pools" inputPath: testdata/versions_mismatch.yaml +- healthStatus: + status: Degraded + message: "Pool Decommissioning Not Allowed" + inputPath: testdata/pool_decommissioning_not_allowed.yaml - healthStatus: status: Progressing message: "" diff --git a/resource_customizations/minio.min.io/Tenant/testdata/incorrect_tenant_credentials.yaml b/resource_customizations/minio.min.io/Tenant/testdata/incorrect_tenant_credentials.yaml new file mode 100644 index 0000000000000..52b27115efc2e --- /dev/null +++ b/resource_customizations/minio.min.io/Tenant/testdata/incorrect_tenant_credentials.yaml @@ -0,0 +1,13 @@ +apiVersion: minio.min.io/v2 +kind: Tenant +metadata: + name: minio-tenant +spec: + image: minio/minio:latest + pools: + - name: pool-0 + servers: 1 + volumesPerServer: 4 +status: + revision: 0 + currentState: Tenant credentials are not set properly diff --git a/resource_customizations/minio.min.io/Tenant/testdata/pool_decommissioning_not_allowed.yaml b/resource_customizations/minio.min.io/Tenant/testdata/pool_decommissioning_not_allowed.yaml new file mode 100644 index 0000000000000..fcd181cb3a41c --- /dev/null +++ b/resource_customizations/minio.min.io/Tenant/testdata/pool_decommissioning_not_allowed.yaml @@ -0,0 +1,13 @@ +apiVersion: minio.min.io/v2 +kind: Tenant +metadata: + name: minio-tenant +spec: + image: minio/minio:latest + pools: + - name: pool-0 + servers: 1 + volumesPerServer: 4 +status: + revision: 0 + currentState: Pool Decommissioning Not Allowed