Compare commits
6 commits
Author | SHA1 | Date | |
---|---|---|---|
0d6889608b | |||
16ee7a3067 | |||
f3ac89b417 | |||
02649d9e3e | |||
726ec12d30 | |||
b51341b99d |
|
@ -7,7 +7,8 @@ when:
|
|||
|
||||
variables:
|
||||
- &golang "golang:1.21"
|
||||
- &build_plugin "woodpeckerci/plugin-docker-buildx:3.0.0"
|
||||
# - &build_plugin "woodpeckerci/plugin-docker-buildx:3.0.0"
|
||||
- &build_plugin "woodpeckerci/plugin-docker-buildx:pull_132"
|
||||
- base_settings: &base_buildx_settings
|
||||
platforms: "linux/amd64,linux/arm64"
|
||||
dockerfile: Dockerfile.multiarch
|
||||
|
@ -77,9 +78,13 @@ steps:
|
|||
publish_pr_image:
|
||||
image: *build_plugin
|
||||
depends_on: test
|
||||
pull: true
|
||||
settings:
|
||||
auto_tag: true
|
||||
default_tag: ""
|
||||
dry_run: true
|
||||
<<: *base_buildx_settings
|
||||
tag: pull_${CI_COMMIT_PULL_REQUEST}
|
||||
# tag: pull_${CI_COMMIT_PULL_REQUEST}
|
||||
logins: *login_setting
|
||||
when:
|
||||
evaluate: 'CI_COMMIT_PULL_REQUEST_LABELS contains "build_pr_images"'
|
||||
|
|
|
@ -184,11 +184,22 @@ func (p *Plugin) Validate() error {
|
|||
p.settings.Build.Ref,
|
||||
p.settings.Build.Branch,
|
||||
) {
|
||||
tag, err := DefaultTagSuffix(
|
||||
p.settings.Build.Ref,
|
||||
p.settings.Build.TagsDefaultName,
|
||||
p.settings.Build.TagsSuffix,
|
||||
)
|
||||
var tag []string
|
||||
var err error
|
||||
|
||||
if p.settings.Build.TagsSuffix != "" {
|
||||
tag, err = DefaultTagSuffix(
|
||||
p.settings.Build.Ref,
|
||||
p.settings.Build.TagsDefaultName,
|
||||
p.settings.Build.TagsSuffix,
|
||||
)
|
||||
} else {
|
||||
tag, err = DefaultTagSuffix(
|
||||
p.settings.Build.Ref,
|
||||
p.settings.Build.TagsSuffix,
|
||||
"",
|
||||
)
|
||||
}
|
||||
if err != nil {
|
||||
logrus.Printf("cannot build docker image for %s, invalid semantic version", p.settings.Build.Ref)
|
||||
return err
|
||||
|
|
|
@ -110,6 +110,6 @@ func stripTagPrefix(ref string) string {
|
|||
}
|
||||
|
||||
func isSingleTag(tag string) bool {
|
||||
// currently only filtering for seperators, this could be improoved...
|
||||
return !regexp.MustCompile(`[,\s]+`).MatchString(tag) && len(tag) > 0 && len(tag) <= 128
|
||||
// currently only filtering for separators, this could be improved...
|
||||
return tag == "" || (!regexp.MustCompile(`[,\s]+`).MatchString(tag) && len(tag) <= 128)
|
||||
}
|
||||
|
|
|
@ -299,6 +299,7 @@ func Test_isSingleTag(t *testing.T) {
|
|||
{"_wierd.but-ok1", true},
|
||||
{"latest ", false},
|
||||
{"latest,next", false},
|
||||
{"", true}, // important to allow omitting 'latest' tag when using auto_tag: true
|
||||
// more tests to be added, once the validation is more powerful
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue