Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .agents/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,9 @@ editing templates or values.
15. **URL derivation is the chart's core UX.** `PUBLIC_URL`,
`NUXT_PUBLIC_API_URL`, `NUXT_PUBLIC_PUBLIC_URL` derive from the two
ingress blocks; the UI origin is auto-appended to `TRUSTED_ORIGINS`
(`server.trustedOriginsAppendUI`). A missing trusted origin is the #1
(`server.trustedOriginsAppendAdminConsole`). A missing trusted origin is the #1
dead-login misconfiguration. The chart never sets
`NUXT_PUBLIC_COOKIE_DOMAIN`: sharing a cookie domain between client-web
`NUXT_PUBLIC_COOKIE_DOMAIN`: sharing a cookie domain between client-admin-console
and the hosted auth pages is unsupported by authup.
16. **Every list/map passthrough is tpl-rendered** via
`authup.tplvalues.render`, so umbrella charts can inject template
Expand Down
12 changes: 6 additions & 6 deletions .agents/references/authup.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ v1.0.0-beta.58 line (chart `appVersion`).

| Fact | authup source | Chart counterpart |
|---|---|---|
| One image `authup/authup`, arg-dispatched entrypoint (`server/core start`, `client/web start`, `server/core migration run`, `server/core healthcheck`) | `Dockerfile`, `entrypoint.sh` (repo root) | `args` in `templates/{server,ui}/deployment.yaml`, `server/migration-job.yaml` |
| One image `authup/authup`, arg-dispatched entrypoint (`server/core start`, `client/admin-console start`, `server/core migration run`, `server/core healthcheck`) | `Dockerfile`, `entrypoint.sh` (repo root) | `args` in `templates/{server,admin-console}/deployment.yaml`, `server/migration-job.yaml` |
| Entrypoint force-exports `PORT=3000` / `NUXT_PORT=3000` (chart-set PORT is dead) | `entrypoint.sh` | containerPort pinned 3000 everywhere |
| Image runs as root; writable paths `/usr/src/app/writable` + npm cache | `Dockerfile` (`WRITABLE_DIRECTORY_PATH`, no `USER`) | emptyDir mounts + `npm_config_cache=/tmp/.npm-cache`; root securityContext default |
| `latest`/`<version>`/`beta`/`next` tags | `.github/workflows/release.yml`, `docker-nightly.yml` | `image.tag` defaults to `Chart.AppVersion` |
Expand Down Expand Up @@ -39,22 +39,22 @@ Config file: `authup.server.core.conf` in the process cwd
`<writable>/provisioning/*` scanned at boot, fail-closed
(`app/modules/provisioning/module.ts`) -> `server.provisioning.*` mount.

## client-web env surface
## client-admin-console env surface

Runtime config only (prebuilt Nitro bundle; bare `API_URL` etc. are build-time
and dead): `apps/client-web/nuxt.config.ts`,
`docs/src/guide/deployment/configuration-client-web.md`.
and dead): `apps/client-admin-console/nuxt.config.ts`,
`docs/src/guide/deployment/configuration-client-admin-console.md`.
`NUXT_PUBLIC_API_URL` (browser-reachable server URL), `NUXT_PUBLIC_PUBLIC_URL`,
`NUXT_API_URL` (SSR-side override), `NUXT_PUBLIC_COOKIE_DOMAIN` (deliberately
never set by the chart: sharing a cookie domain with the server origin is
unsupported per `.agents/architecture.md` in the monorepo). Chart counterpart:
`_ui-env.tpl`.
`_admin-console-env.tpl`.

## Operational contract

- `GET /` = anonymous status endpoint `{version, date, features}`
(`adapters/http/controllers/workflows/status/`) -> liveness/readiness for
server-core; client-web uses its SSR `/`.
server-core; client-admin-console uses its SSR `/`.
- server-core auto-runs migrations + provisioning at boot
(`app/modules/database/module.ts`; no off-switch) -> generous startupProbe;
optional pre-upgrade migration Job for multi-replica DDL serialization.
Expand Down
2 changes: 1 addition & 1 deletion .agents/references/goauthentik-helm.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ auth server).

| Their piece | This repo |
|---|---|
| Per-role template directories, duplication accepted (they built and REVERTED the DRY role-loop in #163: "takes DRY maybe a bit too far") | `templates/server/` + `templates/ui/` |
| Per-role template directories, duplication accepted (they built and REVERTED the DRY role-loop in #163: "takes DRY maybe a bit too far") | `templates/server/` + `templates/admin-console/` |
| Self-contained chart, no library dependency (their k8s-at-home common era died upstream) | zero `dependencies:` in Chart.yaml |
| ct lint + kind `ct install` gated by `ct list-changed`, `ci/*-values.yaml` scenario matrix, `ci/manifests/` fixtures | `.github/workflows/lint-test.yaml` |
| helm-docs drift gate (`git diff` fail step) | hardened variant in CI |
Expand Down
10 changes: 5 additions & 5 deletions .agents/structure.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ authup/helm
│ ├── mysql-values.yaml
│ ├── external-db-values.yaml # externalDatabase + existingSecret, against ci/manifests fixture
│ ├── valkey-values.yaml # cache + 2 replicas + migration hook
│ ├── server-only-values.yaml # headless IdP (ui.enabled=false)
│ ├── server-only-values.yaml # headless IdP (adminConsole.enabled=false)
│ └── manifests/postgres.yaml # fixtures pre-applied before ct install
└── templates/
├── _helpers.tpl # names, labels, images, tplvalues, affinity, securityContext
Expand All @@ -35,7 +35,7 @@ authup/helm
├── _urls.tpl # publicUrl/apiUrl/origin derivation + post-render scheme asserts
├── _ingress.tpl # shared Ingress + HTTPRoute renderers (server and ui call them)
├── _server-env.tpl # configEnv map, secretEnv list, shared volumes (deployment + job)
├── _ui-env.tpl # ui configEnv map
├── _admin-console-env.tpl # ui configEnv map
├── validations.yaml # render-nothing fail-fast guards (cross-field rules)
├── secret.yaml # chart-managed auth secret (admin password, system client, KEK)
├── secret-db.yaml # external-db password secret (no generation fallback)
Expand All @@ -47,7 +47,7 @@ authup/helm
├── server/ # server-core: deployment, service, ingress, httproute,
│ # configmap-env, configmap-configuration, configmap-provisioning,
│ # migration-job, hpa, pdb, networkpolicy, servicemonitor
├── ui/ # client-web: deployment, service, ingress, httproute,
├── ui/ # client-admin-console: deployment, service, ingress, httproute,
│ # configmap-env, hpa, pdb, networkpolicy
├── postgresql/ # built-in instance: statefulset, service, secret
├── mysql/ # built-in instance: statefulset, service, secret
Expand All @@ -57,14 +57,14 @@ authup/helm
## Two components, per-role template directories

`server/` (server-core, the IdP: OAuth2/OIDC surface + SSR auth pages) and
`ui/` (client-web admin console) are separate template directories with ~85%
`ui/` (client-admin-console admin console) are separate template directories with ~85%
similar deployment templates. This duplication is DELIBERATE: authentik built
the DRY role-loop and reverted it ("takes DRY maybe a bit too far", their
PR #163). Do not introduce a role loop. A future authup server/worker split
becomes a third directory with the same skeleton.

Both services run the SAME image (`authup/authup`) with different args
(`server/core start` vs `client/web start`). The image entrypoint force-exports
(`server/core start` vs `client/admin-console start`). The image entrypoint force-exports
`PORT=3000` for both, so `containerPort` is pinned to 3000 everywhere and only
Service ports are values.

Expand Down
2 changes: 1 addition & 1 deletion .agents/testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ helm template test charts/authup # defaults (b
helm template test charts/authup -f charts/authup/ci/valkey-values.yaml
helm template test charts/authup --set server.ingress.enabled=true \
--set server.ingress.hostname=auth.example.com --set server.ingress.tls=true \
--set ui.ingress.enabled=true --set ui.ingress.hostname=app.example.com --set ui.ingress.tls=true
--set adminConsole.ingress.enabled=true --set adminConsole.ingress.hostname=app.example.com --set adminConsole.ingress.tls=true
```

When verifying env wiring, grep the rendered ConfigMaps/Deployments for
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
Helm charts for [Authup](https://authup.org), an authentication & authorization
system. One application chart today: `charts/authup` deploys the two runtime
services of the [authup monorepo](https://github.com/authup/authup) (server-core
IdP/API and the client-web admin UI) plus optional built-in PostgreSQL, MySQL
IdP/API and the client-admin-console admin UI) plus optional built-in PostgreSQL, MySQL
and Valkey instances.

`DESIGN.md` at the repo root is the authoritative design record: every major
Expand Down
20 changes: 10 additions & 10 deletions DESIGN.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ repo; every decision below cites its evidence.
vendored locally (Apache-2.0-clean, bitnami-compatible key names).
2. **Two workloads, one chart, one image.** `authup/authup` is a single image whose
entrypoint dispatches on args: `server/core start` (server-core, the IdP/API) and
`client/web start` (client-web, the Nuxt admin UI). The `authup` CLI supervisor is
`client/admin-console start` (client-admin-console, the Nuxt admin UI). The `authup` CLI supervisor is
**not routable through the container entrypoint** and the monorepo docs pin
"containers with one service each" as the production topology — so the chart
ships two Deployments and never a combined pod.
Expand Down Expand Up @@ -58,7 +58,7 @@ authup/helm
│ │ ├── mysql-values.yaml # bundled mysql
│ │ ├── external-db-values.yaml # externalDatabase + existingSecret fixture
│ │ ├── redis-values.yaml # bundled valkey + replicas 2
│ │ └── server-only-values.yaml # ui.enabled=false (headless deployment)
│ │ └── server-only-values.yaml # adminConsole.enabled=false (headless deployment)
│ ├── ci/manifests/ # fixtures pre-applied before ct install
│ └── templates/
│ ├── _helpers.tpl # names, labels, images (vendored bitnami-compatible)
Expand All @@ -76,7 +76,7 @@ authup/helm
│ ├── server/ # server-core: deployment, service, ingress,
│ │ # httproute, configmap-env, migration-job, hpa,
│ │ # pdb, networkpolicy, servicemonitor
│ ├── ui/ # client-web: deployment, service, ingress,
│ ├── ui/ # client-admin-console: deployment, service, ingress,
│ │ # httproute, configmap-env, hpa, pdb, networkpolicy
│ ├── postgresql/ # optional built-in dev instance (statefulset,
│ │ # service, secret) — docker-official image
Expand All @@ -100,15 +100,15 @@ charts (e.g. an `authup-remote` RBAC chart, authentik-style).

### 3.1 Workloads

| | `server` (server-core) | `ui` (client-web) |
| | `server` (server-core) | `ui` (client-admin-console) |
|---|---|---|
| args | `["server/core", "start"]` | `["client/web", "start"]` |
| args | `["server/core", "start"]` | `["client/admin-console", "start"]` |
| containerPort | 3000 (pinned) | 3000 (pinned) |
| role | OAuth2/OIDC IdP origin + SSR auth pages | admin console, ordinary OAuth2 RP |
| state | stateless w/ external DB+redis | fully stateless |
| probes | httpGet `/` (status endpoint); generous startupProbe (boot = migrate + provision) | httpGet `/` |
| scaling | replicas > 1 **requires redis** (hard template fail) | free |
| default | enabled | enabled (`ui.enabled: false` = headless IdP) |
| default | enabled | enabled (`adminConsole.enabled: false` = headless IdP) |

Per-role template directories, ~85% duplication between the two deployment
templates **accepted deliberately** — authentik tried the DRY role-loop and
Expand All @@ -124,7 +124,7 @@ Vendored helpers (bitnami-compatible semantics, local implementation):

- `authup.fullname` — release-scoped, honors `fullnameOverride` (bitnami key name,
not Authelia's confusing nameOverride-acts-as-fullname variant), 63-char safe.
- `authup.server.fullname` / `authup.ui.fullname` — `<fullname>-server` / `<fullname>-ui`.
- `authup.server.fullname` / `authup.adminConsole.fullname` — `<fullname>-server` / `<fullname>-ui`.
- `authup.labels.standard` / `authup.labels.matchLabels` — the five
`app.kubernetes.io/*` labels; selectors carry ONLY name+instance+component
(user `commonLabels` never leak into immutable selectors — the bitnami `pick`
Expand Down Expand Up @@ -274,7 +274,7 @@ externalRedis:
### 3.7 Ingress and topology

Two-host model as the default (server-core is the IdP origin serving the SSR auth
pages; client-web is an ordinary RP; **cookie-domain sharing between the two is
pages; client-admin-console is an ordinary RP; **cookie-domain sharing between the two is
unsupported by authup** — the chart never sets `NUXT_PUBLIC_COOKIE_DOMAIN` and
validates against foot-guns):

Expand All @@ -296,7 +296,7 @@ publicUrl drift):
- `PUBLIC_URL` ← `server.publicUrl` | derived `http(s)://<server.ingress.hostname><path>`
- `NUXT_PUBLIC_API_URL` ← the same value (browser-reachable, never the cluster
Service DNS; the optional private `NUXT_API_URL` may point in-cluster for SSR)
- `NUXT_PUBLIC_PUBLIC_URL` ← `ui.publicUrl` | derived from `ui.ingress`
- `NUXT_PUBLIC_PUBLIC_URL` ← `adminConsole.publicUrl` | derived from `adminConsole.ingress`
- `TRUSTED_ORIGINS` ← user list ∪ the UI origin (auto-appended unless disabled)
- `TRUST_PROXY` defaults to `"1"` (one ingress hop), not authup's spoofable
`true`-every-hop default.
Expand Down Expand Up @@ -386,7 +386,7 @@ Cross-field rules the JSON schema cannot express, one render-nothing template:
3. `mfa.required` without `mfa.enabled`; `loginThrottle` without event log
(mirrors authup's boot validations — fail at render, not at CrashLoopBackOff).
4. `auth.existingSecret` combined with inline passwords.
5. `ui.enabled` with neither ingress nor explicit `ui.publicUrl` when server
5. `adminConsole.enabled` with neither ingress nor explicit `adminConsole.publicUrl` when server
ingress is on (dead-login trap), and any config that would point the UI cookie
domain at the server host.
6. Tombstones for renamed values (grows over time).
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ on Kubernetes.
## Highlights

- 🔐 **Complete deployment** - the server-core IdP/API (OAuth2 / OpenID Connect,
hosted login & consent pages) and the client-web admin UI, from one chart
hosted login & consent pages) and the client-admin-console admin UI, from one chart
- 🗄️ **Hybrid database model** - built-in PostgreSQL **or** MySQL for a
one-command start, or bring your own external database
- ⚡ **Optional Valkey cache** - built-in instance or external Redis; required
Expand Down Expand Up @@ -100,7 +100,7 @@ key).

| Chart | Description |
|---|---|
| [authup](./charts/authup) | server-core (IdP/API) + client-web (admin UI), optional built-in PostgreSQL / MySQL / Valkey |
| [authup](./charts/authup) | server-core (IdP/API) + client-admin-console (admin UI), optional built-in PostgreSQL / MySQL / Valkey |

## Documentation

Expand Down
19 changes: 18 additions & 1 deletion charts/authup/BREAKING.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,21 @@
This chart uses `0.major.minor` versioning while below 1.0.0: breaking changes
land on the middle digit. Every entry lists the value migrations required.

_No breaking changes yet._
## 0.2.0 (unreleased)

Follows the upstream rename of the admin UI app (authup/authup#3370) and its
dedicated OAuth2 client (authup/authup#3371).

- Values section `ui.*` -> `adminConsole.*`. Every key moves unchanged, e.g.
`ui.enabled` -> `adminConsole.enabled`, `ui.ingress.hostname` ->
`adminConsole.ingress.hostname`.
- `server.trustedOriginsAppendUI` -> `server.trustedOriginsAppendAdminConsole`.
- Rendered resource names change suffix `-ui` -> `-admin-console`
(Deployment, Service, Ingress, ...). Helm re-creates them on upgrade;
expect a brief admin-UI rollout and update anything referencing the old
Service name directly.
- The admin UI container now starts with `client/admin-console start` and
logs in against the per-realm `admin-console` OAuth2 client. Requires an
authup image containing authup/authup#3370 + #3371; older images only know
`client/web` and would crash-loop. Ship this chart version together with
the `appVersion` bump to that release.
Comment on lines +19 to +23

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🩺 Stability & Availability | 🟠 Major | 🏗️ Heavy lift

🧩 Analysis chain

🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

rg -n '^(version|appVersion):' charts/authup/Chart.yaml
rg -n 'AppVersion:|client/admin-console|client/web' \
  charts/authup/README.md \
  charts/authup/templates/admin-console/deployment.yaml

Repository: authup/helm

Length of output: 625


🌐 Web query:

authup/authup #3370 client/admin-console start

💡 Result:

The query authup/authup #3370 does not correspond to a known issue or public discussion related to a client/admin-console start error in the Authup repository [1][2]. Based on the repository's activity, recent relevant PRs and issues (such as #3182 and #3313) have focused on accessibility and database relation handling [3][4][5]. To start the Authup Admin Console (client-web) and Server (server-core), use the following methods: 1. Using the Global CLI: You can start the Authup ecosystem using the npx command [6]: npx authup@latest start 2. Using Docker: Run the client and server components separately via Docker [7][6]: # Start Server docker run -d --name authup-server -p 3001:3000 authup/authup:latest server/core start # Start Client (Admin Console) docker run -d --name authup-client -p 3000:3000 -e NUXT_PUBLIC_API_URL=http://localhost:3001 authup/authup:latest client/web start 3. Development Environment: If you are working within the Authup repository, you can start the components using npm workspaces [6]: # In separate terminals: npm run cli-dev --workspace=apps/server-core -- start npm run dev --workspace=apps/client-web Ensure the NUXT_PUBLIC_API_URL environment variable is correctly pointed to your backend server instance when running the client-web application [7].

Citations:


🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

echo "Charts files:"
git ls-files charts/authup | sed -n '1,120p'

echo
echo "Chart.yaml:"
cat -n charts/authup/Chart.yaml

echo
echo "Package metadata references:"
rg -n '"version"|"appVersion"|authup/authup|authup/admin-console|admin-console|client/admin-console' --glob '!**/node_modules/**' --glob '!**/.git/**' .

Repository: authup/helm

Length of output: 10975


🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

python3 - <<'PY'
try:
    import urllib.request, urllib.error
    from urllib.parse import urlencode, urljoin

    base = "https://api.github.com/repos/authup/authup"
    refs = "/git/refsof/tags/"
    candidates = [
        "1.0.0-beta.58",
        "1.0.0-beta.59",
        "1.0.0",
        "1.0.1",
        "1.0.2",
        "1.1.0",
    ]
    for tag in candidates:
        url = base + refs + urllib.parse.quote(tag)
        try:
            with urllib.request.urlopen(url, timeout=15) as r:
                print(f"{tag}: ok status={r.status}")
        except urllib.error.HTTPError as e:
            print(f"{tag}: api error status={e.code}")
except Exception as exc:
    print(f"git API probe failed: {exc}")
PY

echo
echo "Chart breaking context:"
sed -n '1,35p' charts/authup/BREAKING.md | cat -n

Repository: authup/helm

Length of output: 1652


🌐 Web query:

authup 1.0.0-beta.58 client/admin-console admin-console OAuth2

💡 Result:

Authup is an open-source identity and access management system that provides OAuth2 and OpenID Connect (OIDC) capabilities [1]. The system uses a modular, multi-tenant architecture where entities are organized into realms [1][2]. Regarding your query: 1. Versioning: As of August 2, 2026, the latest major release branch is in the v1.0.0-beta.x series [3]. Development releases, such as v1.0.0-beta.51, are active as of July 2026 [3][4]. While specific beta versions like 1.0.0-beta.58 may exist in the release history or development cycle, documentation and repository activity consistently reference the 1.0.0-beta series [3][4]. 2. Admin Console: Authup includes a web-based administration console (often referred to as client-web or the admin UI) [1][2]. This console interacts with the core Authup REST API to manage realms, users, roles, permissions, and OAuth2 clients [1][2]. 3. OAuth2 Integration: - Built-in Client: Every Authup realm automatically contains a built-in, public OAuth2 client named web [5]. This is the client the web UI uses to handle user logins via the authorization-code flow with PKCE [5]. - Client Configuration: Within the admin console, you can configure custom OAuth2 clients with various authentication methods, such as shared secrets or TLS certificates (mTLS) [6][7][5]. - Declarative Provisioning: Authup supports declarative provisioning, which allows you to define the initial state of clients and their configurations as part of your deployment setup [5]. For technical details on managing OAuth2 clients, configuring trust anchors (Trusted CAs) for TLS authentication, or upgrading between beta versions, please refer to the official Authup documentation [8][6][7].

Citations:


🌐 Web query:

github authup authup release v1.0.0-beta.58 client admin console OAuth2

💡 Result:

Authup is an open-source authentication and authorization framework designed for OAuth2 and OpenID Connect (OIDC) identity management [1][2]. It features a modular, multi-realm architecture that allows for scaling specific components like the REST API and the administrative user interface independently [2][3]. Regarding your query about release v1.0.0-beta.58, as of August 2, 2026, the latest identified release version on the primary repository is v1.0.0-beta.51 [1]. The project maintains an active development cycle on GitHub, using automated release processes to manage versioning [4]. Key features of the Authup admin console and its OAuth2 implementation include: Admin Console: The system provides a web-based administrative UI designed to manage users, permissions, and OAuth2 clients [2][3]. This interface interacts directly with the Authup REST API [3]. OAuth2 Configuration: The admin console allows administrators to configure various OAuth2 client properties, including: - Authentication Methods: Options include None, Shared Secret, and TLS Certificate [5]. - Token Binding: Supports TLS-based token binding to enhance security [5][6]. - Client Management: Administrators can define trust anchors (trusted CAs) for mTLS client authentication directly through the UI in their respective realms [6]. If you are currently deploying or upgrading Authup, you should consult the official upgrade guide to identify any breaking changes or required operator actions associated with newer beta releases, as these are tracked by version [7]. You can monitor the official GitHub repository for the most current release metadata as development progresses beyond v1.0.0-beta.51 [1].

Citations:


Update appVersion to the first release containing the admin-console start/OAuth2 client migration.

charts/authup/Chart.yaml still points at 1.0.0-beta.58, while the workload now uses client/admin-console start. If 1.0.0-beta.58 does not include authup/authup#3370 and #3371, older images can crash-loop; bump appVersion accordingly and regenerate charts/authup/README.md with make docs.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@charts/authup/BREAKING.md` around lines 19 - 23, Update the authup chart’s
appVersion in Chart.yaml to the first release containing the
client/admin-console start and per-realm OAuth2 client changes from
authup/authup#3370 and `#3371`, then regenerate the chart README using make docs
so the documented version stays synchronized.

Source: Coding guidelines

2 changes: 1 addition & 1 deletion charts/authup/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
apiVersion: v2
name: authup
description: Authup is an authentication & authorization system. This chart deploys the server-core IdP/API service and the client-web admin UI, with optional built-in PostgreSQL, MySQL and Valkey instances.
description: Authup is an authentication & authorization system. This chart deploys the server-core IdP/API service and the client-admin-console admin UI, with optional built-in PostgreSQL, MySQL and Valkey instances.
type: application
version: 0.1.0
appVersion: "1.0.0-beta.58"
Expand Down
Loading
Loading