Helm Chart Breaking Changes

Introduction

Here you will find all breaking changes that come along with different Helm Chart releases that have been published. Note that all changes apply when going from one release to another.

Helm Chart Version: 0.5.0

When upgrading from Helm Chart 0.4.0 to 0.5.0, you will be performing a upgrade from Infinite Scale 3.0.0 to 4.0.1. This upgrade will perform some migrations, please also see Upgrading from 3.0.0 to 4.0.0 for more details.

  • Back up Infinite Scale as described in the backup documentation.

  • For the Helm Chart, we recommend to:

    • delete the Ingress object

      kubectl -n ocis delete ingress/proxy
      This command will make the Infinite Scale installation unavailable for users. Depending on your Kubernetes Ingress Controller, users will see different error pages. Deleting the Ingress object just ensures that none of your users can access Infinite Scale during the migration processes.
  • Install Infinite Scale chart version 0.5.0 with the ingress.enabled setting set to false, see Deploy the Chart and Apply Chart Changes.

  • With Infinite Scale started using the new Helm chart version, monitor the migration status for the storage-users and storage-system service by running these commands:

    kubectl -n <ocis-namespace> exec svc/storageusers -- ocis migrate decomposedfs -r /var/lib/ocis/storage/users list
    kubectl -n <ocis-namespace> exec svc/storagesystem -- ocis migrate decomposedfs -r /var/lib/ocis/storage/metadata list
  • If all migration steps of both services show the state succeeded, migrations have finished.

  • You can now set the ingress.enabled setting to true and deploy the Helm chart as usual. The formerly deleted Ingress object will be recreated automatically.

Users should now be able to access Infinite Scale again.

Helm Chart Version: 0.4.0

The Infinite Scale Helm Chart version 0.4.0 has received various improvements.

Among them are the following notable improvements:

  • Supports the update from the Helm Chart 0.1.0 by setting:
    services.storagesystem.persistence.claimName to storage-system-data and
    services.storageusers.persistence.claimName to storage-users-data
    in order to mitigate the breaking changes from Helm Chart 0.2.0.

  • Support for Secret Auto Generation.
    You no longer need to generate secrets manually.

    • If you already have secrets generated and configured via extraResources, you can just remove them from extraResources.

    • If you applied the secrets manually to the Kubernetes cluster, they are not yet managed by Helm. Therefore you need to add the
      app.kubernetes.io/managed-by,
      meta.helm.sh/release-name and
      meta.helm.sh/release-namespace
      annotations manually to each secret. The values of the annotations can be found on any other resource that was deployed by the Infinite Scale chart.

    • If you don’t want Secrets / ConfigMaps to be autogenerated or be managed by Helm, you can disable it by setting the particular configRefs / secretRefs option to a nonempty string (referencing the Secret / ConfigMap managed by you).

Please also check the changes for the Helm Chart versions 0.3.0 and 0.2.0 if you’re planning to update from Helm Chart version 0.1.0.

Helm Chart Version: 0.3.0

Note that Helm Chart version 0.3.0 was the first release compatible with Infinite Scale 3.0.0 but contains no upgrade path from version 0.1.0 to 0.3.0. Upgrading will be implemented in a subsequent release.

  • The following keys have been deprecated:
    services.storageusers.storageBackend.driverConfig.s3ng.secretKey and
    services.storageusers.storageBackend.driverConfig.s3ng.accessKey
    Please set them via the secretRefs.s3CredentialsSecretRef secret instead.

  • If you had set services.web.config.disableFeedbackLink = true,
    you need to replace it by:
    services.web.config.feedbackLink.enabled = false.

  • In order to persist the instance logo that can be changed via the Web UI,
    services.web.persistence.enabled must be set to true.
    In prior releases, the web frontend did not have any persistence.

Helm Chart Version: 0.2.0

Note that Helm Chart version 0.2.0 was a necessary intermediate for Infinite Scale 3.0.0-alpha.1 only and is listed for completeness of breaking changes.

  • Version 0.2.0 of the Helm Chart introduces some changes compared to version 0.1.0 with respect to the naming of Persistent Volume Claim names of the storageusers and storagesystem services. Updating from version 0.1.0 without manual update interventions will result in data loss.

  • Service/app names were aligned at various places (values file, YAML files, directories).

Old Value Name (0.1.0) New Value Name (0.2.0)

configRefs.storageUsersConfigRef

configRefs.storageusersConfigRef

secretRefs.storageSystemJwtSecretRef

secretRefs.storagesystemJwtSecretRef

secretRefs.storageSystemSecretRef

secretRefs.storagesystemSecretRef

services.appProvider

services.appprovider

services.appRegistry

services.appregistry

services.authBasic

services.authbasic

services.authMachine

services.authmachine

services.storagePublicLink

services.storagepubliclink

services.storageShares

services.storageshares

services.storageSystem

services.storagesystem

services.storageUsers

services.storageusers

Helm Chart Version: 0.1.0

There are no breaking changes for this release.