Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 10 additions & 8 deletions src/semantic_release/cli/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@
ParserLoadError,
)
from semantic_release.helpers import dynamic_import
from semantic_release.hvcs.remote_hvcs_base import RemoteHvcsBase
from semantic_release.version.declaration import (
PatternVersionDeclaration,
TomlVersionDeclaration,
Expand Down Expand Up @@ -287,15 +286,18 @@ def set_default_token(self) -> Self:

def _get_default_token(self) -> str | None:
hvcs_client_class = _known_hvcs[self.type]
default_hvcs_instance = hvcs_client_class("git@example.com:owner/project.git")
if not isinstance(default_hvcs_instance, RemoteHvcsBase):
return None

default_token_name = default_hvcs_instance.DEFAULT_ENV_TOKEN_NAME
if not default_token_name:
return None
default_token_name = (
getattr(hvcs_client_class, "DEFAULT_ENV_TOKEN_NAME") # noqa: B009
if hasattr(hvcs_client_class, "DEFAULT_ENV_TOKEN_NAME")
else ""
)

return EnvConfigVar(env=default_token_name).getvalue()
return (
EnvConfigVar(env=default_token_name).getvalue()
if default_token_name
else None
)

@model_validator(mode="after")
def check_url_scheme(self) -> Self:
Expand Down