Support pre release

This commit is contained in:
Adham Helal
2016-08-01 14:23:39 +02:00
parent 7d10e39540
commit cc5e9dc7f5
4 changed files with 14 additions and 1 deletions

View File

@@ -28,6 +28,11 @@ Fetches and creates versioned GitHub resources.
will be detected and published. Note that releases must have semver compliant
tags to be detected, even if they're drafts.
* `pre_release`: *Optional. Default `false`.* When set to `true`, `put` produces
pre-release and `check` only detects prereleases. If `false`, only non-prerelease releases
will be detected and published. Note that releases must have semver compliant
tags to be detected.
### Example
``` yaml

View File

@@ -35,6 +35,10 @@ func (c *CheckCommand) Run(request CheckRequest) ([]Version, error) {
if request.Source.Drafts != *release.Draft {
continue
}
if request.Source.PreRelease != *release.Prerelease {
continue
}
if release.TagName == nil {
continue
}
@@ -67,7 +71,7 @@ func (c *CheckCommand) Run(request CheckRequest) ([]Version, error) {
for _, release := range filteredReleases {
if !upToLatest {
if *release.Draft {
if *release.Draft || *release.Prerelease {
id := *release.ID
upToLatest = request.Version.ID == strconv.Itoa(id)
} else {

View File

@@ -58,12 +58,14 @@ func (c *OutCommand) Run(sourceDir string, request OutRequest) (OutResponse, err
}
draft := request.Source.Drafts
prerelease := request.Source.PreRelease
release := &github.RepositoryRelease{
Name: github.String(name),
TagName: github.String(tag),
Body: github.String(body),
Draft: github.Bool(draft),
Prerelease: github.Bool(prerelease),
TargetCommitish: github.String(targetCommitish),
}
@@ -89,6 +91,7 @@ func (c *OutCommand) Run(sourceDir string, request OutRequest) (OutResponse, err
existingRelease.Name = github.String(name)
existingRelease.TargetCommitish = github.String(targetCommitish)
existingRelease.Draft = github.Bool(draft)
existingRelease.Prerelease = github.Bool(prerelease)
if bodySpecified {
existingRelease.Body = github.String(body)

View File

@@ -8,6 +8,7 @@ type Source struct {
GitHubUploadsURL string `json:"github_uploads_url"`
AccessToken string `json:"access_token"`
Drafts bool `json:"drafts"`
PreRelease bool `json:"pre_release"`
}
type CheckRequest struct {