@@ -5,7 +5,7 @@ description: "Learn how to add managed applications from external sources"
55weight : 5
66---
77
8- Since v0.35 .0, Cozystack administrators can add applications from external sources in addition to the standard application catalog.
8+ Since v0.37 .0, Cozystack administrators can add applications from external sources in addition to the standard application catalog.
99These applications will appear in the same application catalog and behave like regular managed applications for platform users.
1010
1111This guide explains howto define a managed application package and how to add it to Cozystack.
@@ -18,26 +18,25 @@ For a reference, see [github.com/cozystack/external-apps-example](https://github
1818
1919Application repository has the following structure:
2020
21- - ` ./apps ` : Helm charts for applications that can be installed from the dashboard.
22- - ` ./core ` : Manifests for the platform.
23- - ` ./core/cozystackresourcedefinitions ` : Manifests with ` CozystackResourceDefinition ` for registering new resources in the Kubernetes API.
24- - ` ./core/marketplacepanels ` : Manifests with ` MarketplacePanel ` for creating application entries in the dashboard.
25- - ` ./system ` : ` HelmReleases ` for system applications and namespaces.
26- - ` ./system/charts ` : Helm charts for system applications that will be installed permanently.
21+ - ` ./packages/core ` : Manifests for the platform configuration and to deploy system applications.
22+ - ` ./packages/system ` : Helm charts for system applications.
23+ - ` ./packages/apps ` : Helm charts for applications that can be installed from the dashboard.
2724
2825Just like standard Cozystack applications, this external application package is using Helm and FluxCD.
29- To learn more about developing application packages, read the FluxCD docs:
26+ To learn more about developing application packages, read Cozystack [ Developer Guide] ( /docs/development/ )
27+
28+ These FluxCD documents will help you understand the resources used in this guide:
3029
31- - [ HelmRelease] ( https://fluxcd.io/flux/components/helm/helmreleases/ )
3230- [ GitRepository] ( https://fluxcd.io/flux/components/source/gitrepositories/ )
33- - [ Kustomization ] ( https://fluxcd.io/flux/components/kustomize/kustomizations / )
31+ - [ HelmRelease ] ( https://fluxcd.io/flux/components/helm/helmreleases / )
3432
3533## 2. Add the Application Package with a Manifest
3634
37- Create a manifest file with resources ` GitRepository ` and ` Kustomization ` , as in the example:
35+ Create a manifest file with resources ` GitRepository ` and ` HelmRelease ` , as in the example:
3836
3937
4038``` yaml
39+ ---
4140apiVersion : source.toolkit.fluxcd.io/v1
4241kind : GitRepository
4342metadata :
@@ -48,22 +47,24 @@ spec:
4847 ref :
4948 branch : main
5049 timeout : 60s
51- url : https://github.com/<org>/<your-repo-name> .git
50+ url : https://github.com/cozystack/external-apps-example .git
5251---
53- apiVersion : kustomize .toolkit.fluxcd.io/v1
54- kind : Kustomization
52+ apiVersion : helm .toolkit.fluxcd.io/v2
53+ kind : HelmRelease
5554metadata :
5655 name : external-apps
57- namespace : cozy-public
56+ namespace : cozy-system
5857spec :
59- force : false
60- interval : 10m0s
61- path : ./
62- prune : true
63- sourceRef :
64- kind : GitRepository
65- name : external-apps
66- ---
58+ interval : 5m
59+ targetNamespace : cozy-system
60+ chart :
61+ spec :
62+ chart : ./packages/core/platform
63+ sourceRef :
64+ kind : GitRepository
65+ name : external-apps
66+ namespace : cozy-public
67+ version : ' *'
6768` ` `
6869
6970For a detailed reference, read [Git Repositories in Flux CD](https://fluxcd.io/flux/components/source/gitrepositories/).
0 commit comments