Skip to content

Commit 3ec41da

Browse files
committed
Refactor registry addon
1 parent 1430f35 commit 3ec41da

File tree

2 files changed

+65
-37
lines changed

2 files changed

+65
-37
lines changed

cmd/minikube/cmd/config/util.go

Lines changed: 60 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package config
1818

1919
import (
2020
"fmt"
21+
"io/ioutil"
2122
"os"
2223
"strconv"
2324

@@ -101,46 +102,72 @@ func EnableOrDisableAddon(name string, val string) error {
101102
posResponses := []string{"yes", "y"}
102103
negResponses := []string{"no", "n"}
103104

105+
// Default values
106+
awsAccessID := "changeme"
107+
awsAccessKey := "changeme"
108+
awsRegion := "changeme"
109+
awsAccount := "changeme"
110+
gcrApplicationDefaultCredentials := "changeme"
111+
104112
enableAWSECR := AskForYesNoConfirmation("\nDo you want to enable AWS Elastic Container Registry?", posResponses, negResponses)
105113
if enableAWSECR {
106-
awsAccessID := AskForStaticValue("-- Enter AWS Access Key ID: ")
107-
awsAccessKey := AskForStaticValue("-- Enter AWS Secret Access Key: ")
108-
awsRegion := AskForStaticValue("-- Enter AWS Region: ")
109-
awsAccount := AskForStaticValue("-- Enter 12 digit AWS Account ID: ")
110-
111-
cluster.CreateSecret(
112-
"kube-system",
113-
"registry-creds-ecr",
114-
map[string]string{
115-
"AWS_ACCESS_KEY_ID": awsAccessID,
116-
"AWS_SECRET_ACCESS_KEY": awsAccessKey,
117-
"aws-account": awsAccount,
118-
"awsregion": awsRegion,
119-
},
120-
map[string]string{
121-
"app": "registry-creds",
122-
"cloud": "ecr",
123-
"kubernetes.io/minikube-addons": "registry-creds",
124-
})
114+
awsAccessID = AskForStaticValue("-- Enter AWS Access Key ID: ")
115+
awsAccessKey = AskForStaticValue("-- Enter AWS Secret Access Key: ")
116+
awsRegion = AskForStaticValue("-- Enter AWS Region: ")
117+
awsAccount = AskForStaticValue("-- Enter 12 digit AWS Account ID: ")
125118
}
126119

127120
enableGCR := AskForYesNoConfirmation("\nDo you want to enable Google Container Registry?", posResponses, negResponses)
128121
if enableGCR {
129-
fmt.Println("-- Enter applicatoin_default_credentials.json as base64 by running following command:")
130-
gcrApplicationDefaultCredentials := AskForStaticValue(" base64 -w 0 $HOME/.config/gcloud/application_default_credentials.json: ")
131-
132-
cluster.CreateSecret(
133-
"kube-system",
134-
"registry-creds-gcr",
135-
map[string]string{
136-
"application_default_credentials.json": gcrApplicationDefaultCredentials,
137-
},
138-
map[string]string{
139-
"app": "registry-creds",
140-
"cloud": "gcr",
141-
"kubernetes.io/minikube-addons": "registry-creds",
142-
})
122+
gcrPath := AskForStaticValue("-- Enter path to credentials (e.g. /home/user/.config/gcloud/application_default_credentials.json):")
123+
124+
// Read file from disk
125+
dat, err := ioutil.ReadFile(gcrPath)
126+
127+
if err != nil {
128+
fmt.Println("Could not read file for application_default_credentials.json")
129+
} else {
130+
gcrApplicationDefaultCredentials = string(dat)
131+
}
132+
}
133+
134+
// Create ECR Secret
135+
err = cluster.CreateSecret(
136+
"kube-system",
137+
"registry-creds-ecr",
138+
map[string]string{
139+
"AWS_ACCESS_KEY_ID": awsAccessID,
140+
"AWS_SECRET_ACCESS_KEY": awsAccessKey,
141+
"aws-account": awsAccount,
142+
"aws-region": awsRegion,
143+
},
144+
map[string]string{
145+
"app": "registry-creds",
146+
"cloud": "ecr",
147+
"kubernetes.io/minikube-addons": "registry-creds",
148+
})
149+
150+
if err != nil {
151+
fmt.Println("ERROR creating `registry-creds-ecr` secret")
152+
}
153+
154+
// Create GCR Secret
155+
err = cluster.CreateSecret(
156+
"kube-system",
157+
"registry-creds-gcr",
158+
map[string]string{
159+
"application_default_credentials.json": gcrApplicationDefaultCredentials,
160+
},
161+
map[string]string{
162+
"app": "registry-creds",
163+
"cloud": "gcr",
164+
"kubernetes.io/minikube-addons": "registry-creds",
165+
})
166+
167+
if err != nil {
168+
fmt.Println("ERROR creating `registry-creds-gcr` secret")
143169
}
170+
144171
break
145172
}
146173
} else {

deploy/addons/registry-creds/registry-creds-rc.yaml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,20 @@ metadata:
55
namespace: kube-system
66
labels:
77
version: v1.6
8+
kubernetes.io/cluster-service: "true"
9+
kubernetes.io/minikube-addons: registry-creds
810
spec:
911
replicas: 1
1012
selector:
1113
name: registry-creds
1214
version: v1.6
15+
kubernetes.io/cluster-service: "true"
1316
template:
1417
metadata:
1518
labels:
1619
name: registry-creds
1720
version: v1.6
21+
kubernetes.io/cluster-service: "true"
1822
spec:
1923
containers:
2024
- image: upmcenterprises/registry-creds:1.6
@@ -48,7 +52,4 @@ spec:
4852
volumes:
4953
- name: gcr-creds
5054
secret:
51-
secretName: registry-creds-gcr
52-
items:
53-
- key: application_default_credentials.json
54-
path: application_default_credentials.json
55+
secretName: registry-creds-gcr

0 commit comments

Comments
 (0)