GitHub user stephen-bracken created a discussion: Keycloak returns 'error: 404
not found' when setting up provider
Hi all, I am having trouble running the `airflow keycloak-auth-manager
create-all` command. Does anyone know what is causing this error please?
Info below:
Error:
```
Traceback (most recent call last):
File "/turbo/sbracken/pyenvs/airflow-test/bin/airflow", line 8, in <module>
sys.exit(main())
^^^^^^
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/__main__.py",
line 55, in main
args.func(args)
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/cli/cli_config.py",
line 49, in command
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/utils/cli.py",
line 114, in wrapper
return f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/utils/providers_configuration_loader.py",
line 54, in wrapped_function
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/providers/keycloak/auth_manager/cli/utils.py",
line 43, in wrapper
result = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/providers/keycloak/auth_manager/cli/commands.py",
line 116, in create_all_command
_create_scopes(client, client_uuid, _dry_run=args.dry_run)
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/providers/keycloak/auth_manager/cli/utils.py",
line 77, in wrapper
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/airflow/providers/keycloak/auth_manager/cli/commands.py",
line 170, in _create_scopes
client.create_client_authz_scopes(client_id=client_uuid, payload=scope)
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/keycloak/keycloak_admin.py",
line 3174, in create_client_authz_scopes
res = raise_error_from_response(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File
"/turbo/sbracken/pyenvs/airflow-test/lib/python3.11/site-packages/keycloak/exceptions.py",
line 203, in raise_error_from_response
raise error( # pyright: ignore[reportCallIssue]
keycloak.exceptions.KeycloakPostError: 404: b'{"error":"HTTP 404 Not Found"}'
```
Airflow version: 3.1.6
Providers:
```
apache-airflow-providers-cncf-kubernetes | 10.12.0
apache-airflow-providers-common-compat | 1.12.0
apache-airflow-providers-common-io | 1.7.1
apache-airflow-providers-common-sql | 1.30.3
apache-airflow-providers-git | 0.2.1
apache-airflow-providers-http | 5.6.3
apache-airflow-providers-keycloak | 0.5.0
apache-airflow-providers-smtp | 2.4.2
apache-airflow-providers-standard | 1.10.3
```
configuration:
```
auth_manager =
airflow.providers.keycloak.auth_manager.keycloak_auth_manager.KeycloakAuthManager
...
[keycloak_auth_manager]
client_id = airflow_local
client_secret = XXXXXXXXXXXXXXXXXXXX
realm = master
server_url = http://myserver:8880/
```
keycloak docker-compose:
```
version: "3.7"
services:
keycloak:
container_name: keycloak_app
image: quay.io/keycloak/keycloak:26.0.5
restart: always
environment:
KC_HOSTNAME: myserver
KC_HTTP_ENABLED: true
KC_HTTP_PORT: 48080
KEYCLOAK_ADMIN: admin
KEYCLOAK_ADMIN_PASSWORD: admin
KC_DB: postgres
KC_DB_URL: jdbc:postgresql://keycloak_postgres/keycloak
KC_DB_USERNAME: admin
KC_DB_PASSWORD: admin
KC_OPENAPI_ENABLED: true
ports:
- 8880:48080
depends_on:
- keycloak_postgres
networks:
- keycloak-network
command:
- start-dev
- "--bootstrap-admin-username"
- "admin"
- "--bootstrap-admin-password"
- "admin"
- "--https-client-auth"
- "request"
- "--https-protocols"
- "any"
- "--verbose"
volumes:
- /etc/ssl/certs:/etc/ssl/certs:ro
keycloak_postgres:
container_name: keycloak_postgres
image: postgres:16-alpine
restart: always
environment:
POSTGRES_DB: keycloak
POSTGRES_USER: admin
POSTGRES_PASSWORD: admin
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- keycloak-network
networks:
keycloak-network:
name: keycloak-network
driver: bridge
volumes:
postgres_data:
```
client configuration:
<img width="1991" height="996" alt="image"
src="https://github.com/user-attachments/assets/48eddf42-b36a-4ba3-b061-3de25d015bf1"
/>
<img width="1025" height="435" alt="image"
src="https://github.com/user-attachments/assets/e37e8ac9-37ec-444c-90df-25a5433352e1"
/>
GitHub link: https://github.com/apache/airflow/discussions/61264
----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]