Documentation
¶
Index ¶
- Constants
- func CleanupPreparedNotes(workDir, version string) error
- func CleanupPreparedTagVersion(workDir string) error
- func CleanupPreparedVersion(workDir string) error
- func CleanupTagMessage(workDir string) error
- func GetReleaseNotesFile(version string) string
- func HasPreparedNotes(workDir, version string) bool
- func HasPreparedTagVersion(workDir string) bool
- func HasPreparedVersion(workDir string) bool
- func HasTagMessage(workDir string) bool
- func LoadPreparedNotes(workDir, version string) (string, error)
- func LoadPreparedTagVersion(workDir string) (string, error)
- func LoadPreparedVersion(workDir string) (string, error)
- func LoadTagMessage(workDir string) (string, error)
- func SavePreparedTagVersion(workDir, version string) error
- func SavePreparedVersion(workDir, version string) error
- func SaveTagMessage(workDir, message string) error
- type ArtifactCleanupAction
- type ArtifactListAction
- type ArtifactProvider
- type ArtifactStatsAction
- type CommitInfo
- type CommitPushWatchAction
- type PRAction
- type PRInfo
- type ReleaseAction
- type ReleaseCommitAction
- type ReleasePrepareAction
- type ReleasePreviewAction
- type TagCreateAction
- type TagDeleteAction
- type TagListAction
- type TagPrepareAction
- type TagPreviewAction
- type WorkflowListAction
- type WorkflowRun
- type WorkflowRunsResponse
Constants ¶
const ReleaseNotesFilePattern = ".cidx/release-notes-v%s.md"
ReleaseNotesFilePattern is the pattern for release notes files
const ReleaseVersionFile = ".cidx/release-version"
ReleaseVersionFile is the path where the target version is stored
const TagMessageFile = ".cidx/tag-message"
TagMessageFile is the path where the tag message is stored
const TagVersionFile = ".cidx/tag-version"
TagVersionFile is the path where the target tag version is stored
Variables ¶
This section is empty.
Functions ¶
func CleanupPreparedNotes ¶ added in v1.2.1
CleanupPreparedNotes removes the release notes file after successful release
func CleanupPreparedTagVersion ¶ added in v1.2.1
CleanupPreparedTagVersion removes the version file after successful tag creation
func CleanupPreparedVersion ¶ added in v1.2.1
CleanupPreparedVersion removes the version file after successful release
func CleanupTagMessage ¶ added in v1.2.1
CleanupTagMessage removes the message file after successful tag creation
func GetReleaseNotesFile ¶ added in v1.2.1
GetReleaseNotesFile returns the path for release notes with the given version
func HasPreparedNotes ¶ added in v1.2.1
HasPreparedNotes checks if release notes have been prepared for the given version
func HasPreparedTagVersion ¶ added in v1.2.1
HasPreparedTagVersion checks if a tag version has been prepared
func HasPreparedVersion ¶ added in v1.2.1
HasPreparedVersion checks if a version has been prepared
func HasTagMessage ¶ added in v1.2.1
HasTagMessage checks if a tag message has been prepared
func LoadPreparedNotes ¶ added in v1.2.1
LoadPreparedNotes loads previously prepared release notes for the given version
func LoadPreparedTagVersion ¶ added in v1.2.1
LoadPreparedTagVersion loads the target version from file
func LoadPreparedVersion ¶ added in v1.2.1
LoadPreparedVersion loads the target version from file
func LoadTagMessage ¶ added in v1.2.1
LoadTagMessage loads the tag message from file
func SavePreparedTagVersion ¶ added in v1.2.1
SavePreparedTagVersion saves the target version to a file
func SavePreparedVersion ¶ added in v1.2.1
SavePreparedVersion saves the target version to a file
func SaveTagMessage ¶ added in v1.2.1
SaveTagMessage saves the tag message to a file
Types ¶
type ArtifactCleanupAction ¶ added in v1.2.1
type ArtifactCleanupAction struct {
// contains filtered or unexported fields
}
ArtifactCleanupAction deletes artifacts
func NewArtifactCleanup ¶ added in v1.2.1
func NewArtifactCleanup(provider remote.Provider, deleteAll, expired bool, olderThan int, dryRun bool) *ArtifactCleanupAction
NewArtifactCleanup creates a new artifact cleanup action
type ArtifactListAction ¶ added in v1.2.1
type ArtifactListAction struct {
// contains filtered or unexported fields
}
ArtifactListAction lists all artifacts
func NewArtifactList ¶ added in v1.2.1
func NewArtifactList(provider remote.Provider, verbose bool) *ArtifactListAction
NewArtifactList creates a new artifact list action
type ArtifactProvider ¶ added in v1.2.1
type ArtifactProvider interface {
ListArtifacts(ctx context.Context) (*remote.ArtifactStats, error)
DeleteArtifact(ctx context.Context, artifactID int64) error
DeleteArtifactsBefore(ctx context.Context, before time.Time) (deleted int, freedBytes int64, err error)
DeleteAllArtifacts(ctx context.Context) (deleted int, freedBytes int64, err error)
DeleteExpiredArtifacts(ctx context.Context) (deleted int, freedBytes int64, err error)
}
ArtifactProvider is the interface for artifact operations Only GitHub supports artifacts currently
type ArtifactStatsAction ¶ added in v1.2.1
type ArtifactStatsAction struct {
// contains filtered or unexported fields
}
ArtifactStatsAction shows artifact storage statistics
func NewArtifactStats ¶ added in v1.2.1
func NewArtifactStats(provider remote.Provider) *ArtifactStatsAction
NewArtifactStats creates a new artifact stats action
type CommitInfo ¶ added in v1.2.1
CommitInfo holds parsed commit information
type CommitPushWatchAction ¶
type CommitPushWatchAction struct {
// contains filtered or unexported fields
}
CommitPushWatchAction orchestrates commit, push, and workflow watching
func NewCommitPushWatch ¶
func NewCommitPushWatch(repo *vcs.Repository, provider remote.Provider, message string) *CommitPushWatchAction
NewCommitPushWatch creates a new commit-push-watch action
type PRAction ¶
type PRAction struct {
// contains filtered or unexported fields
}
PRAction manages pull request workflow
func NewPR ¶
func NewPR(repo *vcs.Repository, provider remote.Provider, title, issueNum string, dryRun, readyMode bool) *PRAction
NewPR creates a new PR action
func NewPRMerge ¶
func NewPRMerge(repo *vcs.Repository, provider remote.Provider, mergeMethod string, watchFlow, skipChecks, dryRun bool) *PRAction
NewPRMerge creates a new PR merge action
type ReleaseAction ¶
type ReleaseAction struct {
// contains filtered or unexported fields
}
ReleaseAction orchestrates the release process using dynamic action configuration
func NewRelease ¶
func NewRelease(repo *vcs.Repository, provider remote.Provider, releaseConfig config.ReleaseConfig, actionName string, dryRun bool) *ReleaseAction
NewRelease creates a new release action
type ReleaseCommitAction ¶ added in v1.2.1
type ReleaseCommitAction struct {
// contains filtered or unexported fields
}
ReleaseCommitAction commits prepared release notes
func NewReleaseCommit ¶ added in v1.2.1
func NewReleaseCommit(repo *vcs.Repository, dryRun bool) *ReleaseCommitAction
NewReleaseCommit creates a new release commit action
type ReleasePrepareAction ¶ added in v1.2.1
type ReleasePrepareAction struct {
// contains filtered or unexported fields
}
ReleasePrepareAction prepares release notes for human review
func NewReleasePrepare ¶ added in v1.2.1
func NewReleasePrepare(repo *vcs.Repository, provider remote.Provider, releaseConfig config.ReleaseConfig, dryRun bool) *ReleasePrepareAction
NewReleasePrepare creates a new release prepare action
type ReleasePreviewAction ¶ added in v1.2.1
type ReleasePreviewAction struct {
// contains filtered or unexported fields
}
ReleasePreviewAction shows what will happen during release
func NewReleasePreview ¶ added in v1.2.1
func NewReleasePreview(repo *vcs.Repository, releaseConfig config.ReleaseConfig, dryRun bool) *ReleasePreviewAction
NewReleasePreview creates a new release preview action
type TagCreateAction ¶ added in v1.2.1
type TagCreateAction struct {
// contains filtered or unexported fields
}
TagCreateAction creates and optionally pushes a git tag
func NewTagCreate ¶ added in v1.2.1
func NewTagCreate(repo *vcs.Repository, tagConfig config.TagConfig, dryRun bool) *TagCreateAction
NewTagCreate creates a new tag create action
type TagDeleteAction ¶ added in v1.2.1
type TagDeleteAction struct {
// contains filtered or unexported fields
}
TagDeleteAction deletes a git tag locally and optionally from remote
func NewTagDelete ¶ added in v1.2.1
func NewTagDelete(repo *vcs.Repository, tagConfig config.TagConfig, tagName string, remote, force, dryRun bool) *TagDeleteAction
NewTagDelete creates a new tag delete action
type TagListAction ¶ added in v1.2.1
type TagListAction struct {
// contains filtered or unexported fields
}
TagListAction lists git tags with filtering options
func NewTagList ¶ added in v1.2.1
func NewTagList(repo *vcs.Repository, tagConfig config.TagConfig, limit int, pattern string, verbose bool) *TagListAction
NewTagList creates a new tag list action
type TagPrepareAction ¶ added in v1.2.1
type TagPrepareAction struct {
// contains filtered or unexported fields
}
TagPrepareAction prepares a tag for human review before creation
func NewTagPrepare ¶ added in v1.2.1
func NewTagPrepare(repo *vcs.Repository, tagConfig config.TagConfig, dryRun bool) *TagPrepareAction
NewTagPrepare creates a new tag prepare action
type TagPreviewAction ¶ added in v1.2.1
type TagPreviewAction struct {
// contains filtered or unexported fields
}
TagPreviewAction shows what will happen during tag creation
func NewTagPreview ¶ added in v1.2.1
func NewTagPreview(repo *vcs.Repository, tagConfig config.TagConfig) *TagPreviewAction
NewTagPreview creates a new tag preview action
type WorkflowListAction ¶ added in v1.2.1
type WorkflowListAction struct {
// contains filtered or unexported fields
}
WorkflowListAction lists workflow runs from GitHub Actions
func NewWorkflowList ¶ added in v1.2.1
func NewWorkflowList(workflow string, limit int, verbose bool) *WorkflowListAction
NewWorkflowList creates a new workflow list action
type WorkflowRun ¶ added in v1.2.1
type WorkflowRun struct {
ID int64 `json:"id"`
Name string `json:"name"`
HeadBranch string `json:"head_branch"`
HeadSha string `json:"head_sha"`
Status string `json:"status"`
Conclusion string `json:"conclusion"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
HTMLURL string `json:"html_url"`
RunNumber int `json:"run_number"`
DisplayTitle string `json:"display_title"`
}
WorkflowRun represents a GitHub Actions workflow run
type WorkflowRunsResponse ¶ added in v1.2.1
type WorkflowRunsResponse struct {
TotalCount int `json:"total_count"`
WorkflowRuns []WorkflowRun `json:"workflow_runs"`
}
WorkflowRunsResponse represents the GitHub API response for workflow runs