Expand description
kaji is a declarative configuration management CLI tool for Keycloak.
It brings GitOps workflows to identity infrastructure, allowing you to define, validate, plan, apply, and drift-detect Keycloak configurations.
Modules§
- apply
- Staged reconciliation logic for Keycloak resources. Apply module for applying local configuration changes to Keycloak.
- args
- Command-line argument parser and command definitions.
- clean
- Logic to clean up configuration files in the workspace. Clean module for cleaning local workspace directories.
- cli
- Scaffolding for interactive command-line initialization. Interactive CLI module for generating local configurations.
- client
- Keycloak Admin REST API HTTP client wrapper.
- init
- Scaffolding for project configuration. Initialization module to scaffold the kaji configuration file.
- inspect
- Inspection pipeline to bootstrap local configuration files.
- models
- Strongly-typed representations of Keycloak resources.
- plan
- Diff calculation and drift planning. Plan module for calculating diffs and detecting configuration drift.
- utils
- Helper utilities (secrets resolvers, YAML helpers, terminal UI).
- validate
- Validation of local workspace YAML configuration files.
Macros§
Structs§
- Profile
- Connection profile details for a target environment.
Functions§
- init_
client - Initializes a
KeycloakClientby logging in using credentials from the CLI or active profile. - init_
secrets - Initializes secret resolvers (environment variables and/or Vault) to substitute secret tokens.
- load_
config_ file - Loads configuration settings from
kaji.toml/.kaji.tomlif present in current directory, or from a custom configuration path. - load_
profile - Loads a profile configuration file from the
profiles/directory in the workspace. - run_app
- Standard entry point that resolves config workspaces and executes command handlers.