diff --git a/.github/workflows/release-channels.yml b/.github/workflows/release-channels.yml
deleted file mode 100644
index bc5a184bf..000000000
--- a/.github/workflows/release-channels.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-name: ZITADEL Release tags
-
-on:
- push:
- branches:
- - "main"
- paths:
- - 'release-channels.yaml'
- workflow_dispatch:
-
-permissions:
- contents: write
- packages: write
-
-jobs:
- Build:
- runs-on: ubuntu-20.04
- env:
- DOCKER_BUILDKIT: 1
- steps:
- - name: Source checkout
- uses: actions/checkout@v4
- with:
- fetch-depth: 0
- - name: get stable tag
- run: echo STABLE_RELEASE=$(yq eval '.stable' release-channels.yaml) >> $GITHUB_ENV
- - name: checkout stable tag
- uses: actions/checkout@v4
- with:
- fetch-depth: 0
- ref: ${{ env.STABLE_RELEASE }}
- - name: GitHub Container Registry Login
- uses: docker/login-action@v3
- with:
- registry: ghcr.io
- username: ${{ github.actor }}
- password: ${{ secrets.GITHUB_TOKEN }}
- - name: Google Artifact Registry Login
- uses: docker/login-action@v3
- with:
- registry: europe-docker.pkg.dev
- username: _json_key_base64
- password: ${{ secrets.GCR_JSON_KEY_BASE64 }}
- - name: copy release to stable
- run: |
- skopeo --version
- skopeo copy --all docker://ghcr.io/zitadel/zitadel:$STABLE_RELEASE docker://ghcr.io/zitadel/zitadel:stable
diff --git a/README.md b/README.md
index 17306129c..f2f4d9a77 100644
--- a/README.md
+++ b/README.md
@@ -13,8 +13,6 @@
-
-
diff --git a/docs/docs/self-hosting/deploy/knative.mdx b/docs/docs/self-hosting/deploy/knative.mdx
index 0613e7f7e..b26c7189b 100644
--- a/docs/docs/self-hosting/deploy/knative.mdx
+++ b/docs/docs/self-hosting/deploy/knative.mdx
@@ -27,7 +27,7 @@ kubectl apply -f https://raw.githubusercontent.com/zitadel/zitadel/main/deploy/k
```bash
kn service create zitadel \
---image ghcr.io/zitadel/zitadel:stable \
+--image ghcr.io/zitadel/zitadel:latest \
--port 8080 \
--env ZITADEL_DATABASE_COCKROACH_HOST=cockroachdb \
--env ZITADEL_EXTERNALSECURE=false \
diff --git a/docs/docs/self-hosting/deploy/linux.mdx b/docs/docs/self-hosting/deploy/linux.mdx
index 359bf26c6..eb7f4dc90 100644
--- a/docs/docs/self-hosting/deploy/linux.mdx
+++ b/docs/docs/self-hosting/deploy/linux.mdx
@@ -11,7 +11,7 @@ import NoteInstanceNotFound from "./troubleshooting/_note_instance_not_found.mdx
## Install PostgreSQL
Download a `postgresql` binary as described [in the PostgreSQL docs](https://www.postgresql.org/download/linux/).
-ZITADEL is tested against PostgreSQL and CockroachDB latest stable tag and Ubuntu 20.04.
+ZITADEL is tested against PostgreSQL and CockroachDB latest stable tag and Ubuntu 22.04.
## Run PostgreSQL
diff --git a/docs/docs/self-hosting/deploy/loadbalancing-example/docker-compose.yaml b/docs/docs/self-hosting/deploy/loadbalancing-example/docker-compose.yaml
index 4c455621f..2b9266c79 100644
--- a/docs/docs/self-hosting/deploy/loadbalancing-example/docker-compose.yaml
+++ b/docs/docs/self-hosting/deploy/loadbalancing-example/docker-compose.yaml
@@ -15,7 +15,7 @@ services:
restart: 'always'
networks:
- 'zitadel'
- image: 'ghcr.io/zitadel/zitadel:stable'
+ image: 'ghcr.io/zitadel/zitadel:latest'
command: 'start-from-init --config /example-zitadel-config.yaml --config /example-zitadel-secrets.yaml --steps /example-zitadel-init-steps.yaml --masterkey "${ZITADEL_MASTERKEY}" --tlsMode external'
depends_on:
db:
diff --git a/docs/docs/self-hosting/deploy/macos.mdx b/docs/docs/self-hosting/deploy/macos.mdx
index a9673ab8b..f73625547 100644
--- a/docs/docs/self-hosting/deploy/macos.mdx
+++ b/docs/docs/self-hosting/deploy/macos.mdx
@@ -11,7 +11,7 @@ import NoteInstanceNotFound from './troubleshooting/_note_instance_not_found.mdx
## Install PostgreSQL
Download a `postgresql` binary as described [in the PostgreSQL docs](https://www.postgresql.org/download/macosx/).
-ZITADEL is tested against PostgreSQL and CockroachDB latest stable tag and Ubuntu 20.04.
+ZITADEL is tested against PostgreSQL and CockroachDB latest stable tag and Ubuntu 22.04.
## Run PostgreSQL
diff --git a/docs/docs/self-hosting/manage/configure/docker-compose.yaml b/docs/docs/self-hosting/manage/configure/docker-compose.yaml
index 69ebdd909..8e5c9fbc0 100644
--- a/docs/docs/self-hosting/manage/configure/docker-compose.yaml
+++ b/docs/docs/self-hosting/manage/configure/docker-compose.yaml
@@ -5,7 +5,7 @@ services:
restart: "always"
networks:
- "zitadel"
- image: "ghcr.io/zitadel/zitadel:stable"
+ image: "ghcr.io/zitadel/zitadel:latest"
command: 'start-from-init --config /example-zitadel-config.yaml --config /example-zitadel-secrets.yaml --steps /example-zitadel-init-steps.yaml --masterkey "${ZITADEL_MASTERKEY}" --tlsMode disabled'
ports:
- "8080:8080"
diff --git a/docs/docs/support/advisory/a10013.md b/docs/docs/support/advisory/a10013.md
new file mode 100644
index 000000000..f95d1d62f
--- /dev/null
+++ b/docs/docs/support/advisory/a10013.md
@@ -0,0 +1,25 @@
+---
+title: Technical Advisory 10013
+---
+
+## Date
+
+Date: 2024-12-09
+
+## Description
+
+ZITADEL currently provides a "latest" and "stable" release tags as well as maintenance branches, where bug fixes are backported.
+We also publish release candidates regularly.
+
+The "stable" release channel was introduced for users seeking a more reliable and production-ready version of the software.
+However, most customers have their own deployment policies and cycles.
+Backports and security fixes are currently done as needed or required by customers.
+zitadel.cloud follows a similar approach, where the latest release is deployed a few days after its creation.
+
+## Mitigation
+
+If you used the "stable" Docker release, please consider switching to a specific version tag and follow the [release notes on GitHub](https://github.com/zitadel/zitadel/releases) for latest changes.
+
+## Impact
+
+The "stable" version will no longer be published or updated, and the corresponding Docker image tag will not be maintained anymore.
diff --git a/docs/docs/support/software-release-cycles-support.md b/docs/docs/support/software-release-cycles-support.md
index 6e6e094c1..4a9484dd2 100644
--- a/docs/docs/support/software-release-cycles-support.md
+++ b/docs/docs/support/software-release-cycles-support.md
@@ -82,7 +82,7 @@ Features in General Availability are not marked explicitly.
All release channels receive regular updates and bug fixes.
However, the timing and frequency of updates may differ between the channels.
-The choice between the "release candidate", "latest" and "stable" release channels depends on the specific requirements, preferences, and risk tolerance of the users.
+The choice between the "release candidate", "latest" and stable release channels depends on the specific requirements, preferences, and risk tolerance of the users.
[List of all releases](https://github.com/zitadel/zitadel/releases)
@@ -100,19 +100,6 @@ The "latest" release channel is designed for users who prefer to access the most
It provides early access to new functionalities and improvements but may involve a higher degree of risk as it is the most actively developed version.
Users opting for the latest release channel should be aware that occasional bugs or issues may arise due to the ongoing development process.
-### Stable
-
-The "stable" release channel is intended for users seeking a more reliable and production-ready version of the software.
-It offers a well-tested and validated release with fewer known issues and a higher level of stability.
-The stable release channel undergoes rigorous quality assurance and testing processes to ensure that it meets the highest standards of reliability and performance.
-It is recommended for users who prioritize stability over immediate access to the latest features.
-
-Current Stable Version:
-
-```yaml reference
-https://github.com/zitadel/zitadel/blob/main/release-channels.yaml
-```
-
## Maintenance
ZITADEL Cloud follows a regular deployment cycle to ensure our product remains up-to-date, secure, and provides new features.
diff --git a/docs/docs/support/technical_advisory.mdx b/docs/docs/support/technical_advisory.mdx
index 6e5c6ac51..7562ff387 100644
--- a/docs/docs/support/technical_advisory.mdx
+++ b/docs/docs/support/technical_advisory.mdx
@@ -190,6 +190,30 @@ We understand that these advisories may include breaking changes, and we aim to