Skip to content

Commit d88147c

Browse files
committed
compute registryFQDN
1 parent 87da8ea commit d88147c

6 files changed

Lines changed: 27 additions & 13 deletions

File tree

mgradm/cmd/upgrade/podman/podman.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ func listTags(flags *podmanUpgradeFlags) error {
7070

7171
authFile, cleaner, err := podman.PodmanLogin(hostData, flags.Installation.SCC, flags.Image)
7272
if err != nil {
73-
return utils.Errorf(err, L("failed to login to %s"), flags.Image.RegistryFQDN())
73+
return utils.Errorf(err, L("failed to login to %s"), flags.Image.RegistryFQDN)
7474
}
7575
defer cleaner()
7676

mgradm/shared/utils/flags.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,18 +130,23 @@ func (flags *ServerFlags) setRegistryIfMissing() {
130130
}
131131
if flags.Coco.Image.Registry == "" {
132132
flags.Coco.Image.Registry = globalRegistry
133+
flags.Coco.Image.GetRegistryFQDN()
133134
}
134135
if flags.DBUpgradeImage.Registry == "" {
135136
flags.DBUpgradeImage.Registry = globalRegistry
137+
flags.DBUpgradeImage.GetRegistryFQDN()
136138
}
137139
if flags.HubXmlrpc.Image.Registry == "" {
138140
flags.HubXmlrpc.Image.Registry = globalRegistry
141+
flags.HubXmlrpc.Image.GetRegistryFQDN()
139142
}
140143
if flags.Pgsql.Image.Registry == "" {
141144
flags.Pgsql.Image.Registry = globalRegistry
145+
flags.Pgsql.Image.GetRegistryFQDN()
142146
}
143147
if flags.Saline.Image.Registry == "" {
144-
flags.Pgsql.Image.Registry = globalRegistry
148+
flags.Saline.Image.Registry = globalRegistry
149+
flags.Saline.Image.GetRegistryFQDN()
145150
}
146151
}
147152

mgrpxy/shared/utils/flags.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,18 +63,23 @@ func (flags *ProxyImageFlags) setRegistryIfMissing() {
6363
}
6464
if flags.Httpd.Registry == "" {
6565
flags.Httpd.Registry = globalRegistry
66+
flags.Httpd.GetRegistryFQDN()
6667
}
6768
if flags.SSH.Registry == "" {
6869
flags.SSH.Registry = globalRegistry
70+
flags.SSH.GetRegistryFQDN()
6971
}
7072
if flags.SaltBroker.Registry == "" {
7173
flags.SaltBroker.Registry = globalRegistry
74+
flags.SaltBroker.GetRegistryFQDN()
7275
}
7376
if flags.Squid.Registry == "" {
7477
flags.Squid.Registry = globalRegistry
78+
flags.Squid.GetRegistryFQDN()
7579
}
7680
if flags.Tftpd.Registry == "" {
7781
flags.Tftpd.Registry = globalRegistry
82+
flags.Tftpd.GetRegistryFQDN()
7883
}
7984
}
8085

shared/podman/login.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import (
1919
//
2020
// It returns an authentication file, a cleanup function and an error.
2121
func PodmanLogin(hostData *HostInspectData, scc types.SCCCredentials, image types.ImageFlags) (string, func(), error) {
22-
registryFQDN := image.RegistryFQDN()
2322
sccUser := hostData.SCCUsername
2423
sccPassword := hostData.SCCPassword
2524
if scc.User != "" && scc.Password != "" {
@@ -36,7 +35,7 @@ func PodmanLogin(hostData *HostInspectData, scc types.SCCCredentials, image type
3635
"auth": "%s"
3736
}
3837
}
39-
}`, registryFQDN, token)
38+
}`, image.RegistryFQDN, token)
4039
authFile, err := os.CreateTemp("", "mgradm-")
4140
if err != nil {
4241
return "", nil, err

shared/types/images.go

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,11 @@ import (
1414

1515
// ImageFlags represents the flags used by an image.
1616
type ImageFlags struct {
17-
Registry string `mapstructure:"registry"`
18-
Name string `mapstructure:"image"`
19-
Tag string `mapstructure:"tag"`
20-
PullPolicy string `mapstructure:"pullPolicy"`
17+
Registry string `mapstructure:"registry"`
18+
RegistryFQDN string `mapstructure:"registryFQDN"`
19+
Name string `mapstructure:"image"`
20+
Tag string `mapstructure:"tag"`
21+
PullPolicy string `mapstructure:"pullPolicy"`
2122
}
2223

2324
// PgsqlFlags contains settings for Pgsql container.
@@ -46,7 +47,7 @@ type SCCCredentials struct {
4647
}
4748

4849
// RegistryFQDN return the registry FQDN
49-
func (flags *ImageFlags) RegistryFQDN() string {
50+
func (flags *ImageFlags) GetRegistryFQDN() string {
5051
reg := flags.Registry
5152

5253
hasScheme := strings.Contains(reg, "://")
@@ -58,11 +59,15 @@ func (flags *ImageFlags) RegistryFQDN() string {
5859
u, err := url.Parse(toParse)
5960
if err != nil {
6061
log.Error().Msgf(L("Cannot extract FQDN from %s: this will be used as FQDN"))
61-
return reg
62+
flags.RegistryFQDN = reg
63+
return flags.RegistryFQDN
6264
}
6365

6466
if hasScheme {
65-
return u.Scheme + "://" + u.Host
67+
flags.RegistryFQDN = u.Scheme + "://" + u.Host
68+
return flags.RegistryFQDN
6669
}
67-
return u.Host
70+
71+
flags.RegistryFQDN = u.Host
72+
return flags.RegistryFQDN
6873
}

shared/types/images_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ func TestRegistryFQDN(t *testing.T) {
3030
}
3131
for i, testCase := range data {
3232

33-
actual := testCase.Input.RegistryFQDN()
33+
actual := testCase.Input.GetRegistryFQDN()
3434

3535
if actual != testCase.Expected {
3636
t.Errorf("Testcase %d: Expected %s got %s when registry %s", i, testCase.Expected, actual, testCase.Input.Registry)

0 commit comments

Comments
 (0)