Skip to main content

Module config

Module config 

Source
Expand description

Per-provider typed configuration.

ReleaseSourceConfig is a tagged enum — each built-in backend has its own typed Params struct, and downstream custom backends use the ReleaseSourceConfig::Custom escape hatch with a freeform BTreeMap<String, String>. This means:

  • Typos surface at serde-deserialize time, not at update time.
  • Every built-in backend is self-documenting via rustdoc on the relevant struct.
  • Third-party plugins remain pluggable without inheriting the built-in param grammar.

Structs§

BitbucketParams
Parameters for a Bitbucket release source.
CodebergParams
Parameters for a Codeberg release source. host is hard-coded to codeberg.org — tool authors who need to point at a different Gitea instance use GiteaParams directly.
DirectParams
Parameters for a “direct” release source.
GiteaParams
Parameters for a Gitea release source. The URL shape mirrors GitHub’s closely enough that one factory powers both gitea and codeberg.
GithubParams
Parameters for a GitHub release source.
GitlabParams
Parameters for a GitLab release source.

Enums§

ReleaseSourceConfig
The unified release-source configuration value. Tool authors normally write this as YAML or TOML in their config file — serde uses the source_type key to pick the variant.