Support remote git repository as template source · Issue #1401 · python-semantic-release/python-semantic-release · GitHub
Skip to content

Support remote git repository as template source #1401

Description

@bilelomrani1

Feature Request

Description

Allow template_dir to reference a remote git repository instead of only local filesystem paths.

Use cases

  • Share changelog templates across multiple projects without copy-paste
  • Enable an ecosystem of reusable changelog template repositories
  • Simplify CI workflows by removing manual template download steps

Possible implementation

Support a git URL syntax:

[tool.semantic_release.changelog]
template_dir = "git+https://github.com/user/changelog-templates.git@v1.0.0#templates"

Or explicit configuration:

[tool.semantic_release.changelog.template_source]
repo = "https://github.com/user/changelog-templates.git"
ref = "v1.0.0"  # tag, branch, or commit
path = "templates"  # subdirectory within repo

Using fsspec with its git backend would abstract the storage layer, and support private repositories.

Alternative solutions

  • Download templates in CI before running semantic-release: Works but adds boilerplate to every project's workflow
  • Git submodules: Adds unnecessary complexity for simple template sharing

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureA new feature or a feature requesthelp-wantedExtra attention is required

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions