---
title: On-premise upgrade procedure
description: This page describes the upgrade procedure for PingOne Recognize on-premise
component: recognize
page_id: recognize:on-premise:on-premise-upgrade-procedure
canonical_url: https://docs.pingidentity.com/recognize/on-premise/on-premise-upgrade-procedure.html
llms_txt: https://docs.pingidentity.com/recognize/llms.txt
docs_for_agents: https://developer.pingidentity.com/build-with-ai/docs-for-agents.md
section_ids:
  cluster-and-runtime: Cluster and runtime
  breaking-changes: Breaking changes
  release-1-4-0: Release 1.4.0
  release-1-3-0: Release 1.3.0
  circuit-storage: Circuit Storage
  operations-service: Operations Service
  core-daemon: Core Daemon
  databases: Databases
---

# On-premise upgrade procedure

## Cluster and runtime

Helm charts are updated from time to time. Customers will be notified of each upgrade.

To upgrade the system, run a command similar to the following:

```bash
helm upgrade --install node-persistence keyless/core-daemon --version 1.0.0 --timeout 10m --wait --set image.tag=1.0.0  --atomic -f values.yaml -f secrets.yaml
```

Applications are also updated from time to time. For each update, customers are notified of a specific tag to set in the overrides of the corresponding `values.yml` file. After updating the file, the Helm chart must be upgraded, which causes pods to be recreated with the new code.

|   |                                                                                                                    |
| - | ------------------------------------------------------------------------------------------------------------------ |
|   | Running an unsupported component version combination may result in a non-functional installation and/or data loss. |

### Breaking changes

#### Release 1.4.0

No breaking change has been introduced between 1.3.0 and 1.4.0.

#### Release 1.3.0

In release 1.3.0, some configmap keys have been renamed. If you are upgrading from version 1.2.5, ensure you update your configurations accordingly to prevent issues.

##### Circuit Storage

```none
configMap.springDatasource.url --> configMap.springDatasourceUrl
configMap.bucket.name --> configMap.cloudAwsS3BucketName
configMap.bucket.region --> configMap.cloudAwsRegionStatic
configMap.bucket.endpointUrl --> configMap.cloudAwsS3EndpointUrl
configMap.api.nodePersistence.basePath --> configMap.apiNodePersistenceBasePath
```

##### Operations Service

```none
configMap.api.nodePersistence.basePath --> configMap.apiNodePersistenceBasePath
```

##### Core Daemon

```none
configMap.api.nodePersistence.basePath --> configMap.apiNodePersistenceBasePath
configMap.api.circuitStorage.basePath --> configMap.apiCircuitStorageBasePath
```

## Databases

All the components that use a DB have automatic migrations set up. This is the only supported setting.

While it is possible to disable automatic migrations and perform manual migrations instead, this approach is discouraged. If manual migrations are used, please contact support to get the schema changes.

Deactivation of automatic migrations may lead to a non functioning installation and/or data loss.
