Currently keycloak-config-cli can detect configuration errors like missing or unknown attribute only when running against keycloak. Also when editing config files, user have to know upfront which properties are supported which is errorprone and time consuming.
Proposed Solution
It would be helpful if there were some schema support to help with the validation during editing. The schema could also be used to provide code completion in IDEs (vscode and intellij).
It might be necessary to generate Keycloak version specific schema files. Additionally the user should be able to supply the used Keycloak version to automatically use the proper schema file.
keycloak-config-cli should provide a "lint" command to check the configuration for potential unsupported / misspell properties.
Configuration files can be validated automatically before applying a configuration against a Keycloak environment.
Users can get auto-completion for allowed configuration properities.
Problem Statement
Currently keycloak-config-cli can detect configuration errors like missing or unknown attribute only when running against keycloak. Also when editing config files, user have to know upfront which properties are supported which is errorprone and time consuming.
Proposed Solution
It would be helpful if there were some schema support to help with the validation during editing. The schema could also be used to provide code completion in IDEs (vscode and intellij).
One way to implement this is to extract the schemes for the representations from the https://www.keycloak.org/docs-api/latest/rest-api/openapi.json OpenAPI spec and use it to validate the configuration file.
It might be necessary to generate Keycloak version specific schema files. Additionally the user should be able to supply the used Keycloak version to automatically use the proper schema file.
keycloak-config-cli should provide a "lint" command to check the configuration for potential unsupported / misspell properties.
Environment
_noresponse
Additional information
YAML validation with JSON Schema in IntelliJ YAML validation with JSON Schema in vscode
Acceptance Criteria
Configuration files can be validated automatically before applying a configuration against a Keycloak environment. Users can get auto-completion for allowed configuration properities.