feat: headless login for services, and levior repo log #31

Merged
simlau merged 1 commit from simlau/headless into main 2026-10-28 13:14:00 +00:00
Owner

Holmes runs the CLI in the cluster, where nobody can log in through a
browser:

  • LEVIOR_CLIENT_ID/LEVIOR_CLIENT_SECRET/LEVIOR_PROJECT_ID: a Zitadel
    machine user's client credentials. The JWT access token has the project
    as audience and the team roles as groups, by scope (tested against
    idp.levior.io with infra's holmes user). Not stored.
  • LEVIOR_FORGEJO_TOKEN: a Forgejo token for levior pr and repo log.
  • cli-api accepts the project (PROJECT_ID) as a second audience and names
    a caller without email by its client_id.
  • levior repo log: commit history with each author's Forgejo login, so
    Holmes can tie an image's sha to its commit and author.
Holmes runs the CLI in the cluster, where nobody can log in through a browser: - LEVIOR_CLIENT_ID/LEVIOR_CLIENT_SECRET/LEVIOR_PROJECT_ID: a Zitadel machine user's client credentials. The JWT access token has the project as audience and the team roles as groups, by scope (tested against idp.levior.io with infra's holmes user). Not stored. - LEVIOR_FORGEJO_TOKEN: a Forgejo token for levior pr and repo log. - cli-api accepts the project (PROJECT_ID) as a second audience and names a caller without email by its client_id. - levior repo log: commit history with each author's Forgejo login, so Holmes can tie an image's sha to its commit and author.
feat: headless login for services, and levior repo log
All checks were successful
ci / test (pull_request) Successful in 29s
ci / image-build (pull_request) Successful in 6s
ci / image (pull_request) Has been skipped
ci / release (pull_request) Has been skipped
6fda1624ef
Holmes runs the CLI in the cluster, where nobody can log in through a
browser:
- LEVIOR_CLIENT_ID/LEVIOR_CLIENT_SECRET/LEVIOR_PROJECT_ID: a Zitadel
  machine user's client credentials. The JWT access token has the project
  as audience and the team roles as groups, by scope (tested against
  idp.levior.io with infra's holmes user). Not stored.
- LEVIOR_FORGEJO_TOKEN: a Forgejo token for levior pr and repo log.
- cli-api accepts the project (PROJECT_ID) as a second audience and names
  a caller without email by its client_id.
- levior repo log: commit history with each author's Forgejo login, so
  Holmes can tie an image's sha to its commit and author.
simlau merged commit e62b119ebe into main 2026-10-28 13:14:00 +00:00
simlau deleted branch simlau/headless 2026-10-28 13:14:00 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
levior/cli!31
No description provided.