Documentation
¶
Overview ¶
Package vcs defines the version control system abstraction layer for querying releases and repository metadata across GitHub and GitLab backends.
The sub-packages provide concrete implementations: github for the GitHub API (repository management, PRs, releases, asset downloads), gitlab for GitLab, release for the unified provider factory, and repo for repository URL parsing and metadata extraction.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ResolveToken ¶
func ResolveToken(cfg config.Containable, fallbackEnv string) string
ResolveToken resolves an authentication token from a config subtree. Resolution order:
- cfg.auth.env — name of an environment variable to read
- cfg.auth.value — literal token value stored in config
- fallbackEnv — a well-known environment variable (pass "" to skip)
Returns an empty string when no token is found; callers decide whether that is an error condition (e.g. private repositories require a token, public repositories can proceed without one).
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package bitbucket provides a release.Provider implementation for Bitbucket Cloud using the Downloads API.
|
Package bitbucket provides a release.Provider implementation for Bitbucket Cloud using the Downloads API. |
|
Package direct provides a release.Provider implementation for tools distributed via arbitrary HTTP servers.
|
Package direct provides a release.Provider implementation for tools distributed via arbitrary HTTP servers. |
|
Package gitea provides a release.Provider implementation for Gitea and Forgejo instances, including Codeberg (codeberg.org).
|
Package gitea provides a release.Provider implementation for Gitea and Forgejo instances, including Codeberg (codeberg.org). |
|
Package github implements the VCS release provider and API client for GitHub repositories, supporting both public and token-authenticated access.
|
Package github implements the VCS release provider and API client for GitHub repositories, supporting both public and token-authenticated access. |
|
Package gitlab implements the VCS release provider for GitLab repositories, supporting both public and token-authenticated access with nested group paths.
|
Package gitlab implements the VCS release provider for GitLab repositories, supporting both public and token-authenticated access with nested group paths. |
|
Package release provides the shared release model (Release, ReleaseAsset) and a Provider factory that resolves the correct VCS backend (GitHub or GitLab) from tool configuration for use by the self-update system.
|
Package release provides the shared release model (Release, ReleaseAsset) and a Provider factory that resolves the correct VCS backend (GitHub or GitLab) from tool configuration for use by the self-update system. |
|
Package repo provides repository URL parsing and metadata extraction, converting host/owner/repo paths into a RepoLike abstraction that supports both GitHub (org/repo) and GitLab (group/subgroup/repo) path formats.
|
Package repo provides repository URL parsing and metadata extraction, converting host/owner/repo paths into a RepoLike abstraction that supports both GitHub (org/repo) and GitLab (group/subgroup/repo) path formats. |