Skip to content

AttributeError: 'Settings' object has no attribute 'GITHUB'. Did you mean: 'GITLAB'? #2427

@misery

Description

@misery

Git provider

Gitlab

System Info

If I try to spawn the docker image pragent/pr-agent:latest for gitlab only I receive a stacktrace.

config:

[config]
model="Qwen/Qwen3-Coder-30B-A3B-Instruct-FP8"
git_provider="gitlab"

[gitlab]
url = "https://gitlab.XXX.de"
expand_submodule_diffs = false
pr_commands = [
    "/describe --pr_description.final_update_message=false",
    "/review",
    "/improve",
]
handle_push_trigger = false
push_commands = [
    "/describe",
    "/review",
]

ssl_verify = true

If I add this snippet - it works. But that should not be needed for gitlab only config.

[github]
ratelimit_retries = 3

Bug details

$ docker compose up
[+] up 1/1
 ✔ Container pr-or-1 Recreated                                                                                                                                                                        0.0s
Attaching to or-1
or-1  | 2026-06-05 10:46:38.098 | WARNING  | pr_agent.custom_merge_loader:load:63 - Settings file not found: /app/pr_agent/settings_prod/.secrets.toml. Skipping it.
or-1  | Traceback (most recent call last):
or-1  |   File "/app/pr_agent/cli.py", line 5, in <module>
or-1  |     from pr_agent.agent.pr_agent import PRAgent, commands
or-1  |   File "/app/pr_agent/agent/pr_agent.py", line 9, in <module>
or-1  |     from pr_agent.git_providers.utils import apply_repo_settings
or-1  |   File "/app/pr_agent/git_providers/__init__.py", line 12, in <module>
or-1  |     from pr_agent.git_providers.github_provider import GithubProvider
or-1  |   File "/app/pr_agent/git_providers/github_provider.py", line 32, in <module>
or-1  |     class GithubProvider(GitProvider):
or-1  |   File "/app/pr_agent/git_providers/github_provider.py", line 221, in GithubProvider
or-1  |     tries=get_settings().github.ratelimit_retries, delay=2, backoff=2, jitter=(1, 3))
or-1  |           ^^^^^^^^^^^^^^^^^^^^^
or-1  |   File "/usr/local/lib/python3.12/site-packages/dynaconf/base.py", line 145, in __getattr__
or-1  |     value = getattr(self._wrapped, name)
or-1  |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
or-1  |   File "/usr/local/lib/python3.12/site-packages/dynaconf/base.py", line 328, in __getattribute__
or-1  |     return super().__getattribute__(name)
or-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
or-1  | AttributeError: 'Settings' object has no attribute 'GITHUB'. Did you mean: 'GITLAB'?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions