@@ -140,10 +140,7 @@ func (cmd *UpCmd) Run(cobraCmd *cobra.Command, args []string) {
140140 log .Fatalf ("Unable to create new kubectl client: %v" , err )
141141 }
142142
143- err = cmd .ensureNamespace ()
144- if err != nil {
145- log .Fatalf ("Unable to create release namespace: %v" , err )
146- }
143+ cmd .ensureNamespace ()
147144
148145 err = cmd .ensureClusterRoleBinding ()
149146 if err != nil {
@@ -198,56 +195,26 @@ func (cmd *UpCmd) Run(cobraCmd *cobra.Command, args []string) {
198195 enterTerminal (cmd .kubectl , cmd .pod , cmd .flags .container , args )
199196}
200197
201- func (cmd * UpCmd ) ensureNamespace () error {
198+ func (cmd * UpCmd ) ensureNamespace () {
202199 config := configutil .GetConfig (false )
203200 releaseNamespace := * config .DevSpace .Release .Namespace
204201
205- // Check if registry namespace exists
206- _ , err := cmd .kubectl .CoreV1 ().Namespaces ().Get (releaseNamespace , metav1.GetOptions {})
207- if err != nil {
208- // Create registry namespace
209- _ , err = cmd .kubectl .CoreV1 ().Namespaces ().Create (& k8sv1.Namespace {
210- ObjectMeta : metav1.ObjectMeta {
211- Name : releaseNamespace ,
212- },
213- })
214-
215- if err != nil {
216- return err
217- }
218- }
219-
220- return nil
202+ // Create release namespace and ignore errors
203+ _ , _ = cmd .kubectl .CoreV1 ().Namespaces ().Create (& k8sv1.Namespace {
204+ ObjectMeta : metav1.ObjectMeta {
205+ Name : releaseNamespace ,
206+ },
207+ })
221208}
222209
223210func (cmd * UpCmd ) ensureClusterRoleBinding () error {
224- /*
225- config := configutil.GetConfig(false)
226-
227- accessReview := &k8sauthorizationv1.SelfSubjectAccessReview{
228- Spec: k8sauthorizationv1.SelfSubjectAccessReviewSpec{
229- ResourceAttributes: &k8sauthorizationv1.ResourceAttributes{
230- Namespace: *config.DevSpace.Release.Namespace,
231- Verb: "create",
232- Group: "rbac.authorization.k8s.io",
233- Resource: "roles",
234- },
235- },
236- }
237-
238- resp, permErr := cmd.kubectl.Authorization().SelfSubjectAccessReviews().Create(accessReview)
239-
240- if permErr != nil {*/
241-
242211 if kubectl .IsMinikube () {
243212 return nil
244213 }
245214
246215 _ , err := cmd .kubectl .RbacV1beta1 ().ClusterRoleBindings ().Get (clusterRoleBindingName , metav1.GetOptions {})
247-
248216 if err != nil {
249217 clusterConfig , _ := kubectl .GetClientConfig ()
250-
251218 if clusterConfig .AuthProvider != nil && clusterConfig .AuthProvider .Name == "gcp" {
252219 createRoleBinding := stdinutil .GetFromStdin (& stdinutil.GetFromStdinParams {
253220 Question : "Do you want the ClusterRoleBinding '" + clusterRoleBindingName + "' to be created automatically? (yes|no)" ,
@@ -295,14 +262,19 @@ func (cmd *UpCmd) ensureClusterRoleBinding() error {
295262 },
296263 }
297264
298- _ , roleBindingErr : = cmd .kubectl .RbacV1beta1 ().ClusterRoleBindings ().Create (rolebinding )
299- if roleBindingErr != nil {
300- return roleBindingErr
265+ _ , err = cmd .kubectl .RbacV1beta1 ().ClusterRoleBindings ().Create (rolebinding )
266+ if err != nil {
267+ return err
301268 }
302269 } else {
303- log .Warn ("Unable to check permissions: If you run into errors, please create the ClusterRoleBinding '" + clusterRoleBindingName + "' as described here: https://devspace.covexo.com/docs/advanced/rbac.html" )
270+ cfg := configutil .GetConfig (false )
271+
272+ if cfg .Cluster .CloudProvider == nil || * cfg .Cluster .CloudProvider == "" {
273+ log .Warn ("Unable to check permissions: If you run into errors, please create the ClusterRoleBinding '" + clusterRoleBindingName + "' as described here: https://devspace.covexo.com/docs/advanced/rbac.html" )
274+ }
304275 }
305276 }
277+
306278 return nil
307279}
308280
0 commit comments