How to Upgrade
In order to upgrade Mia-Platform Console, all you need to do is to update the mia-console
Chart version dependency in your Chart.yaml
file.
When upgrading Mia-Platform Console to a new major release, always remember that updates must be performed one major at a time. Therefore, in order to upgrade from v10 to v12 you must first upgrade to the latest v11 version.
To find out how to upgrade your installation to the latest version of v11 please reach out to your Mia-Platform referent.
apiVersion: v2
name: console
version: "0.0.0"
kubeVersion: ">= 1.20.0"
description: Self Hosted Console Installation Chart
type: application
dependencies:
- name: mia-console
version: "X.Y.Z"
repository: "https://nexus.mia-platform.eu/repository/helm-internal/"
When upgrading also make sure to check if any new configuration option is available or if something has been removed.
The Chart version follows semver policy so any breaking change with the Chart will always be followed by a Major release. Minor releases may include new configuration options while as a general rule of thumb, patches never holds new configuration options but only internal updates and fixes.
Console v12 - version upgrades
Upgrade from v12.2.1 to v12.x
New Redis configuration fields
From Chart version 13, we moved all the Redis configurations inside a redis
object in the values.yaml
file;
We have also removed the default redis configuration, which was redis.default.svc.cluster.local:6379
,
for this reason, before upgrading, you must add the Redis correct host to the values.yaml
file using the redis.hosts
property.
To summarize, you should move the Redis configuration under the specific configuration values property:
configurations.redisHost
->configurations.redis.hosts
. hosts is an array of hostconfigurations.redisUsername
->configurations.redis.username
configurations.redisPassword
->configurations.redis.password
Upgrade from v12.1.0 to v12.2.1
New management of image pull secrets
In this version, it is possible to generate an image pull secret directly from the chart. To do it, you should configure the imageCredentials
object in the values.yaml
file.
So, you can remove the imagePullSecrets
object from the values.yaml
file if you have only the secret to pull the image from the mia-platform registry. The field is still active, in the case you need more than one secret to pull images.
It is be removed the .Values.registryHost
field, which is moved to the .Values.imageCredentials.registry
field (which default is the same as the .Values.registryHost
value).
An example of this configuration:
imageCredentials:
registry: "nexus.mia-platform.eu"
name: "mia-platform-registry"
username: myUsername
password: myPassword
email: someone@mia-platform.eu
New security context
In this version, we removed the Pod Security Policy support (since removed in K8s v1.25) and the podSecurityPolicyEnabled
field.
We also change the management of the security context. In this version, the security context are applied by default to all the pods, and it is possible to configure only the pod security context using the defaultPodSecurityContext
field (to change all the pods security context) or the podSecurityContext
field in each workload configuration (to change the security context of a specific pod).
Upgrade from v12.0.2 to v12.1.0
New backoffice configuration
In this version, cms is replaced with the Backoffice. At runtime, there will be only 1 service called micro-lc
instead of 4 services (cms-backend
, cms-site
, v1-adapter
and exportService
).
This means that you can remove any configuration related to cms from your values.yaml
file.
You can remove configuration related to:
cmsBackendService
cmsSite
v1Adapter
exportService
And add backoffice configuration, something like:
backoffice:
deploy:
resources:
requests:
memory: "250Mi"
cpu: "100m"
limits:
memory: "250Mi"
cpu: "250m"
Upgrade from last Console v11 to v12.0.0
User JWT with asymmetric signing key
This feature introduce breaking changes in the chart configuration.
The user account authentication configuration has been moved under a dedicated object in the values.yml
file. The key jwtTokenSignKey
has been removed.
Additionally, users could be forced to login again, since tokens signed with the old signing key won't be valid anymore after the Console update.
This version introduces the signing of the JWT token with an asymmetric algorithm, rather than the symmetric HS256 signing key used now.
From now on, tokens will be signed with a private key that you will need to provide.
Please follow the Authentication Session signing guide for a detailed explanation on how to configure it.
Open Telemetry preview
This version introduces the possibility to enable the OpenTelemetry tracing feature (in preview). It is possible to enable it by follow the OpenTelemetry tracing guide.
Introduction of Mia-Platform Company
Since this version, a Mia-Platform Company will be created during the installation of the Console. Such Company is needed for some internal logic, for example Marketplace items maintained by Mia-Platform will have a reference to this Company.
The value .Values.configurations.miaPlatformDefaultCompanyId
is required;
it must be a RFC 1035 compliant label, i.e. a kebab-case
string: only alphanumeric characters and dashes (-
) are allowed, and the string must have a maximum length of 63 characters.
When installing a fresh instance of the Console or while upgrading from a previous version, a new company will be created with the given value only if not already existing.
We suggest to use the value mia-platform
as default company ID, since it should be clear that it refers to Mia-Platform.
However, please make sure that a tenant with the same name does not already exist: in such case we suggest to use a different name such as mia-platform-internal
or similar.