Skip to content

Commit 8cd2447

Browse files
committed
Check if we can access namespaces
1 parent d65f068 commit 8cd2447

3 files changed

Lines changed: 42 additions & 22 deletions

File tree

cmd/up.go

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,10 @@ func (cmd *UpCmd) Run(cobraCmd *cobra.Command, args []string) {
140140
log.Fatalf("Unable to create new kubectl client: %v", err)
141141
}
142142

143-
cmd.ensureNamespace()
143+
err = cmd.ensureNamespace()
144+
if err != nil {
145+
log.Fatalf("Unable to create namespace: %v", err)
146+
}
144147

145148
err = cmd.ensureClusterRoleBinding()
146149
if err != nil {
@@ -196,16 +199,21 @@ func (cmd *UpCmd) Run(cobraCmd *cobra.Command, args []string) {
196199
enterTerminal(cmd.kubectl, cmd.pod, cmd.flags.container, args)
197200
}
198201

199-
func (cmd *UpCmd) ensureNamespace() {
202+
func (cmd *UpCmd) ensureNamespace() error {
200203
config := configutil.GetConfig(false)
201204
releaseNamespace := *config.DevSpace.Release.Namespace
202205

203-
// Create release namespace and ignore errors
204-
_, _ = cmd.kubectl.CoreV1().Namespaces().Create(&k8sv1.Namespace{
205-
ObjectMeta: metav1.ObjectMeta{
206-
Name: releaseNamespace,
207-
},
208-
})
206+
_, err := cmd.kubectl.CoreV1().Namespaces().Get(releaseNamespace, metav1.GetOptions{})
207+
if err != nil {
208+
// Create release namespace
209+
_, err = cmd.kubectl.CoreV1().Namespaces().Create(&k8sv1.Namespace{
210+
ObjectMeta: metav1.ObjectMeta{
211+
Name: releaseNamespace,
212+
},
213+
})
214+
}
215+
216+
return err
209217
}
210218

211219
func (cmd *UpCmd) ensureClusterRoleBinding() error {

pkg/devspace/clients/helm/tiller.go

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,20 @@ func ensureTiller(kubectlClient *kubernetes.Clientset, config *v1.Config, upgrad
3636
ServiceAccount: TillerServiceAccountName,
3737
}
3838

39-
// Create tiller namespace & ignore any errors
40-
kubectlClient.CoreV1().Namespaces().Create(&k8sv1.Namespace{
41-
ObjectMeta: metav1.ObjectMeta{
42-
Name: tillerNamespace,
43-
},
44-
})
39+
_, err := kubectlClient.CoreV1().Namespaces().Get(tillerNamespace, metav1.GetOptions{})
40+
if err != nil {
41+
// Create tiller namespace
42+
_, err = kubectlClient.CoreV1().Namespaces().Create(&k8sv1.Namespace{
43+
ObjectMeta: metav1.ObjectMeta{
44+
Name: tillerNamespace,
45+
},
46+
})
47+
if err != nil {
48+
return err
49+
}
50+
}
4551

46-
_, err := kubectlClient.ExtensionsV1beta1().Deployments(tillerNamespace).Get(TillerDeploymentName, metav1.GetOptions{})
52+
_, err = kubectlClient.ExtensionsV1beta1().Deployments(tillerNamespace).Get(TillerDeploymentName, metav1.GetOptions{})
4753
if err != nil {
4854
// Create tiller server
4955
err = createTiller(kubectlClient, config, tillerOptions)

pkg/devspace/registry/create.go

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,21 @@ func createRegistry(kubectl *kubernetes.Clientset, helm *helm.HelmClientWrapper,
2222
registryReleaseNamespace := *internalRegistry.Release.Namespace
2323
registryReleaseValues := internalRegistry.Release.Values
2424

25-
// Create registry namespace & ignore errors
26-
kubectl.CoreV1().Namespaces().Create(&k8sv1.Namespace{
27-
ObjectMeta: metav1.ObjectMeta{
28-
Name: registryReleaseNamespace,
29-
},
30-
})
25+
_, err := kubectl.CoreV1().Namespaces().Get(registryReleaseNamespace, metav1.GetOptions{})
26+
if err != nil {
27+
// Create registryReleaseNamespace
28+
_, err = kubectl.CoreV1().Namespaces().Create(&k8sv1.Namespace{
29+
ObjectMeta: metav1.ObjectMeta{
30+
Name: registryReleaseNamespace,
31+
},
32+
})
33+
if err != nil {
34+
return err
35+
}
36+
}
3137

3238
// Deploy the registry
33-
_, err := helm.InstallChartByName(registryReleaseName, registryReleaseNamespace, "stable/docker-registry", "", registryReleaseValues)
39+
_, err = helm.InstallChartByName(registryReleaseName, registryReleaseNamespace, "stable/docker-registry", "", registryReleaseValues)
3440
if err != nil {
3541
return fmt.Errorf("Unable to initialize docker registry: %s", err.Error())
3642
}

0 commit comments

Comments
 (0)