| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-05-19 | 14.6 kB | |
| v1.3.4 source code.tar.gz | 2026-05-19 | 5.2 MB | |
| v1.3.4 source code.zip | 2026-05-19 | 7.2 MB | |
| openapi.json | 2026-05-19 | 2.5 MB | |
| cozypkg-checksums.txt | 2026-05-19 | 564 Bytes | |
| cozypkg-windows-arm64.tar.gz | 2026-05-19 | 17.2 MB | |
| cozypkg-darwin-amd64.tar.gz | 2026-05-19 | 20.0 MB | |
| cozypkg-darwin-arm64.tar.gz | 2026-05-19 | 18.6 MB | |
| cozypkg-linux-amd64.tar.gz | 2026-05-19 | 19.0 MB | |
| cozypkg-linux-arm64.tar.gz | 2026-05-19 | 17.2 MB | |
| cozypkg-windows-amd64.tar.gz | 2026-05-19 | 19.1 MB | |
| initramfs-metal-amd64.xz | 2026-05-19 | 146.9 MB | |
| kernel-amd64 | 2026-05-19 | 21.6 MB | |
| nocloud-amd64.raw.xz | 2026-05-19 | 335.7 MB | |
| metal-amd64.raw.xz | 2026-05-19 | 335.7 MB | |
| metal-amd64.iso | 2026-05-19 | 521.5 MB | |
| cozystack-operator-hosted.yaml | 2026-05-19 | 2.5 kB | |
| cozystack-operator-generic.yaml | 2026-05-19 | 2.6 kB | |
| cozystack-operator-talos.yaml | 2026-05-19 | 2.5 kB | |
| cozystack-crds.yaml | 2026-05-19 | 19.1 kB | |
| Totals: 20 Items | 1.5 GB | 0 | |
v1.3.4 (2026-05-19)
A patch release that wires OpenSearch into the PaaS bundle on 1.3 (so the operator and dashboard entry actually deploy when bundles.paas.enabled=true) and fixes a Harbor reconciliation regression that prevented the Harbor app from coming up cleanly when the COSI BucketAccess Secret had not been populated yet. Documentation and the bundled talm CLI also moved forward during this release window.
Features and Improvements
No notable user-facing features in this patch release.
Fixes
-
fix(platform,dashboard): wire OpenSearch into PaaS bundle and form overrides: OpenSearch has shipped as a complete package set on the 1.3 line —
packages/apps/opensearch/,packages/system/opensearch-operator/,packages/system/opensearch-rd/, and thecozystack.opensearch-*PackageSources — but the PaaS bundle template never referenced the OpenSearch PackageSources. On any 1.3 cluster withbundles.paas.enabled=true, that meantopensearch-operatorwas never deployed (noOpenSearchClusterCRD on the cluster), theopensearch-rdrelease was never deployed (noApplicationDefinition/opensearch), and the dashboard catalog had no OpenSearch entry — tenants could not createopensearches.apps.cozystack.io. Two changes ship here: (1)packages/core/platform/templates/bundles/paas.yamlnow referencescozystack.opensearch-operatorandcozystack.opensearch-application, matching every other DB application; and (2)internal/controller/dashboard/customformsoverride.go(and its unit test) addOpenSearchto theStorageClasslistInput override case, so the create-formstorageClassfield renders as a dropdown in the legacy openapi-ui dashboard that ships with 1.3. (The new cozystack-ui in 1.4 derives this widget client-side from the schema, so the form-override half is not needed on main — see counterpart [#2648].) (@myasnikovdaniil in [#2649]). -
fix(harbor): drive
bucket-secret.yamlfrom values, gate HelmRelease onBucketInfo: Previously the Harbor system chart rendered its*-registry-s3Secret by callinglookupagainst the COSI BucketAccess credentials Secret. On the first reconcile that Secret does not yet exist, so the template crashed withindex of untyped niland Harbor never came up. The template is now driven by.Values.bucket.bucketInfo(a JSON string) withdig-based safe accessors, so a missing, empty, or partially-populated value renders nothing instead of erroring. The downstream<release>-systemHelmRelease now sourcesBucketInfothroughvaluesFrom(valuesKey: BucketInfo,targetPath: bucket.bucketInfo) with the defaultoptional: false, which tells helm-controller to refuse to compose values until the COSI BucketAccess controller has populated the Secret — both gating initial reconciliation and forcing a config-digest change (and thus a helm upgrade) once credentials arrive. This is the correct primitive here because FluxHelmRelease.dependsOncannot reference COSI resources directly, and helm-controller's upgrade trigger is digest-based: alookupreturning new data on a later reconcile is not enough to force an upgrade on its own. The now-unusedbucket.secretNamevalue has been dropped from both the system chart'svalues.yamldefault and the apps chart'svalues:block, and a new helm-unittest covers the unset / empty / empty-object / fully-populated render paths (@myasnikovdaniil in [#2528], backport [#2673]).
Documentation
- [website] docs(platform): add guides related managed apps backups: Adds a tenant guide for application backup and recovery across managed Postgres, MariaDB, ClickHouse, and FoundationDB (one-off and scheduled backups, status, in-place or copy restores) and an administrator guide for configuring the backup framework via cluster
BackupClassand driver strategies. The legacy chart-level backup values are marked deprecated with migration guidance (@androndo in cozystack/website#536). - [website] docs(virtualization): document vm-default-images as opt-in package: Adds a "Default Image Collection (opt-in package)" section to the Golden Images page documenting that
vm-default-imagesis disabled by default, the ~320 GiB storage footprint of the default 16-image set, how to enable it viabundles.enabledPackages, and how to overridestorageClassor theimages[]list through thecozystack.vm-default-imagesPackage (@myasnikovdaniil in cozystack/website#538). - [website] docs(talm): init reference + operator extension points: Adds a full
talm initreference page (flag matrix, encrypt/decrypt, key recovery hint,--cluster-endpoint) and documents the new operator extension points (extra*values keys) introduced in talm v0.30.0 (@lexfrei in cozystack/website#537). - [website] docs: lineage-controller-webhook configuration guide: Documents the lineage-controller-webhook component and how to configure it on a Cozystack cluster (@lllamnyp in cozystack/website#513).
- [website] fix(docs): stop autoupdate PRs from rewriting source URLs every run: Pins the autoupdate doc generator so it no longer regenerates the same source URLs on every CI run, eliminating churn-only PRs against the docs site (@myasnikovdaniil in cozystack/website#516).
- [website] docs(resource-management): instance-type resource presets: Adds a reference for instance-type resource presets (CPU, memory, ratio) used by managed workloads, with backticked values for clarity (@lexfrei in cozystack/website#535).
- [website] docs: add platform licenses reference: Adds a licenses page listing all OSS components shipped with Cozystack, with logos and license metadata, surfaced as an OSS-card grid on the docs site (@tym83 in cozystack/website#530).
- [website] docs(networking): clusterDomain is pinned on tenants, drop stale 0.7.0 references: Clarifies that
clusterDomainis pinned on tenant clusters and removes outdated 0.7.0-era references (@lexfrei in cozystack/website#534). - [website] feat(seo): canonical, JSON-LD, sitemap directive, richer meta descriptions: Adds canonical link tags, JSON-LD schemas (including
SoftwareApplication), a Sitemap directive inrobots.txt,llms.txt,noindexfor legacy doc versions, and richer per-page meta descriptions for keyword coverage in search and AI-search engines (@tym83 in cozystack/website#533). - [website] feat(docs): added guide about backup workloads from managed k8s: New how-to guide for backing up workloads running inside managed tenant Kubernetes clusters with the Velero addon, including SeaweedFS bucket setup and credential extraction (@androndo in cozystack/website#528).
- [website] docs(networking): document publishing.proxyProtocol + ouroboros hairpin-NAT fix: Documents
publishing.proxyProtocoland explains the ouroboros hairpin-NAT fix for in-cluster clients reaching their own public IPs (@lexfrei in cozystack/website#527). - [website] docs(storage): add LINSTOR GUI documentation: Documents the LINSTOR GUI bundled with Cozystack — how to access it and what it exposes (@myasnikovdaniil in cozystack/website#521).
- [website] docs(virtualization): update vm-image guide for golden images / vm-default-images: Rewrites the VM image guide around the golden-image /
vm-default-imagesworkflow that ships in the v1.3 line (@myasnikovdaniil in cozystack/website#520). - [website] chore(ci): remove obsolete update-managed-apps cron workflow: Removes the obsolete
update-managed-appscron workflow from the docs site CI (@myasnikovdaniil in cozystack/website#519). - [website] fix(ci): skip prereleases when picking openapi.json release: The OpenAPI spec download step in the GitHub Pages build now skips prereleases so the docs site always picks up the latest stable
openapi.json(@myasnikovdaniil in cozystack/website#515). - [website] fix: refresh OSS health snapshots monthly: Keeps the OSS Health page's telemetry snapshot stable by refreshing it on a monthly cadence rather than on every build (@tym83 in cozystack/website#531).
Other repositories
- [talm] v0.25.1 → v0.30.0: Significant
talmdevelopment in this window. Major user-visible changes:- Breaking —
-nshorthand for--nodesdropped (talm v0.28.0, #197): the long form--nodes <IP>is unchanged, but-n IPno longer works. The shorthand was silently absorbing-n <value>typed after a wrapped talosctl subcommand (e.g.talm get hostnames -n networkparsednetworkas an additional node and failed inside the gRPC resolver with "produced zero addresses"); operators withkubectl -n <ns>muscle memory now get a cleanflag -n not definedfrom cobra instead. Update scripts and docs accordingly (@lexfrei in cozystack/talm#197). - Behaviour change —
talm initrefuses inside an existing project (talm v0.27.0, #161): pass--root .to create a sub-project under the current directory anyway, or run from the ancestor root to re-init it.--root <path>on subcommands (apply,template,talosconfig,kubeconfig,rotate-ca) now also correctly opts out of the implicit CWD walk-up — previously the flag was silently ignored on subcommands (@lexfrei in cozystack/talm#161). - Apply-time safety gates (talm v0.28.0, #173, #200):
talm applynow refuses to apply if declared resources don't exist on the node, and previews/verifies drift before mutating state. Follow-ups (#189, #190, #191, #192) round out the UX. The first-ffile anchors the project root and later-ffiles are treated as patches (@lexfrei in cozystack/talm#173, #200). talm resetpreserves META by default (talm v0.28.0, #185): operators no longer wipe Talos META during a reset unless they explicitly opt in (@lexfrei in cozystack/talm#185).talm upgradenow sources the image fromvalues.yaml, not the rendered node body, and point-patchesinstall.imageafter a successful upgrade so the next render matches reality (talm v0.29.0 and v0.30.0, #204, #211). Fixes drift between what was upgraded to and what subsequent renders would produce (@lexfrei in cozystack/talm#204, #211).- VIP / floatingIP correctness (talm v0.27.0–v0.28.x, #163, #145, #147, #201): VIP is now pinned to a subnet-matching link (longest-prefix match) instead of the default-route link, IPv6 Hetzner topologies are pinned, empty bond configs are skipped, malformed CIDRs are filtered, and the v1.12 multi-doc network renderer was rewritten for full link coverage.
--endpointsis honored in bothinitand thetalosconfigregenerate flow (#202). - Reliability (talm v0.27.0):
RotateKeysis now atomic — backup-and-restore on any phase failure, no partial state on disk (#159).talm initis all-or-nothing: every destination is pre-checked before the first write, so aChart.yamlconflict no longer leavestalosconfig/talm.key/secrets.encrypted.yamlstranded. Encryption helpers writesecrets.yamland encrypted output with mode0600. IPv6 endpoint normalisation preserves brackets. - Engine (#139, #146):
talm applyis now idempotent for object-array andmerge:replacefields, and$patch:deleteon absent paths is a no-op instead of an error. - Operator extension points + presets (talm v0.30.0, #211): exposes Talos operator extension points (
extra*values keys) in the cozystack and generic presets, allowing operators to extend node configs without forking the chart (@lexfrei in cozystack/talm#211). talm dmesgretired (talm v0.29.0, #207): retired ahead of the upstream removal; operators are redirected totalm logs kernel(@lexfrei in cozystack/talm#207).- UX hardening (talm v0.28.0, #197): persistent flags reworked, crashdump and kubeconfig hints on failure,
dmesgcushion, TUI refusal in non-interactive contexts, rich shell autocompletion for presets, modes, files, and talosconfig (#204), and--setwarns when the value looks like a bare IP that should have been--set-string. - Other (#148): the cluster name can now be overridden via chart values (@dislogical in cozystack/talm#148).
- Breaking —
Contributors
Thanks to everyone who contributed to this patch release:
Full Changelog: https://github.com/cozystack/cozystack/compare/v1.3.3...v1.3.4