mirror of
https://github.com/goreleaser/goreleaser.git
synced 2025-03-17 20:47:50 +02:00
feat: add only the manifests to the release notes
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
This commit is contained in:
parent
397ff3ba84
commit
8fa7c6977a
@ -26,8 +26,10 @@ func describeBody(ctx *context.Context) (bytes.Buffer, error) {
|
||||
for _, a := range ctx.Artifacts.Filter(artifact.ByType(artifact.DockerManifest)).List() {
|
||||
dockers = append(dockers, a.Name)
|
||||
}
|
||||
for _, a := range ctx.Artifacts.Filter(artifact.ByType(artifact.DockerImage)).List() {
|
||||
dockers = append(dockers, a.Name)
|
||||
if len(dockers) == 0 {
|
||||
for _, a := range ctx.Artifacts.Filter(artifact.ByType(artifact.DockerImage)).List() {
|
||||
dockers = append(dockers, a.Name)
|
||||
}
|
||||
}
|
||||
var bodyTemplate = template.Must(template.New("release").Parse(bodyTemplateText))
|
||||
err := bodyTemplate.Execute(&out, struct {
|
||||
|
@ -13,7 +13,35 @@ import (
|
||||
|
||||
var update = flag.Bool("update", false, "update .golden files")
|
||||
|
||||
|
||||
func TestDescribeBody(t *testing.T) {
|
||||
var changelog = "feature1: description\nfeature2: other description"
|
||||
var ctx = context.New(config.Project{})
|
||||
ctx.ReleaseNotes = changelog
|
||||
for _, d := range []string{
|
||||
"goreleaser/goreleaser:0.40.0",
|
||||
"goreleaser/goreleaser:latest",
|
||||
"goreleaser/godownloader:v0.1.0",
|
||||
} {
|
||||
ctx.Artifacts.Add(&artifact.Artifact{
|
||||
Name: d,
|
||||
Type: artifact.DockerImage,
|
||||
})
|
||||
}
|
||||
out, err := describeBody(ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
var golden = "testdata/release1.golden"
|
||||
if *update {
|
||||
_ = ioutil.WriteFile(golden, out.Bytes(), 0755)
|
||||
}
|
||||
bts, err := ioutil.ReadFile(golden)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, string(bts), out.String())
|
||||
}
|
||||
|
||||
|
||||
func TestDescribeBodyWithDockerManifest(t *testing.T) {
|
||||
var changelog = "feature1: description\nfeature2: other description"
|
||||
var ctx = context.New(config.Project{})
|
||||
ctx.ReleaseNotes = changelog
|
||||
@ -43,7 +71,7 @@ func TestDescribeBody(t *testing.T) {
|
||||
out, err := describeBody(ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
var golden = "testdata/release1.golden"
|
||||
var golden = "testdata/release3.golden"
|
||||
if *update {
|
||||
_ = ioutil.WriteFile(golden, out.Bytes(), 0755)
|
||||
}
|
||||
|
@ -6,9 +6,3 @@ feature2: other description
|
||||
- `docker pull goreleaser/goreleaser:0.40.0`
|
||||
- `docker pull goreleaser/goreleaser:latest`
|
||||
- `docker pull goreleaser/godownloader:v0.1.0`
|
||||
- `docker pull goreleaser/goreleaser:0.40.0-amd64`
|
||||
- `docker pull goreleaser/goreleaser:latest-amd64`
|
||||
- `docker pull goreleaser/godownloader:v0.1.0-amd64`
|
||||
- `docker pull goreleaser/goreleaser:0.40.0-arm64`
|
||||
- `docker pull goreleaser/goreleaser:latest-arm64`
|
||||
- `docker pull goreleaser/godownloader:v0.1.0-arm64`
|
||||
|
8
internal/pipe/release/testdata/release3.golden
vendored
Executable file
8
internal/pipe/release/testdata/release3.golden
vendored
Executable file
@ -0,0 +1,8 @@
|
||||
feature1: description
|
||||
feature2: other description
|
||||
|
||||
## Docker images
|
||||
|
||||
- `docker pull goreleaser/goreleaser:0.40.0`
|
||||
- `docker pull goreleaser/goreleaser:latest`
|
||||
- `docker pull goreleaser/godownloader:v0.1.0`
|
@ -10,6 +10,10 @@ For it to work, it [has to be enabled in the client configurations](https://gith
|
||||
|
||||
Please make sure `docker manifest` works before opening issues.
|
||||
|
||||
Notice that if you have something in the `docker_manifests` section in your
|
||||
config file, GoReleaser will add the manifest's to the release notes
|
||||
instead of the Docker images names.
|
||||
|
||||
!!! warning
|
||||
Please note that this is a beta feature, and it may change or be removed
|
||||
at any time.
|
||||
|
Loading…
x
Reference in New Issue
Block a user