From time to time, you will need to upgrade Glasswall Halo to stay up to date with the latest fixes, features, and releases.

## Upgrading Glasswall Halo

### 1. Set the default Kubernetes namespace

Ensure your current Kubernetes context is set to the `cdrplatform` namespace:

```bash
kubectl config set-context --current --namespace=cdrplatform
```

### 2. Identify the latest image and chart versions

Use the Azure CLI to list available image tags in the Glasswall Artifact Registry:

```bash
az acr repository show-tags   --repository <repository>   --name glasswallhub   --username "${token_ID}"   --password "${token}"   --orderby time_desc
```

Replace `<repository>` with the appropriate image repository name.

### 3. Authenticate to the Helm registry

Log in to the Glasswall Helm registry using your credentials:

```bash
helm registry login glasswallhub.azurecr.io   --username "${token_ID}"   --password "${token}"
```

### 4. Pull the latest Helm chart

Download and extract the required Helm chart version:

```bash
helm pull oci://glasswallhub.azurecr.io/helm/<repository>   --version "${version}"   --untar   --untardir .
```

Replace `<repository>` with the chart repository name and `${version}` with the desired chart version.

### 5. Upgrade the Helm release

Run the Helm upgrade command using the required image tag and repository:

```bash
helm upgrade --install <chart-name> <chart-name>   --set image.tag=<tag>   --set image.repository=glasswallhub.azurecr.io/<repository>
```

Replace the placeholders with the appropriate chart name, image tag, and repository.

**Note:**  always review the release notes before upgrading to ensure compatibility and to understand any breaking changes.