Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions content/en/docs/operations/upgrades/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
title: "Upgrades"
linkTitle: "Upgrades"
description: "Upgrade guides"
weight: 1
---

## Upgrading to v1.0

Version 1.0 brings major change to Cozystack control-plane: it is now completely modular and is composed of independent packages.
To manage packages a cozystack-operator was introduced, which replaces previous installer.
Assets server is now replaced with a single oci image, and it could be replaced with a git repository if needed.

However, underlying entities are still helm releases made of helm charts, so during an upgrade no workloads would be recreated or affected in any way.

### 1. Prerequisites
Along with version 1.0 new management tools were introduced: `cozyhr` and `cozypkg`. You will need their latest versions to proceed with the upgrade.
- Take `cozypkg` from the Cozystack Releases page: https://github.com/cozystack/cozystack/releases
- Take `cozyhr` from its repository: https://github.com/cozystack/cozyhr/releases
Comment on lines +18 to +19
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Format URLs as proper markdown links.

The bare URLs should be formatted as proper markdown links for better readability and to comply with markdown standards.

📝 Proposed fix
-- Take `cozypkg` from the Cozystack Releases page: https://github.com/cozystack/cozystack/releases
-- Take `cozyhr` from its repository: https://github.com/cozystack/cozyhr/releases  
+- Take `cozypkg` from the [Cozystack Releases page](https://github.com/cozystack/cozystack/releases)
+- Take `cozyhr` from its [repository releases](https://github.com/cozystack/cozyhr/releases)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- Take `cozypkg` from the Cozystack Releases page: https://github.com/cozystack/cozystack/releases
- Take `cozyhr` from its repository: https://github.com/cozystack/cozyhr/releases
- Take `cozypkg` from the [Cozystack Releases page](https://github.com/cozystack/cozystack/releases)
- Take `cozyhr` from its [repository releases](https://github.com/cozystack/cozyhr/releases)
🧰 Tools
🪛 markdownlint-cli2 (0.20.0)

[warning] 18-18: Bare URL used

(MD034, no-bare-urls)


[warning] 19-19: Bare URL used

(MD034, no-bare-urls)

🤖 Prompt for AI Agents
In `@content/en/docs/operations/upgrades/_index.md` around lines 18 - 19, Replace
the bare URLs in the upgrade notes by turning the two lines referencing cozypkg
and cozyhr into markdown link syntax (e.g.,
"[cozypkg](https://github.com/cozystack/cozystack/releases)" and
"[cozyhr](https://github.com/cozystack/cozyhr/releases)") so the text for the
items remains the same but the links are properly formatted; update the lines
that contain the literals "cozypkg" and "cozyhr" to use the bracketed link form.

You will also need regular tools such as flux, jq, kubectl, and such.

### 2. Upgrade
- Upgrade to the most recent v0.4x version, such as v0.41.5
- Apply `cozystack-crds.yaml` from the Cozystack Releases page, it contains definitions for new custom resources, such as Package and PackageSource.
- Apply `cozystack-operator.yaml` from the Cozystack Releases page, it will bring cozystack operator to the cluster.
- Generate and apply the main package for your installation with the `/hack/migrate-to-version-1.0.sh` script from the Cozystack repository.
It will gather values from existing configmaps in the `cozy-system` namespace, and assemble a `Package` resource with all the values.

As soon as the Package is applied, the operator will start migrations and upgrades automatically.
Migrations will clean up legacy components (old installer, assets-server, and obsolete HelmReleases).
You can track the progress by checking `HelmRelease` statuses with `kubectl get hr -A`.

And that's it!