Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages