Repository navigation
docs(v1): migrate ConfigMap references to Platform Package - #426
Conversation
Replace ConfigMap-based configuration with Package CRD across installation and upgrade documentation: - Replace ConfigMap with Package resource in install guide - Use helm install with OCI registry for operator deployment - Update all kubectl patch commands to target Package resource - Rewrite upgrade guide with step-by-step migration from v0.41 Co-Authored-By: Claude <[email protected]> Signed-off-by: Kirill Ilin <[email protected]>
…ll v1 docs Migrate all v1 documentation from the legacy ConfigMap-based configuration to the Package CRD introduced in Cozystack v1. Update install commands from kubectl apply to helm install, expand Platform Package reference with all parameters from values.yaml, and add warnings against --reuse-values on operator upgrades. Co-Authored-By: Claude <[email protected]> Signed-off-by: Kirill Ilin <[email protected]>
✅ Deploy Preview for cozystack ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
📝 WalkthroughWalkthroughDocumentation and examples converted from a ConfigMap-based configuration model to an operator-driven Platform Package model: manifests, commands, and field paths changed from Changes
Sequence Diagram(s)sequenceDiagram
participant User as User
participant Kctl as kubectl
participant Op as Cozystack_Operator
participant PS as PackageSource/OCI
participant HR as HelmRelease
participant K8s as Kubernetes
User->>Kctl: kubectl apply -f cozystack-platform.yaml
Kctl->>Op: create/update Package CR (packages.cozystack.io)
Op->>PS: fetch package assets from OCI (PackageSource)
PS-->>Op: package artifacts (charts/manifests)
Op->>HR: create/upgrade HelmRelease(s)
HR->>K8s: deploy charts → Pods/Deployments
K8s-->>HR: report status
HR-->>Op: reconcile status
Op-->>Kctl: Package status becomes Healthy
Kctl-->>User: kubectl get packages.cozystack.io cozystack.cozystack-platform -o yaml
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary of ChangesHello Kirill Ilin (@sircthulhu), I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly updates the Cozystack documentation to align with the new v1.0 architecture, which transitions from ConfigMap-based configuration to a more robust Platform Package Custom Resource Definition (CRD). The changes streamline installation processes by introducing Helm-based operator deployment and provide comprehensive guidance on managing Cozystack's configuration through the new Package CRD, ensuring consistency and clarity for users. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on Gemini (@gemini-code-assist) comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request does an excellent job of migrating the v1 documentation from ConfigMap-based configuration to the new Package CRD. The changes are comprehensive, covering installation, upgrades, and configuration of various components. The new reference pages for the Platform Package and the v1.0 upgrade guide are particularly valuable and well-written. I've identified a couple of minor inconsistencies in the kubectl patch commands for configuring the CDI upload proxy, for which I've provided suggestions. Overall, this is a fantastic and much-needed update to the documentation.
There was a problem hiding this comment.
Actionable comments posted: 11
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (4)
content/en/docs/v1/virtualization/proxmox-migration.md (1)
209-209:⚠️ Potential issue | 🟡 MinorStale ConfigMap reference in Troubleshooting section
Line 209 still refers to the old ConfigMap-based configuration:
Ensure Cozystack ConfigMap has expose-services: "dashboard,cdi-uploadproxy"This directly contradicts the Platform Package migration described earlier in the same file and will confuse users following the updated Prerequisites.
📝 Proposed fix
-- Ensure Cozystack ConfigMap has `expose-services: "dashboard,cdi-uploadproxy"` +- Ensure the Platform Package exposes `cdi-uploadproxy` (see Prerequisites, step 2)🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@content/en/docs/v1/virtualization/proxmox-migration.md` at line 209, The troubleshooting line referencing the old ConfigMap is stale—locate the exact string 'Ensure Cozystack ConfigMap has `expose-services: "dashboard,cdi-uploadproxy"`' and replace it with a Platform Package–centric instruction that matches the migration described earlier (e.g., tell users to ensure the Cozystack Platform Package has the expose-services setting configured in its spec or via the Platform Package config, not in a ConfigMap) so the Troubleshooting section aligns with the Prerequisites and migration guidance.content/en/docs/v1/guides/resource-management/_index.md (1)
130-146:⚠️ Potential issue | 🟡 MinorStale
cpu-allocation-ratio(kebab-case) references were missed in this migration.Lines 130, 134, and 146 still use the old ConfigMap-style kebab-case notation while the rest of the section has been updated to
cpuAllocationRatio. This creates a direct inconsistency within the same page.📝 Proposed fixes
- ## actual cpu request: (cpu / cpu-allocation-ratio) + ## actual cpu request: (cpu / cpuAllocationRatio)-### Example 1, default setting: `cpu-allocation-ratio: 10` +### Example 1, default setting: `cpuAllocationRatio: 10`-### Example 2: `cpu-allocation-ratio: 4` +### Example 2: `cpuAllocationRatio: 4`🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@content/en/docs/v1/guides/resource-management/_index.md` around lines 130 - 146, Replace the remaining kebab-case ConfigMap references of "cpu-allocation-ratio" with the new camelCase key "cpuAllocationRatio" in this markdown section so the page is consistent (update the occurrences shown in the examples and headings that currently say `cpu-allocation-ratio` to `cpuAllocationRatio`); ensure you update all inline code spans and any table headings or example captions that reference the old key, e.g., the Example 1 title and Example 2 title and any inline code blocks that still contain `cpu-allocation-ratio`.content/en/docs/v1/operations/configuration/configmap.md (1)
159-164:⚠️ Potential issue | 🟡 MinorTwo orphaned link-reference definitions.
[overwrite-parameters](line 160) and[telemetry](line 163) are defined but never referenced in the page body. They appear to be leftover from the ConfigMap reference page that was replaced. Dead reference definitions are harmless in most Markdown renderers but are confusing maintenance overhead and may indicate that content referencing them was inadvertently dropped.🧹 Proposed cleanup
[enable-disable]: {{% ref "/docs/v1/operations/configuration/components#enabling-and-disabling-components" %}} -[overwrite-parameters]: {{% ref "/docs/v1/operations/configuration/components#overwriting-component-parameters" %}} [Resource Management]: {{% ref "/docs/v1/guides/resource-management#cpu-allocation-ratio" %}} [oidc]: {{% ref "/docs/v1/operations/oidc" %}} -[telemetry]: {{% ref "/docs/v1/operations/configuration/telemetry" %}} [kube-ovn]: https://kubeovn.github.io/docs/en/guide/subnet/#join-subnetAlternatively, re-add in-text references to
[telemetry]and[overwrite-parameters]if the intended coverage was accidentally omitted (e.g., a note directing readers to the telemetry opt-out page and the overwrite-parameters section).🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@content/en/docs/v1/operations/configuration/configmap.md` around lines 159 - 164, Remove or restore the two orphaned link-reference definitions `[overwrite-parameters]` and `[telemetry]` in the markdown: either delete those unused reference lines from the bottom of the file (to clean up dead references) or reintroduce in-text links that point to them (e.g., a sentence referring readers to the overwrite-parameters section and the telemetry opt-out page) so the definitions are actually referenced by the page.content/en/docs/v1/getting-started/install-cozystack.md (1)
472-516:⚠️ Potential issue | 🟠 MajorTutorial has an unnecessary
ingresses.apps.cozystack.ioCRD patch absent from production guide.This tutorial includes a third
kubectl patchat lines 504–516 targetingingresses.apps.cozystack.io ingresswithexternalIPs, but the production guide (install/cozystack/_index.md) achieves the same result with only two patches: the Platform Package and tenantingress: true. The production guide then confirms externalIPs are applied by checking the service, without patching the Ingress CRD.Since
ingressesis a custom Cozystack CRD (v1alpha1) and the production guide documentation does not include or mention this step, the tutorial's third patch appears redundant. Either the tutorial includes an unnecessary step, or the custom Ingress CRD field being patched is not a documented or supported capability.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@content/en/docs/v1/getting-started/install-cozystack.md` around lines 472 - 516, Remove the third kubectl patch block that targets the custom CRD "ingresses.apps.cozystack.io ingress" (the patch that sets "spec.externalIPs") since the production guide only requires patching the Platform Package and setting tenant "ingress: true"; instead either delete that entire code block or replace it with a short note instructing readers to verify externalIPs on the Service (e.g., kubectl get svc -n tenant-root) if confirmation is needed, and ensure references to "externalIPs" and the "ingresses.apps.cozystack.io ingress" patch are removed so the tutorial matches the production guide.
🧹 Nitpick comments (1)
content/en/docs/v1/operations/cluster/upgrade.md (1)
46-56: Consider adding a--setexample to reinforce the warning.The alert advises against
--reuse-valuesand says to pass custom values with--set, but the code block immediately after shows no--setflag. A brief illustration would make this actionable:✏️ Suggested enhancement
```bash helm upgrade cozystack oci://ghcr.io/cozystack/cozystack/cozy-installer \ --version X.Y.Z \ - --namespace cozy-system + --namespace cozy-system \ + --set disableTelemetry=true # pass any custom values explicitly</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against the current code and only fix it if needed.
In
@content/en/docs/v1/operations/cluster/upgrade.mdaround lines 46 - 56, Add a
concrete --set example to the existing helm upgrade invocation shown by the
"helm upgrade cozystack oci://ghcr.io/cozystack/cozystack/cozy-installer"
snippet: modify that command to demonstrate passing a custom value (e.g., "--set
disableTelemetry=true") alongside "--version X.Y.Z" and "--namespace
cozy-system" so readers see exactly how to pass explicit values instead of using
--reuse-values.</details> </blockquote></details> </blockquote></details> <details> <summary>🤖 Prompt for all review comments with AI agents</summary>Verify each finding against the current code and only fix it if needed.
Inline comments:
In@content/en/docs/v1/guides/resource-management/_index.md:
- Around line 109-110: The snippet hardcodes "variant: isp-full" under the spec
key which can cause users to copy an incorrect deployment variant; update the
example around the spec -> variant: isp-full entry to either replace the literal
with a clear placeholder (e.g., ) or add an inline comment
directly above/beside "variant: isp-full" stating that users must set this to
the actual installed variant for their environment, and keep the identifier
"variant: isp-full" so reviewers can find and verify the change.In
@content/en/docs/v1/install/cozystack/_index.md:
- Around line 103-108: Replace the hardcoded version flag (--version
1.0.0-beta.6) in the Helm install snippet with a placeholder like --version
vX.Y.Z and add a short note/link directing users to the releases page
(https://github.com/cozystack/cozystack/releases) so readers are instructed to
substitute the desired release; apply the same change to the matching snippet in
hetzner.md so both files follow the getting-started/install-cozystack.md
pattern.In
@content/en/docs/v1/install/providers/hetzner.md:
- Around line 318-323: Replace the hardcoded version in the Helm install snippet
(the --version 1.0.0-beta.6 value in thehelm install cozystack oci://... --version ...command) with the placeholder X.Y.Z and add the same guidance
note used in telemetry.md telling users to substitute the desired released
version; ensure the change mirrors the telemetry.md phrasing and keeps the rest
of the Helm example unchanged.In
@content/en/docs/v1/operations/configuration/bundles.md:
- Around line 88-111: Add a short clarifying paragraph to the bundles.md doc
that maps the human-facing section bundle names to the v1 Package variant
values: explicitly state that the section headings use bundle names (e.g.,
"paas-full", "paas-hosted") while the Package spec's variant field must use the
corresponding v1 values ("isp-full", "isp-hosted"); reference the Package field
name variant and the example YAML snippet shown so readers know to use variant:
isp-full or variant: isp-hosted rather than variant: paas-full.In
@content/en/docs/v1/operations/configuration/configmap.md:
- Line 8: Remove the self-referential alias entry in the page's front matter:
locate the aliases field that includes
"/docs/v1/operations/configuration/configmap" and either delete that alias or
replace it with a different external/previous URL; ensure the page front matter
(aliases) no longer contains the identical canonical URL to avoid generating a
redirect loop.In
@content/en/docs/v1/operations/upgrades/_index.md:
- Around line 28-31: The prerequisites list fails to document that the
--take-ownership flag requires Helm v3.17.0+, so update the Helm bullet (the
line that currently reads "helm — required for installing the new operator") to
explicitly state the minimum version (e.g., "helm v3.17.0+ — required for
installing the new operator; required for the --take-ownership flag introduced
in v3.17.0"). Ensure the text references the flag name "--take-ownership" and
the minimum version "v3.17.0+" so users know to upgrade their Helm if they see
the "unknown flag: --take-ownership" error.- Around line 75-82: The helm install example uses a non-prefixed version
placeholder that conflicts with GHCR tags; update the command's --version
placeholder in the helm install example (the line containing "--version
<TARGET_VERSION>") to require the v-prefixed format (e.g., "--version v1.0.0")
so it matches Cozystack release tags and the other doc example
(install-cozystack.md) and will resolve correctly against the OCI chart
registry.In
@content/en/docs/v1/virtualization/_index.md:
- Around line 70-83: The current kubectl patch uses --type=merge which, because
JSON Merge Patch replaces arrays, will overwrite the existing exposedServices
array (removing pre-existing entries like "api"); change the patch to use a JSON
Patch that appends items (use ops on the "exposedServices" array) or
alternatively update the docs to show the full desired array so existing entries
aren't lost; look for the kubectl patch command targeting packages.cozystack.io
cozystack.cozystack-platform and the exposedServices field to implement the JSON
Patch append or to replace the example with the complete list.In
@content/en/docs/v1/virtualization/gpu.md:
- Line 55: The numbered sub-steps under the "1. Install the GPU Operator"
section have a gap: after step 2 the next item is labeled 4 ("Ensure all pods
are in a running state... sandbox-validator"), so renumber that item to 3 (and
renumber any subsequent steps accordingly), update any in-text references to
step numbers, and verify the ordered list markup is consistent so the sequence
reads 1, 2, 3, ...; specifically edit the line containing "Ensure all pods are
in a running state and all validations succeed with the sandbox-validator
component" to be step 3 and adjust following steps if present.- Around line 38-51: The kubectl patch shown uses --type=merge which will
replace the enabledPackages array instead of appending; update the instructions
to use a JSON Patch add that appends to the array (using an "add" operation with
path ending in "/-") or, if you keep --type=merge, add a clear warning that
enabledPackages will be replaced and show the safe two-step approach (initialize
enabledPackages to an empty array then merge) so users don't accidentally lose
existing entries; reference the kubectl patch command, the --type=merge flag,
and the enabledPackages field when making the change.In
@content/en/docs/v1/virtualization/proxmox-migration.md:
- Around line 26-38: The patch example uses kubectl patch with --type=merge
which performs a JSON Merge Patch and will replace arrays like "exposedServices"
wholesale; update the proxmox-migration.md snippet to add a short inline note
next to the kubectl patch example warning that JSON Merge Patch replaces arrays
and that users must include all desired services (e.g., include existing
"ingress-nginx" as well) or first read the current value (suggest using kubectl
get ... -o jsonpath or kubectl get -o yaml) before applying the patch so they
don't accidentally drop entries.
Outside diff comments:
In@content/en/docs/v1/getting-started/install-cozystack.md:
- Around line 472-516: Remove the third kubectl patch block that targets the
custom CRD "ingresses.apps.cozystack.io ingress" (the patch that sets
"spec.externalIPs") since the production guide only requires patching the
Platform Package and setting tenant "ingress: true"; instead either delete that
entire code block or replace it with a short note instructing readers to verify
externalIPs on the Service (e.g., kubectl get svc -n tenant-root) if
confirmation is needed, and ensure references to "externalIPs" and the
"ingresses.apps.cozystack.io ingress" patch are removed so the tutorial matches
the production guide.In
@content/en/docs/v1/guides/resource-management/_index.md:
- Around line 130-146: Replace the remaining kebab-case ConfigMap references of
"cpu-allocation-ratio" with the new camelCase key "cpuAllocationRatio" in this
markdown section so the page is consistent (update the occurrences shown in the
examples and headings that currently saycpu-allocation-ratioto
cpuAllocationRatio); ensure you update all inline code spans and any table
headings or example captions that reference the old key, e.g., the Example 1
title and Example 2 title and any inline code blocks that still contain
cpu-allocation-ratio.In
@content/en/docs/v1/operations/configuration/configmap.md:
- Around line 159-164: Remove or restore the two orphaned link-reference
definitions[overwrite-parameters]and[telemetry]in the markdown: either
delete those unused reference lines from the bottom of the file (to clean up
dead references) or reintroduce in-text links that point to them (e.g., a
sentence referring readers to the overwrite-parameters section and the telemetry
opt-out page) so the definitions are actually referenced by the page.In
@content/en/docs/v1/virtualization/proxmox-migration.md:
- Line 209: The troubleshooting line referencing the old ConfigMap is
stale—locate the exact string 'Ensure Cozystack ConfigMap hasexpose-services: "dashboard,cdi-uploadproxy"' and replace it with a Platform Package–centric
instruction that matches the migration described earlier (e.g., tell users to
ensure the Cozystack Platform Package has the expose-services setting configured
in its spec or via the Platform Package config, not in a ConfigMap) so the
Troubleshooting section aligns with the Prerequisites and migration guidance.
Duplicate comments:
In@content/en/docs/v1/getting-started/install-cozystack.md:
- Around line 84-92: The helm command snippet uses an inconsistent OCI tag
format; update the snippet's --version value (in the "helm install cozystack
..." block) to match the actual OCI tag format used elsewhere (remove the
leading "v" so it reads --version 1.0.0 or replace with a placeholder like
--version <CHART_TAG>) and add a short note telling readers to verify the exact
tag format with the verification script referenced in the upgrades doc; ensure
the change keeps the same helm install line and --version flag.
Nitpick comments:
In@content/en/docs/v1/operations/cluster/upgrade.md:
- Around line 46-56: Add a concrete --set example to the existing helm upgrade
invocation shown by the "helm upgrade cozystack
oci://ghcr.io/cozystack/cozystack/cozy-installer" snippet: modify that command
to demonstrate passing a custom value (e.g., "--set disableTelemetry=true")
alongside "--version X.Y.Z" and "--namespace cozy-system" so readers see exactly
how to pass explicit values instead of using --reuse-values.</details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
The CDI upload proxy URL should be configured by patching the cozystack.kubevirt-cdi Package, not the Platform Package. Co-Authored-By: Claude <[email protected]> Signed-off-by: Kirill Ilin <[email protected]>
There was a problem hiding this comment.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In `@content/en/docs/v1/virtualization/_index.md`:
- Around line 70-83: The kubectl patch shown uses --type=merge which will
silently replace the exposedServices array
(spec.components.platform.values.publishing.exposedServices) instead of
appending; change the instruction to either use a JSON Patch (kubectl patch
--type=json) that appends items to the exposedServices array (op:add against the
correct JSON path) or explicitly document and show the full desired
exposedServices array so users replace it intentionally; update the example
command and surrounding prose to present Option A (JSON Patch append) or Option
B (explicit full list with a callout) and reference exposedServices and
spec.components.platform.values.publishing in the text so readers know which
field is affected.
- Replace hardcoded 1.0.0-beta.6 with placeholder X.Y.Z and link to releases page (install guide, hetzner, getting-started) - Standardize Helm version format without v prefix across all docs to match OCI registry tag format - Remove self-referential alias in Platform Package reference - Fix step numbering gap in gpu.md (4 -> 3) - Add warnings that --type=merge replaces arrays wholesale for exposedServices and enabledPackages patches - Rename paas-full/paas-hosted to isp-full/isp-hosted in bundles.md to match actual variant names - Fix stale ConfigMap reference in proxmox-migration.md troubleshooting - Remove stale TODO comment in virtualization/_index.md - Fix CDI customization to patch cozystack.kubevirt-cdi Package directly Co-Authored-By: Claude <[email protected]> Signed-off-by: Kirill Ilin <[email protected]>
…ning - Replace ConfigMap/paas-full references in backup-and-recovery, nfs, vpc, and development docs with Platform Package equivalents - Rename configmap.md to platform-package.md with URL aliases - Create reuse-values-warning shortcode to DRY the repeated warning in upgrade.md and telemetry.md - Add JSON Merge Patch array-replacement warning to install-cozystack section 5.3 for exposedServices Co-Authored-By: Claude <[email protected]> Signed-off-by: Kirill Ilin <[email protected]>
There was a problem hiding this comment.
Actionable comments posted: 8
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
content/en/docs/v1/networking/vpc.md (1)
10-14:⚠️ Potential issue | 🟡 MinorDirect edit to autogenerated file — verify the upstream source was updated.
The file header on lines 10–14 states "Don't edit this file directly; edit sources instead" and lists the true source:
packages/apps/vpc/README.mdin the upstreamcozystack/cozystackrepoThe
paas-full→isp-fullchange on line 22 is made here directly. Note thatcontent/en/docs/v1/networking/_include/vpc.md(mentioned in the header metadata) only contains frontmatter and is not the actual content source. Thehack/update_apps.shscript regenerates this file from the upstream repository. If the upstream README.md has not been updated withisp-full, the next regeneration will silently revert this change.Please confirm that the upstream
packages/apps/vpc/README.mdincozystack/cozystackhas been updated accordingly.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@content/en/docs/v1/networking/vpc.md` around lines 10 - 14, This change was made directly to the autogenerated doc; revert the direct edit and update the upstream source instead: open packages/apps/vpc/README.md in the cozystack/cozystack repo and confirm the "paas-full" → "isp-full" change is present there, update that README if needed, then run hack/update_apps.sh (or the repository's regeneration process) to regenerate content/en/docs/v1/networking/vpc.md from content/en/docs/v1/networking/_include/vpc.md and the upstream README so the change persists and the header warning remains accurate.content/en/docs/v1/install/providers/hetzner.md (1)
394-394:⚠️ Potential issue | 🟡 MinorTypo: "Cozysatck's" → "Cozystack's".
✏️ Proposed fix
-Hetzner requires using its own RobotLB instead of Cozysatck's default MetalLB. +Hetzner requires using its own RobotLB instead of Cozystack's default MetalLB.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@content/en/docs/v1/install/providers/hetzner.md` at line 394, Fix the typo in the documentation string "Hetzner requires using its own RobotLB instead of Cozysatck's default MetalLB." by replacing "Cozysatck's" with "Cozystack's" so the sentence reads "Hetzner requires using its own RobotLB instead of Cozystack's default MetalLB."; update the exact phrase in the Markdown content where it appears.
🧹 Nitpick comments (3)
layouts/shortcodes/reuse-values-warning.html (1)
4-5: Replace<br/><br/>with<p>tags for semantic paragraph separation.
<br/><br/>is a presentational hack;<p>tags convey paragraph structure to screen readers and are easier to style via CSS.♻️ Proposed refactor
-Do not use <code>--reuse-values</code> when upgrading the Cozystack operator. The Helm chart values contain hardcoded references to the platform OCI repository. Reusing old values would result in the operator pointing to old package versions. -<br/><br/> -If you have custom values (e.g., <code>disableTelemetry</code>), pass them explicitly with <code>--set</code>. +<p>Do not use <code>--reuse-values</code> when upgrading the Cozystack operator. The Helm chart values contain hardcoded references to the platform OCI repository. Reusing old values would result in the operator pointing to old package versions.</p> +<p>If you have custom values (e.g., <code>disableTelemetry</code>), pass them explicitly with <code>--set</code>.</p>🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@layouts/shortcodes/reuse-values-warning.html` around lines 4 - 5, Replace the presentational line breaks with semantic paragraph elements in the reuse-values-warning snippet: remove the literal "<br/><br/>" and wrap the sentence "If you have custom values (e.g., <code>disableTelemetry</code>), pass them explicitly with <code>--set</code>." in a proper <p>…</p> element so screen readers and CSS can target a semantic paragraph; ensure the paragraph is correctly opened and closed within the same snippet.content/en/docs/v1/storage/nfs.md (1)
14-32: Move the array-clobbering warning to before the code block.The
{{% alert %}}warning about JSON Merge Patch replacingenabledPackageswholesale appears after thekubectl patchcommand. A user who copies and runs the command before reading the warning will silently wipe any pre-existing entries. Swapping the order ensures the caution is visible before execution.♻️ Proposed reordering
+{{% alert color="warning" %}} +JSON Merge Patch (`--type=merge`) replaces arrays wholesale. If you already have entries in `enabledPackages`, include all of them in the patch to avoid losing existing values. +{{% /alert %}} + ```bash kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{ "spec": { "components": { "platform": { "values": { "bundles": { "enabledPackages": ["nfs-driver"] } } } } } }'
-{{% alert color="warning" %}}
-JSON Merge Patch (--type=merge) replaces arrays wholesale. If you already have entries inenabledPackages, include all of them in the patch to avoid losing existing values.
-{{% /alert %}}</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against the current code and only fix it if needed.
In
@content/en/docs/v1/storage/nfs.mdaround lines 14 - 32, Move the warning
alert (the {{% alert color="warning" %}} block) so it appears immediately before
the kubectl patch code block rather than after it; update the document around
the kubectl patch command and the {{% alert %}} block so the caution about JSON
Merge Patch replacing arrays wholesale is visible above the kubectl patch
example (refer to the kubectl patch command and the {{% alert color="warning"
%}} block to locate the elements to reorder).</details> </blockquote></details> <details> <summary>content/en/docs/v1/operations/upgrades/_index.md (1)</summary><blockquote> `95-99`: **Migration script references `main` branch — pin to a release tag for reproducibility.** The `curl | bash` URL points to the `main` branch of the cozystack repo. If the script is updated after a release (e.g., for v1.1 migration), users running this guide for a v0.41→v1.0 upgrade could silently execute a different script version. <details> <summary>♻️ Proposed fix</summary> ```diff -curl -fsSL https://raw.githubusercontent.com/cozystack/cozystack/main/hack/migrate-to-version-1.0.sh | bash +curl -fsSL https://raw.githubusercontent.com/cozystack/cozystack/v<TARGET_VERSION>/hack/migrate-to-version-1.0.sh | bashApply the same change to the download-and-inspect alternative on lines 112–113.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@content/en/docs/v1/operations/upgrades/_index.md` around lines 95 - 99, The migration instruction currently downloads the script from the repository "main" branch (the curl | bash URL) which is not reproducible; update the URL to reference the specific release tag for v1.0 (or the intended release) instead of "main" so the exact script version is fetched, and make the same change for the alternate download-and-inspect command mentioned later (the download URL on lines 112–113) so both examples point to the same pinned release tag.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@content/en/docs/v1/getting-started/install-cozystack.md`:
- Around line 472-491: Add the same array-replacement warning you added for
exposedServices: note that the kubectl patch using --type=merge will replace the
externalIPs array wholesale (externalIPs under publishing) and can remove
existing entries on re-run; advise users to either supply the complete desired
array or use a JSON patch (kubectl patch --type=json) to add/modify individual
elements. Ensure the warning text references externalIPs and --type=merge so
readers understand the exact risk and alternatives.
In `@content/en/docs/v1/install/cozystack/_index.md`:
- Around line 550-570: Add a brief warning that using kubectl patch with
--type=merge on the Platform Package will replace the entire externalIPs array,
so subsequent runs with different IP sets will discard previous entries; update
the docs around the kubectl patch example (the command that patches
packages.cozystack.io cozystack.cozystack-platform and the "externalIPs" field)
to include a short note advising users to append or re-run with the full desired
list (or use a different patch strategy) to avoid unintentionally removing
existing IPs.
- Around line 689-707: The patch example uses --type=merge against the
exposedServices array which will silently replace the entire array
(exposedServices), so add the reuse-values-warning shortcode immediately above
the kubectl patch example and either (A) show a full-array example under the
patch (e.g., include all desired entries like "api" and "dashboard" in the
exposedServices value) or (B) replace the merge strategy with a JSON Patch
(--type=json) that appends an item; reference the kubectl patch command, the
--type=merge/--type=json flag, the exposedServices key, and the
reuse-values-warning shortcode when making the change.
In `@content/en/docs/v1/install/providers/hetzner.md`:
- Around line 356-361: Fix the typo "Cozysatck's" to "Cozystack's" in the
document and add a short clarifying note in the Hetzner `isp-full` Platform
Package section explaining why `joinCIDR` is omitted (reference the `isp-full`
example in bundles.md which includes `joinCIDR: "100.64.0.0/16"`), stating that
Hetzner's vSwitch provides layer‑2 node connectivity so KubeSpan/WireGuard
`joinCIDR` is unnecessary and users should not copy the generic example into
their Hetzner config; mention the keys `joinCIDR`, `isp-full`, and `vSwitch` to
locate where to add the clarification.
In `@content/en/docs/v1/operations/configuration/bundles.md`:
- Line 223: Fix the typo in the sentence fragment "if this your first time
installing Cozystack" by inserting the missing word "is" so the sentence reads
"if this is your first time installing Cozystack"; update the text near the
phrase `isp-full` in the Bundles documentation (the line containing "if this
your first time installing Cozystack") to use the corrected wording.
- Line 58: Update the stale link target for the [kubernetes operators]
reference: replace the old path
"packages/core/platform/templates/bundles/paas.yaml" with the current bundle
path under "packages/core/platform/bundles/" (e.g.,
"packages/core/platform/bundles/isp-hosted.yaml" or
"packages/core/platform/bundles/isp-full.yaml" depending on which bundle is
intended) and verify the referenced file exists in the repo; if the paas.yaml
functionality was removed, remove the link instead.
In `@content/en/docs/v1/operations/configuration/platform-package.md`:
- Around line 159-163: Remove or use the two orphaned link reference
definitions: either delete the `[overwrite-parameters]` and `[telemetry]`
reference lines from the link list or add in-text anchors that point to them
(for example, link the components table rows that discuss overriding parameter
values to `[overwrite-parameters]`, and add a mention of telemetry where
`[telemetry]` is relevant); update the same list entries
(`[overwrite-parameters]` and `[telemetry]`) so only referenced link labels
remain and ensure any added prose uses those exact labels to avoid leaving
unused definitions.
In `@content/en/docs/v1/operations/upgrades/_index.md`:
- Around line 75-82: Replace the generic <TARGET_VERSION> placeholder in the
helm install example with the standard X.Y.Z placeholder and update the example
value to show the v-prefixed form (e.g., v1.0.0); also add a one-line
clarification after the example that the --version must exactly match the
published OCI chart tag (include the leading "v" when the chart is published as
vX.Y.Z). Target the helm install example block and the explanatory line
referencing `1.0.0` so both the placeholder and the note about the v-prefix are
updated.
---
Outside diff comments:
In `@content/en/docs/v1/install/providers/hetzner.md`:
- Line 394: Fix the typo in the documentation string "Hetzner requires using its
own RobotLB instead of Cozysatck's default MetalLB." by replacing "Cozysatck's"
with "Cozystack's" so the sentence reads "Hetzner requires using its own RobotLB
instead of Cozystack's default MetalLB."; update the exact phrase in the
Markdown content where it appears.
In `@content/en/docs/v1/networking/vpc.md`:
- Around line 10-14: This change was made directly to the autogenerated doc;
revert the direct edit and update the upstream source instead: open
packages/apps/vpc/README.md in the cozystack/cozystack repo and confirm the
"paas-full" → "isp-full" change is present there, update that README if needed,
then run hack/update_apps.sh (or the repository's regeneration process) to
regenerate content/en/docs/v1/networking/vpc.md from
content/en/docs/v1/networking/_include/vpc.md and the upstream README so the
change persists and the header warning remains accurate.
---
Duplicate comments:
In `@content/en/docs/v1/operations/configuration/platform-package.md`:
- Around line 7-8: Update the frontmatter aliases/redirects in
platform-package.md so the old URL /docs/v1/operations/configuration/configmap
is listed as a redirect to the new page (platform-package) and remove any entry
that would redirect the new page to itself; specifically edit the
aliases/redirect_from section in
content/en/docs/v1/operations/configuration/platform-package.md to include the
old path (/docs/v1/operations/configuration/configmap) and ensure there is no
self-referential alias pointing platform-package back to platform-package.
In `@content/en/docs/v1/operations/upgrades/_index.md`:
- Around line 28-29: Update the prerequisites line for Helm to specify a minimum
version that supports the --take-ownership flag (Helm v3.17.0); edit the list
entry that currently reads "helm — required for installing the new operator" to
mention "helm (>= v3.17.0) — required for installing the new operator" and
optionally add a short parenthetical note that Step 1 uses the --take-ownership
flag so older Helm versions (<= v3.16.x) will fail.
In `@content/en/docs/v1/virtualization/proxmox-migration.md`:
- Around line 23-57: Update the note and patches so they clearly warn that the
"exposedServices" array replacement will remove any services not listed
(referencing the exposedServices array) and ensure the kubevirt-cdi Package
patch uses the exact package name used elsewhere (cozystack.kubevirt-cdi) to
match virtualization/_index.md; if the canonical package name differs, change
the patch target to the correct package name and call out the uploadProxyURL
value update for the kubevirt-cdi component.
---
Nitpick comments:
In `@content/en/docs/v1/operations/upgrades/_index.md`:
- Around line 95-99: The migration instruction currently downloads the script
from the repository "main" branch (the curl | bash URL) which is not
reproducible; update the URL to reference the specific release tag for v1.0 (or
the intended release) instead of "main" so the exact script version is fetched,
and make the same change for the alternate download-and-inspect command
mentioned later (the download URL on lines 112–113) so both examples point to
the same pinned release tag.
In `@content/en/docs/v1/storage/nfs.md`:
- Around line 14-32: Move the warning alert (the {{% alert color="warning" %}}
block) so it appears immediately before the kubectl patch code block rather than
after it; update the document around the kubectl patch command and the {{% alert
%}} block so the caution about JSON Merge Patch replacing arrays wholesale is
visible above the kubectl patch example (refer to the kubectl patch command and
the {{% alert color="warning" %}} block to locate the elements to reorder).
In `@layouts/shortcodes/reuse-values-warning.html`:
- Around line 4-5: Replace the presentational line breaks with semantic
paragraph elements in the reuse-values-warning snippet: remove the literal
"<br/><br/>" and wrap the sentence "If you have custom values (e.g.,
<code>disableTelemetry</code>), pass them explicitly with <code>--set</code>."
in a proper <p>…</p> element so screen readers and CSS can target a semantic
paragraph; ensure the paragraph is correctly opened and closed within the same
snippet.
| First, patch the Platform Package with the external IPs: | ||
|
|
||
| ```bash | ||
| kubectl patch -n cozy-system configmap cozystack --type=merge -p '{ | ||
| "data": { | ||
| "expose-external-ips": "192.168.100.11,192.168.100.12,192.168.100.13" | ||
| kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{ | ||
| "spec": { | ||
| "components": { | ||
| "platform": { | ||
| "values": { | ||
| "publishing": { | ||
| "externalIPs": [ | ||
| "192.168.100.11", | ||
| "192.168.100.12", | ||
| "192.168.100.13" | ||
| ] | ||
| } | ||
| } | ||
| } | ||
| } | ||
| } | ||
| }' |
There was a problem hiding this comment.
Missing array-replacement warning for externalIPs.
externalIPs is an array field. This --type=merge patch replaces it wholesale — the same concern that prompted the warning added for exposedServices at lines 644–646. While the risk is lower here (the field is empty on first install), adding a consistent note prevents confusion for users who revisit this command later.
📝 Suggested addition
First, patch the Platform Package with the external IPs:
+
+> **Note:** This patch replaces the entire `externalIPs` array. Include all IPs you want assigned.
```bash
kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{📝 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.
| First, patch the Platform Package with the external IPs: | |
| ```bash | |
| kubectl patch -n cozy-system configmap cozystack --type=merge -p '{ | |
| "data": { | |
| "expose-external-ips": "192.168.100.11,192.168.100.12,192.168.100.13" | |
| kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{ | |
| "spec": { | |
| "components": { | |
| "platform": { | |
| "values": { | |
| "publishing": { | |
| "externalIPs": [ | |
| "192.168.100.11", | |
| "192.168.100.12", | |
| "192.168.100.13" | |
| ] | |
| } | |
| } | |
| } | |
| } | |
| } | |
| }' | |
| First, patch the Platform Package with the external IPs: | |
| > **Note:** This patch replaces the entire `externalIPs` array. Include all IPs you want assigned. | |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@content/en/docs/v1/getting-started/install-cozystack.md` around lines 472 -
491, Add the same array-replacement warning you added for exposedServices: note
that the kubectl patch using --type=merge will replace the externalIPs array
wholesale (externalIPs under publishing) and can remove existing entries on
re-run; advise users to either supply the complete desired array or use a JSON
patch (kubectl patch --type=json) to add/modify individual elements. Ensure the
warning text references externalIPs and --type=merge so readers understand the
exact risk and alternatives.
| First, patch the Platform Package with IPs to expose: | ||
|
|
||
| ```bash | ||
| kubectl patch -n cozy-system configmap cozystack --type=merge -p '{ | ||
| "data": { | ||
| "expose-external-ips": "192.168.100.11,192.168.100.12,192.168.100.13" | ||
| kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{ | ||
| "spec": { | ||
| "components": { | ||
| "platform": { | ||
| "values": { | ||
| "publishing": { | ||
| "externalIPs": [ | ||
| "192.168.100.11", | ||
| "192.168.100.12", | ||
| "192.168.100.13" | ||
| ] | ||
| } | ||
| } | ||
| } | ||
| } | ||
| } | ||
| }' | ||
| ``` |
There was a problem hiding this comment.
--type=merge replaces the externalIPs array wholesale — note the behavior for subsequent invocations.
If a user adds more nodes later and re-runs this patch with a different set of IPs, the previous list is silently discarded. The PR adds explicit warnings for this behavior in other places; a brief note here would be consistent.
✏️ Proposed fix
+{{% reuse-values-warning %}}
+
```bash
kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@content/en/docs/v1/install/cozystack/_index.md` around lines 550 - 570, Add a
brief warning that using kubectl patch with --type=merge on the Platform Package
will replace the entire externalIPs array, so subsequent runs with different IP
sets will discard previous entries; update the docs around the kubectl patch
example (the command that patches packages.cozystack.io
cozystack.cozystack-platform and the "externalIPs" field) to include a short
note advising users to append or re-run with the full desired list (or use a
different patch strategy) to avoid unintentionally removing existing IPs.
| If you included `dashboard` in `publishing.exposedServices` of your Platform Package, the Cozystack Dashboard should already be available. | ||
|
|
||
| If the initial configmap did not have this line, patch it with the following command: | ||
| If the initial Package did not include it, patch the Platform Package: | ||
|
|
||
| ```bash | ||
| kubectl patch -n cozy-system cm cozystack --type=merge -p '{"data":{ | ||
| "expose-services": "dashboard" | ||
| }}' | ||
| kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{ | ||
| "spec": { | ||
| "components": { | ||
| "platform": { | ||
| "values": { | ||
| "publishing": { | ||
| "exposedServices": ["dashboard"] | ||
| } | ||
| } | ||
| } | ||
| } | ||
| } | ||
| }' | ||
| ``` |
There was a problem hiding this comment.
--type=merge will silently replace the entire exposedServices array — add the reuse-values-warning shortcode here.
A user who initially configured exposedServices: [api, dashboard, cdi-uploadproxy, vm-exportproxy] and later runs this patch to add dashboard will end up with exposedServices: ["dashboard"] only — silently removing all other exposed services. The PR explicitly adds a reuse-values-warning shortcode to address this exact array-wholesale-replacement behavior of JSON Merge Patch, but this patch example is missing it.
Options:
- Add the
reuse-values-warningshortcode above the patch command. - Replace with a JSON Patch (
--type=json) that appends rather than replaces, or document that the user must include all desired entries.
✏️ Proposed fix (option 1 — add shortcode + full-array example)
+{{% reuse-values-warning %}}
+
```bash
kubectl patch packages.cozystack.io cozystack.cozystack-platform --type=merge -p '{
"spec": {
"components": {
"platform": {
"values": {
"publishing": {
- "exposedServices": ["dashboard"]
+ "exposedServices": ["dashboard", "api"]
}
}
}
}
}
}'</details>
<!-- suggestion_start -->
<details>
<summary>📝 Committable suggestion</summary>
> ‼️ **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.
```suggestion
If the initial Package did not include it, patch the Platform Package:
{{% reuse-values-warning %}}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@content/en/docs/v1/install/cozystack/_index.md` around lines 689 - 707, The
patch example uses --type=merge against the exposedServices array which will
silently replace the entire array (exposedServices), so add the
reuse-values-warning shortcode immediately above the kubectl patch example and
either (A) show a full-array example under the patch (e.g., include all desired
entries like "api" and "dashboard" in the exposedServices value) or (B) replace
the merge strategy with a JSON Patch (--type=json) that appends an item;
reference the kubectl patch command, the --type=merge/--type=json flag, the
exposedServices key, and the reuse-values-warning shortcode when making the
change.
| networking: | ||
| ## podSubnets from the node config | ||
| podCIDR: "10.244.0.0/16" | ||
| podGateway: "10.244.0.1" | ||
| ## serviceSubnets from the node config | ||
| serviceCIDR: "10.96.0.0/16" |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
git ls-files | grep -E "hetzner\.md|bundles\.md" | head -20Repository: cozystack/website
Length of output: 334
🏁 Script executed:
wc -l content/en/docs/v1/install/providers/hetzner.mdRepository: cozystack/website
Length of output: 112
🏁 Script executed:
sed -n '340,370p' content/en/docs/v1/install/providers/hetzner.mdRepository: cozystack/website
Length of output: 923
🏁 Script executed:
sed -n '390,400p' content/en/docs/v1/install/providers/hetzner.mdRepository: cozystack/website
Length of output: 506
🏁 Script executed:
rg -n "isp-full" content/en/docs/v1/operations/configuration/bundles.md -A 30 | head -60Repository: cozystack/website
Length of output: 4767
🏁 Script executed:
rg -n "## isp-full|### isp-full" content/en/docs/v1/operations/configuration/bundles.md -A 80 | head -120Repository: cozystack/website
Length of output: 43
🏁 Script executed:
rg -n "joinCIDR" content/en/docs/v1/operations/configuration/bundles.mdRepository: cozystack/website
Length of output: 100
🏁 Script executed:
sed -n '90,115p' content/en/docs/v1/operations/configuration/bundles.mdRepository: cozystack/website
Length of output: 656
🏁 Script executed:
rg -n "joinCIDR" --type yaml -i content/en/docs/Repository: cozystack/website
Length of output: 43
🏁 Script executed:
rg -n "KubeSpan\|WireGuard\|joinSubnets" content/en/docs/v1/ -iRepository: cozystack/website
Length of output: 43
🏁 Script executed:
rg -n "vSwitch\|network\|connectivity" content/en/docs/v1/install/providers/hetzner.md -i -A 2 | head -40Repository: cozystack/website
Length of output: 43
🏁 Script executed:
head -100 content/en/docs/v1/install/providers/hetzner.md | tail -50Repository: cozystack/website
Length of output: 2034
Fix typo: "Cozysatck's" → "Cozystack's" at line 394.
Additionally, the Hetzner isp-full Platform Package omits joinCIDR compared to the generic isp-full example in bundles.md (which includes joinCIDR: "100.64.0.0/16"). While this is intentional—Hetzner's vSwitch provides direct layer-2 node connectivity, eliminating the need for KubeSpan/WireGuard—the documentation should clarify this difference to prevent users from incorrectly copying the generic example into their Hetzner configuration.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@content/en/docs/v1/install/providers/hetzner.md` around lines 356 - 361, Fix
the typo "Cozysatck's" to "Cozystack's" in the document and add a short
clarifying note in the Hetzner `isp-full` Platform Package section explaining
why `joinCIDR` is omitted (reference the `isp-full` example in bundles.md which
includes `joinCIDR: "100.64.0.0/16"`), stating that Hetzner's vSwitch provides
layer‑2 node connectivity so KubeSpan/WireGuard `joinCIDR` is unnecessary and
users should not copy the generic example into their Hetzner config; mention the
keys `joinCIDR`, `isp-full`, and `vSwitch` to locate where to add the
clarification.
| [talos linux]: {{% ref "/docs/v1/guides/platform-stack#talos-linux" %}} | ||
| [kubernetes]: {{% ref "/docs/v1/guides/platform-stack#kubernetes" %}} | ||
| [kubernetes operators]: https://github.com/cozystack/cozystack/blob/c0f742595f1e942a9bf4921e9655142cc9040551/packages/core/platform/bundles/paas-full.yaml#L185-L243 | ||
| [kubernetes operators]: https://github.com/cozystack/cozystack/blob/main/packages/core/platform/templates/bundles/paas.yaml |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Search for paas.yaml and isp variants in templates/bundles directory
echo "=== Checking for files in templates/bundles ==="
fd . packages/core/platform/templates/bundles/ 2>/dev/null || echo "Directory not found or inaccessible"
echo -e "\n=== Searching for references to paas.yaml in markdown ==="
rg "paas\.yaml" --type md
echo -e "\n=== Searching for isp-full and isp-hosted yaml files ==="
rg "isp-(full|hosted)\.yaml" --type md | head -20Repository: cozystack/website
Length of output: 976
Fix stale [kubernetes operators] link that still references old paas.yaml path.
The link at line 58 targets packages/core/platform/templates/bundles/paas.yaml, but other bundle references in the same file point to packages/core/platform/bundles/isp-full.yaml and packages/core/platform/bundles/isp-hosted.yaml (without the "templates/" subdirectory). This path structure mismatch indicates the paas.yaml link was not updated during the paas→isp migration and likely points to a stale or nonexistent path. Update it to reference the correct bundle file or remove it if paas.yaml no longer exists.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@content/en/docs/v1/operations/configuration/bundles.md` at line 58, Update
the stale link target for the [kubernetes operators] reference: replace the old
path "packages/core/platform/templates/bundles/paas.yaml" with the current
bundle path under "packages/core/platform/bundles/" (e.g.,
"packages/core/platform/bundles/isp-hosted.yaml" or
"packages/core/platform/bundles/isp-full.yaml" depending on which bundle is
intended) and verify the referenced file exists in the repo; if the paas.yaml
functionality was removed, remove the link instead.
| To deploy a selected bundle, follow the [Cozystack installation guide]({{% ref "/docs/v1/install/cozystack" %}}) | ||
| or [provider-specific guides]({{% ref "/docs/v1/install/providers" %}}). | ||
| However, if this your first time installing Cozystack, it's best to use the complete bundle `paas-full` and | ||
| However, if this your first time installing Cozystack, it's best to use the complete bundle `isp-full` and |
There was a problem hiding this comment.
Typo: missing "is" — "if this your first time" → "if this is your first time".
✏️ Proposed fix
-However, if this your first time installing Cozystack, it's best to use the complete bundle `isp-full` and
+However, if this is your first time installing Cozystack, it's best to use the complete bundle `isp-full` and📝 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.
| However, if this your first time installing Cozystack, it's best to use the complete bundle `isp-full` and | |
| However, if this is your first time installing Cozystack, it's best to use the complete bundle `isp-full` and |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@content/en/docs/v1/operations/configuration/bundles.md` at line 223, Fix the
typo in the sentence fragment "if this your first time installing Cozystack" by
inserting the missing word "is" so the sentence reads "if this is your first
time installing Cozystack"; update the text near the phrase `isp-full` in the
Bundles documentation (the line containing "if this your first time installing
Cozystack") to use the corrected wording.
| [enable-disable]: {{% ref "/docs/v1/operations/configuration/components#enabling-and-disabling-components" %}} | ||
| [overwrite-parameters]: {{% ref "/docs/v1/operations/configuration/components#overwriting-component-parameters" %}} | ||
| [Resource Management]: {{% ref "/docs/v1/guides/resource-management#cpu-allocation-ratio" %}} | ||
| [oidc]: {{% ref "/docs/v1/operations/oidc" %}} | ||
| [telemetry]: {{% ref "/docs/v1/operations/configuration/telemetry" %}} |
There was a problem hiding this comment.
Unused link reference [overwrite-parameters].
[overwrite-parameters] is defined at line 160 but never referenced as a link anchor in the document body. [telemetry] at line 163 appears to be similarly unused. These orphaned definitions should either be removed or linked somewhere in the text.
🛠️ Proposed fix
[enable-disable]: {{% ref "/docs/v1/operations/configuration/components#enabling-and-disabling-components" %}}
-[overwrite-parameters]: {{% ref "/docs/v1/operations/configuration/components#overwriting-component-parameters" %}}
[Resource Management]: {{% ref "/docs/v1/guides/resource-management#cpu-allocation-ratio" %}}
[oidc]: {{% ref "/docs/v1/operations/oidc" %}}
-[telemetry]: {{% ref "/docs/v1/operations/configuration/telemetry" %}}
[kube-ovn]: https://kubeovn.github.io/docs/en/guide/subnet/#join-subnetOr add prose references in the table where these links are relevant (e.g., link [overwrite-parameters] from the components table rows that discuss overriding values).
📝 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.
| [enable-disable]: {{% ref "/docs/v1/operations/configuration/components#enabling-and-disabling-components" %}} | |
| [overwrite-parameters]: {{% ref "/docs/v1/operations/configuration/components#overwriting-component-parameters" %}} | |
| [Resource Management]: {{% ref "/docs/v1/guides/resource-management#cpu-allocation-ratio" %}} | |
| [oidc]: {{% ref "/docs/v1/operations/oidc" %}} | |
| [telemetry]: {{% ref "/docs/v1/operations/configuration/telemetry" %}} | |
| [enable-disable]: {{% ref "/docs/v1/operations/configuration/components#enabling-and-disabling-components" %}} | |
| [Resource Management]: {{% ref "/docs/v1/guides/resource-management#cpu-allocation-ratio" %}} | |
| [oidc]: {{% ref "/docs/v1/operations/oidc" %}} |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@content/en/docs/v1/operations/configuration/platform-package.md` around lines
159 - 163, Remove or use the two orphaned link reference definitions: either
delete the `[overwrite-parameters]` and `[telemetry]` reference lines from the
link list or add in-text anchors that point to them (for example, link the
components table rows that discuss overriding parameter values to
`[overwrite-parameters]`, and add a mention of telemetry where `[telemetry]` is
relevant); update the same list entries (`[overwrite-parameters]` and
`[telemetry]`) so only referenced link labels remain and ensure any added prose
uses those exact labels to avoid leaving unused definitions.
| Create a namespace `cozy-system`, then apply the ConfigMap created in the previous step and the installer configuration: | ||
| ```bash | ||
| helm install cozystack oci://ghcr.io/cozystack/cozystack/cozy-installer \ | ||
| --version X.Y.Z \ |
There was a problem hiding this comment.
There was a problem hiding this comment.
I think so
| "platform": { | ||
| "values": { | ||
| "publishing": { | ||
| "exposedServices": ["dashboard"] |
There was a problem hiding this comment.
This will disable previusly added
exposedServices:
- dashboard
- api
Summary
cozystack.io/v1alpha1)kubectl applytohelm installwith OCI registryvalues.yaml, including defaults--reuse-valueson operator Helm upgrades (hardcoded OCI repository references in values cause version mismatch)Changed files (15)
Test plan
Summary by CodeRabbit
Documentation Updates
Breaking Changes