Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ Flags:
--skip-existing Skip upload if release exists
-t, --token string GitHub Auth Token
--make-release-latest bool Mark the created GitHub release as 'latest' (default "true")
--pre-release Mark the release as a pre-release
--packages-with-index Host the package files in the GitHub Pages branch

Global Flags:
Expand Down
1 change: 1 addition & 0 deletions cr/cmd/upload.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,4 +62,5 @@ func init() {
uploadCmd.Flags().Bool("push", false, "Push the chart package to the GitHub Pages branch (must not be set if --pr is set)")
uploadCmd.Flags().Bool("pr", false, "Create a pull request for the chart package against the GitHub Pages branch (must not be set if --push is set)")
uploadCmd.Flags().Bool("packages-with-index", false, "Host the package files in the GitHub Pages branch")
uploadCmd.Flags().Bool("pre-release", false, "Mark the release as a pre-release")
}
1 change: 1 addition & 0 deletions pkg/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ type Options struct {
ReleaseNotesFile string `mapstructure:"release-notes-file"`
GenerateReleaseNotes bool `mapstructure:"generate-release-notes"`
MakeReleaseLatest bool `mapstructure:"make-release-latest"`
PreRelease bool `mapstructure:"pre-release"`
PackagesWithIndex bool `mapstructure:"packages-with-index"`
}

Expand Down
2 changes: 2 additions & 0 deletions pkg/github/github.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ type Release struct {
Commit string
GenerateReleaseNotes bool
MakeLatest string
PreRelease bool
}

type Asset struct {
Expand Down Expand Up @@ -111,6 +112,7 @@ func (c *Client) CreateRelease(_ context.Context, input *Release) error {
TargetCommitish: &input.Commit,
GenerateReleaseNotes: &input.GenerateReleaseNotes,
MakeLatest: &input.MakeLatest,
Prerelease: &input.PreRelease,
}

release, _, err := c.Repositories.CreateRelease(context.TODO(), c.owner, c.repo, req)
Expand Down
1 change: 1 addition & 0 deletions pkg/releaser/releaser.go
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,7 @@ func (r *Releaser) CreateReleases() error {
Commit: r.config.Commit,
GenerateReleaseNotes: r.config.GenerateReleaseNotes,
MakeLatest: strconv.FormatBool(r.config.MakeReleaseLatest),
PreRelease: r.config.PreRelease,
}
provFile := fmt.Sprintf("%s.prov", p)
if _, err := os.Stat(provFile); err == nil {
Expand Down
25 changes: 25 additions & 0 deletions pkg/releaser/releaser_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -362,6 +362,7 @@ func TestReleaser_CreateReleases(t *testing.T) {
version string
commit string
latest string
preRelease bool
Releaser *Releaser
error bool
}{
Expand All @@ -372,6 +373,7 @@ func TestReleaser_CreateReleases(t *testing.T) {
version: "0.1.0",
commit: "",
latest: "true",
preRelease: false,
Releaser: &Releaser{
config: &config.Options{
PackagePath: "testdata/does-not-exist",
Expand All @@ -389,6 +391,7 @@ func TestReleaser_CreateReleases(t *testing.T) {
version: "0.1.0",
commit: "",
latest: "true",
preRelease: false,
Releaser: &Releaser{
config: &config.Options{
PackagePath: "testdata/release-packages",
Expand All @@ -406,6 +409,7 @@ func TestReleaser_CreateReleases(t *testing.T) {
version: "0.1.0",
commit: "5e239bd19fbefb9eb0181ecf0c7ef73b8fe2753c",
latest: "true",
preRelease: false,
Releaser: &Releaser{
config: &config.Options{
PackagePath: "testdata/release-packages",
Expand All @@ -423,6 +427,7 @@ func TestReleaser_CreateReleases(t *testing.T) {
version: "0.1.0",
commit: "5e239bd19fbefb9eb0181ecf0c7ef73b8fe2753c",
latest: "true",
preRelease: false,
Releaser: &Releaser{
config: &config.Options{
PackagePath: "testdata/release-packages",
Expand All @@ -434,6 +439,25 @@ func TestReleaser_CreateReleases(t *testing.T) {
},
error: false,
},
{
name: "valid-package-with-pre-release",
packagePath: "testdata/release-packages",
chart: "test-chart",
version: "0.1.0",
commit: "5e239bd19fbefb9eb0181ecf0c7ef73b8fe2753c",
latest: "true",
preRelease: true,
Releaser: &Releaser{
config: &config.Options{
PackagePath: "testdata/release-packages",
Commit: "5e239bd19fbefb9eb0181ecf0c7ef73b8fe2753c",
PackagesWithIndex: false,
MakeReleaseLatest: true,
PreRelease: true,
},
},
error: false,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
Expand Down Expand Up @@ -466,6 +490,7 @@ func TestReleaser_CreateReleases(t *testing.T) {
assert.Equal(t, assetPath, fakeGitHub.release.Assets[0].Path)
assert.Equal(t, tt.commit, fakeGitHub.release.Commit)
assert.Equal(t, tt.latest, fakeGitHub.release.MakeLatest)
assert.Equal(t, tt.preRelease, fakeGitHub.release.PreRelease)
assert.Equal(t, tt.Releaser.config.Commit, fakeGitHub.release.Commit)
if !tt.Releaser.config.PackagesWithIndex {
fakeGit.AssertNumberOfCalls(t, "AddWorktree", 0)
Expand Down