Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Action ¶
type Action string
Action represents the release management action to perform
func ValidateAction ¶
ValidateAction checks if the action is valid
type GitHubRelease ¶
type GitHubRelease struct {
ID int64 `json:"id"`
TagName string `json:"tag_name"`
TargetCommitish string `json:"target_commitish"`
Name string `json:"name"`
Body string `json:"body"`
Draft bool `json:"draft"`
Prerelease bool `json:"prerelease"`
URL string `json:"url"`
HTMLURL string `json:"html_url"`
}
GitHubRelease represents a GitHub release
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager handles GitHub release operations
func NewManager ¶
NewManager creates a new release manager. It respects GITHUB_API_URL for GitHub Enterprise or test environments.
func NewManagerWithURL ¶
NewManagerWithURL creates a release manager with a custom API URL. Use this for testing or when GITHUB_API_URL isn't set.
type Options ¶
type Options struct {
Action Action
Environment string
SHA string
Tag string
Changelog string
PreviousTag string // Tag to compare against for "What's Changed" link
NewTag string // New tag for publish (semver) - replaces short-sha tag
DeleteTag string // Tag to delete after publish (short-sha cleanup)
CreateTag bool // Whether to create the git tag (for initial release)
// KnownReleaseID is the GitHub release ID returned by a preceding ActionCreate
// in the same workflow step. When set, ActionPrerelease and ActionLock use it
// directly instead of re-discovering the release by tag, eliminating the
// eventual-consistency window between draft creation and the list endpoint.
KnownReleaseID int64
}
Options contains the parameters for release operations
Click to show internal directories.
Click to hide internal directories.