mirror of
https://github.com/goreleaser/goreleaser.git
synced 2025-01-08 03:31:59 +02:00
5bf42b726f
basically redoing #3559 as it got impossible to merge with the many changes since it was open (which is totally my fault for not merging it earlier). Anyhow, still a WIP, going also doing some other related improvements in the way. cc/ @graytonio closes #3559 closes #3525 --------- Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> Co-authored-by: Grayton Ward <graytonio.ward@gmail.com>
52 lines
1.1 KiB
Go
52 lines
1.1 KiB
Go
package client
|
|
|
|
import "github.com/goreleaser/goreleaser/pkg/config"
|
|
|
|
// RepoFromRef converts a config.RepoRef into a Repo.
|
|
func RepoFromRef(ref config.RepoRef) Repo {
|
|
return Repo{
|
|
Owner: ref.Owner,
|
|
Name: ref.Name,
|
|
Branch: ref.Branch,
|
|
GitURL: ref.Git.URL,
|
|
GitSSHCommand: ref.Git.SSHCommand,
|
|
PrivateKey: ref.Git.PrivateKey,
|
|
}
|
|
}
|
|
|
|
// TemplateRef templates a config.RepoFromRef
|
|
func TemplateRef(apply func(s string) (string, error), ref config.RepoRef) (config.RepoRef, error) {
|
|
name, err := apply(ref.Name)
|
|
if err != nil {
|
|
return ref, err
|
|
}
|
|
owner, err := apply(ref.Owner)
|
|
if err != nil {
|
|
return ref, err
|
|
}
|
|
branch, err := apply(ref.Branch)
|
|
if err != nil {
|
|
return ref, err
|
|
}
|
|
gitURL, err := apply(ref.Git.URL)
|
|
if err != nil {
|
|
return ref, err
|
|
}
|
|
privateKey, err := apply(ref.Git.PrivateKey)
|
|
if err != nil {
|
|
return ref, err
|
|
}
|
|
return config.RepoRef{
|
|
Owner: owner,
|
|
Name: name,
|
|
Token: ref.Token,
|
|
Branch: branch,
|
|
PullRequest: ref.PullRequest,
|
|
Git: config.GitRepoRef{
|
|
URL: gitURL,
|
|
PrivateKey: privateKey,
|
|
SSHCommand: ref.Git.SSHCommand,
|
|
},
|
|
}, nil
|
|
}
|