Skip to content

Commit 6912900

Browse files
committed
Use ClusterName instead of ClusterID
1 parent 829233e commit 6912900

File tree

6 files changed

+28
-42
lines changed

6 files changed

+28
-42
lines changed

pkg/asset/agent/joiner/clusterinfo.go

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package joiner
33
import (
44
"context"
55
"fmt"
6-
"net/url"
76

87
"k8s.io/apimachinery/pkg/api/errors"
98
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -24,11 +23,11 @@ import (
2423
// from an already existing cluster. A number of different resources
2524
// are inspected to extract the required configuration.
2625
type ClusterInfo struct {
27-
Config *rest.Config
2826
Client kubernetes.Interface
2927
OpenshiftClient configclient.Interface
3028

3129
ClusterID string
30+
ClusterName string
3231
Version string
3332
ReleaseImage string
3433
APIDNSName string
@@ -73,10 +72,6 @@ func (ci *ClusterInfo) Generate(dependencies asset.Parents) error {
7372
if err != nil {
7473
return err
7574
}
76-
err = ci.retrieveAPIDNSName()
77-
if err != nil {
78-
return err
79-
}
8075
err = ci.retrieveClusterData()
8176
if err != nil {
8277
return err
@@ -123,15 +118,14 @@ func (ci *ClusterInfo) initClients(kubeconfig string) error {
123118
if err != nil {
124119
return err
125120
}
126-
ci.Config = config
127121

128-
openshiftClient, err := configclient.NewForConfig(ci.Config)
122+
openshiftClient, err := configclient.NewForConfig(config)
129123
if err != nil {
130124
return err
131125
}
132126
ci.OpenshiftClient = openshiftClient
133127

134-
k8sclientset, err := kubernetes.NewForConfig(ci.Config)
128+
k8sclientset, err := kubernetes.NewForConfig(config)
135129
if err != nil {
136130
return err
137131
}
@@ -166,16 +160,6 @@ func (ci *ClusterInfo) retrieveProxy() error {
166160
return nil
167161
}
168162

169-
func (ci *ClusterInfo) retrieveAPIDNSName() error {
170-
parsedURL, err := url.Parse(ci.Config.Host)
171-
if err != nil {
172-
return err
173-
}
174-
175-
ci.APIDNSName = parsedURL.Hostname()
176-
return nil
177-
}
178-
179163
func (ci *ClusterInfo) retrievePullSecret() error {
180164
pullSecret, err := ci.Client.CoreV1().Secrets("openshift-config").Get(context.Background(), "pull-secret", metav1.GetOptions{})
181165
if err != nil {
@@ -233,6 +217,8 @@ func (ci *ClusterInfo) retrieveInstallConfigData() error {
233217
ci.DeprecatedImageContentSources = installConfig.DeprecatedImageContentSources
234218
ci.PlatformType = agent.HivePlatformType(installConfig.Platform)
235219
ci.SSHKey = installConfig.SSHKey
220+
ci.ClusterName = installConfig.ObjectMeta.Name
221+
ci.APIDNSName = fmt.Sprintf("api.%s.%s", ci.ClusterName, installConfig.BaseDomain)
236222

237223
return nil
238224
}

pkg/asset/agent/joiner/clusterinfo_test.go

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,31 +3,28 @@ package joiner
33
import (
44
"testing"
55

6-
"github.com/openshift/assisted-service/api/hiveextension/v1beta1"
7-
fakeclientconfig "github.com/openshift/client-go/config/clientset/versioned/fake"
8-
"gopkg.in/yaml.v2"
6+
"github.com/stretchr/testify/assert"
97
corev1 "k8s.io/api/core/v1"
108
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
119
"k8s.io/apimachinery/pkg/runtime"
12-
1310
"k8s.io/client-go/kubernetes/fake"
14-
"k8s.io/client-go/rest"
11+
"sigs.k8s.io/yaml"
1512

1613
configv1 "github.com/openshift/api/config/v1"
14+
"github.com/openshift/assisted-service/api/hiveextension/v1beta1"
15+
fakeclientconfig "github.com/openshift/client-go/config/clientset/versioned/fake"
1716
"github.com/openshift/installer/pkg/asset"
1817
"github.com/openshift/installer/pkg/asset/agent/workflow"
1918
"github.com/openshift/installer/pkg/types"
2019
"github.com/openshift/installer/pkg/types/baremetal"
21-
"github.com/stretchr/testify/assert"
2220
)
2321

2422
func TestClusterInfo_Generate(t *testing.T) {
2523
cases := []struct {
2624
name string
2725
workflow workflow.AgentWorkflowType
2826
objects []runtime.Object
29-
openshiftOjects []runtime.Object
30-
configHost string
27+
openshiftObjects []runtime.Object
3128
expectedClusterInfo ClusterInfo
3229
}{
3330
{
@@ -36,10 +33,9 @@ func TestClusterInfo_Generate(t *testing.T) {
3633
expectedClusterInfo: ClusterInfo{},
3734
},
3835
{
39-
name: "default",
40-
workflow: workflow.AgentWorkflowTypeAddNodes,
41-
configHost: "https://api.ostest.test.metalkube.org:6443",
42-
openshiftOjects: []runtime.Object{
36+
name: "default",
37+
workflow: workflow.AgentWorkflowTypeAddNodes,
38+
openshiftObjects: []runtime.Object{
4339
&configv1.ClusterVersion{
4440
ObjectMeta: v1.ObjectMeta{
4541
Name: "version",
@@ -110,6 +106,7 @@ func TestClusterInfo_Generate(t *testing.T) {
110106
},
111107
expectedClusterInfo: ClusterInfo{
112108
ClusterID: "1b5ba46b-7e56-47b1-a326-a9eebddfb38c",
109+
ClusterName: "ostest",
113110
ReleaseImage: "registry.ci.openshift.org/ocp/release@sha256:65d9b652d0d23084bc45cb66001c22e796d43f5e9e005c2bc2702f94397d596e",
114111
Version: "4.15.0",
115112
APIDNSName: "api.ostest.test.metalkube.org",
@@ -144,20 +141,17 @@ func TestClusterInfo_Generate(t *testing.T) {
144141
parents.Add(addNodesConfig)
145142

146143
fakeClient := fake.NewSimpleClientset(tc.objects...)
147-
fakeOCClient := fakeclientconfig.NewSimpleClientset(tc.openshiftOjects...)
148-
fakeConfig := &rest.Config{
149-
Host: tc.configHost,
150-
}
144+
fakeOCClient := fakeclientconfig.NewSimpleClientset(tc.openshiftObjects...)
151145

152146
clusterInfo := &ClusterInfo{
153-
Config: fakeConfig,
154147
Client: fakeClient,
155148
OpenshiftClient: fakeOCClient,
156149
}
157150
err := clusterInfo.Generate(parents)
158151

159152
assert.NoError(t, err)
160153
assert.Equal(t, tc.expectedClusterInfo.ClusterID, clusterInfo.ClusterID)
154+
assert.Equal(t, tc.expectedClusterInfo.ClusterName, clusterInfo.ClusterName)
161155
assert.Equal(t, tc.expectedClusterInfo.Version, clusterInfo.Version)
162156
assert.Equal(t, tc.expectedClusterInfo.ReleaseImage, clusterInfo.ReleaseImage)
163157
assert.Equal(t, tc.expectedClusterInfo.APIDNSName, clusterInfo.APIDNSName)
@@ -175,7 +169,12 @@ func TestClusterInfo_Generate(t *testing.T) {
175169
}
176170

177171
func makeInstallConfig(t *testing.T) string {
172+
t.Helper()
178173
ic := &types.InstallConfig{
174+
ObjectMeta: v1.ObjectMeta{
175+
Name: "ostest",
176+
},
177+
BaseDomain: "test.metalkube.org",
179178
ImageDigestSources: []types.ImageDigestSource{
180179
{
181180
Source: "quay.io/openshift-release-dev/ocp-v4.0-art-dev",
@@ -193,5 +192,6 @@ func makeInstallConfig(t *testing.T) string {
193192
if err != nil {
194193
t.Error(err)
195194
}
195+
196196
return string(data)
197197
}

pkg/asset/agent/manifests/agentpullsecret.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func (a *AgentPullSecret) Generate(dependencies asset.Parents) error {
6464
}
6565

6666
case workflow.AgentWorkflowTypeAddNodes:
67-
a.generateSecret(clusterInfo.ClusterID, clusterInfo.Namespace, clusterInfo.PullSecret)
67+
a.generateSecret(clusterInfo.ClusterName, clusterInfo.Namespace, clusterInfo.PullSecret)
6868

6969
default:
7070
return fmt.Errorf("AgentWorkflowType value not supported: %s", agentWorkflow.Workflow)

pkg/asset/agent/manifests/agentpullsecret_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ func TestAgentPullSecret_Generate(t *testing.T) {
3131
&agent.OptionalInstallConfig{},
3232
&workflow.AgentWorkflow{Workflow: workflow.AgentWorkflowTypeAddNodes},
3333
&joiner.ClusterInfo{
34-
ClusterID: "ostest",
35-
Namespace: "cluster0",
36-
PullSecret: "{\n \"auths\": {\n \"cloud.openshift.com\": {\n \"auth\": \"b3BlUTA=\",\n \"email\": \"[email protected]\"\n }\n }\n}",
34+
ClusterName: "ostest",
35+
Namespace: "cluster0",
36+
PullSecret: "{\n \"auths\": {\n \"cloud.openshift.com\": {\n \"auth\": \"b3BlUTA=\",\n \"email\": \"[email protected]\"\n }\n }\n}",
3737
},
3838
},
3939
expectedConfig: &corev1.Secret{

pkg/asset/agent/manifests/infraenv.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ func (i *InfraEnv) Generate(dependencies asset.Parents) error {
7272
}
7373

7474
case workflow.AgentWorkflowTypeAddNodes:
75-
err := i.generateManifest(clusterInfo.ClusterID, clusterInfo.Namespace, clusterInfo.SSHKey, clusterInfo.UserCaBundle, clusterInfo.Proxy, clusterInfo.Architecture)
75+
err := i.generateManifest(clusterInfo.ClusterName, clusterInfo.Namespace, clusterInfo.SSHKey, clusterInfo.UserCaBundle, clusterInfo.Proxy, clusterInfo.Architecture)
7676
if err != nil {
7777
return err
7878
}

pkg/asset/agent/manifests/infraenv_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ func TestInfraEnv_Generate(t *testing.T) {
161161
dependencies: []asset.Asset{
162162
&workflow.AgentWorkflow{Workflow: workflow.AgentWorkflowTypeAddNodes},
163163
&joiner.ClusterInfo{
164-
ClusterID: "agent-cluster",
164+
ClusterName: "agent-cluster",
165165
Namespace: "agent-ns",
166166
UserCaBundle: "user-ca-bundle",
167167
Proxy: &types.Proxy{

0 commit comments

Comments
 (0)