Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Edka Apps

Community app templates and Helm charts for the Edka app catalog.

This repository is three things at once:

  • The spec. spec/ documents the app-template format and the canonical platform fields. Everything a template needs is in this repository — no internal Edka source access required.
  • The catalog source. The Edka platform syncs release tags of this repository into its app catalog. Apps here appear in every Edka organization's catalog with a Community badge.
  • Standalone Helm charts. Each app's simplified chart under apps/<name>/chart/ is a plain Helm chart. It installs with helm install on any Kubernetes cluster, with or without Edka.

Layout

spec/
  template-format.md    # the app-template YAML format
  canonical-fields.md   # platform contract: database/storage/placement/access fields,
                        # worker-injected variables, generated secrets
apps/
  <name>/
    template.yaml       # the Edka app template
    chart/              # standalone Helm chart (optional per app)
    README.md
skill/
  SKILL.md              # the distiller skill: official chart in, simplified app out
.github/workflows/
  ci.yml                # lint + manifest validation + kind install smoke test
  release.yml           # publishes charts to oci://ghcr.io/edkadigital/charts on tag v*

How apps get into Edka

  1. A pull request adds or changes apps/<name>/ (template, chart, README).
  2. CI lints the chart, validates rendered manifests, and smoke-installs on a kind cluster.
  3. A maintainer reviews and merges. Maintainer review is the trust boundary: community templates render on customers' clusters.
  4. A release tag v* publishes every chart to oci://ghcr.io/edkadigital/charts/<name>.
  5. The Edka platform pins a release tag and syncs its templates into the catalog. Sync validates every template and rejects chart references outside ghcr.io/edkadigital/.

The platform never syncs a floating branch. Catalog changes ride reviewed release tags.

Using a chart without Edka

helm install my-gitea oci://ghcr.io/edkadigital/charts/gitea \
  --version <chart version> \
  --set admin.password=<password> \
  --set-string config.GITEA__database__DB_TYPE=sqlite3

Each chart's README documents its values.

Contributing an app

  1. Read spec/template-format.md and spec/canonical-fields.md.
  2. Copy the structure of apps/gitea/ — it is the reference implementation.
  3. Keep the chart simplified: no bundled databases or caches, no ingress templates, no monitoring stacks. Databases come from the platform's canonical fields; exposure comes from the platform's gateway plane.
  4. Secret and password fields never carry defaults. Use generate: true for values the platform should generate at install time.
  5. Pin images by tag. Chart references in templates must point at oci://ghcr.io/edkadigital/charts/<name>.
  6. Open a pull request. CI must pass; a maintainer review is required.

License

Apache-2.0. See LICENSE.

About

Community apps for Edka: simplified charts + app templates

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages