Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to start component due to namespace termination #3122

Closed
prietyc123 opened this issue May 8, 2020 · 15 comments · Fixed by #3321
Closed

Unable to start component due to namespace termination #3122

prietyc123 opened this issue May 8, 2020 · 15 comments · Fixed by #3321
Labels
area/devfile-spec Issues or PRs related to the Devfile specification and how odo handles and interprets it. flake Categorizes issue or PR as related to a flaky test. lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. priority/High Important issue; should be worked on before any other issues (except priority/Critical issue(s)). triage/needs-information Indicates an issue needs more information in order to work on it.

Comments

@prietyc123
Copy link
Contributor

/kind bug

What versions of software are you using?

Operating System:
all supported

Output of odo version:
master

How did you run odo exactly?

Running cmd_devfile_url_test test on CI

Actual behavior

Running odo with args [odo project create yhzmzsovke -w -v4]
[odo]  •  Waiting for project to come up  ...
[odo] I0507 06:38:17.350862    1571 occlient.go:539] Status of creation of project yhzmzsovke is Active
[odo] I0507 06:38:17.350999    1571 occlient.go:544] Project yhzmzsovke now exists
[odo] I0507 06:38:17.444026    1571 occlient.go:579] Status of creation of service account &ServiceAccount{ObjectMeta:{default  yhzmzsovke /api/v1/namespaces/yhzmzsovke/serviceaccounts/default 833cd7ef-dc12-40b8-a950-0c77961085da 86937 0 2020-05-07 06:38:16 +0000 UTC <nil> <nil> map[] map[] [] []  []},Secrets:[]ObjectReference{ObjectReference{Kind:,Namespace:,Name:default-token-nr8l4,UID:,APIVersion:,ResourceVersion:,FieldPath:,},ObjectReference{Kind:,Namespace:,Name:default-dockercfg-wm67j,UID:,APIVersion:,ResourceVersion:,FieldPath:,},},ImagePullSecrets:[]LocalObjectReference{LocalObjectReference{Name:default-dockercfg-wm67j,},},AutomountServiceAccountToken:nil,} is ready
[odo] 
 ✓  Waiting for project to come up [1s]
[odo]  ✓  Project 'yhzmzsovke' is ready for use
[odo]  ✓  New project created and now using project: yhzmzsovke
Created dir: /tmp/364017334
Current working dir: /go/src/github.com/openshift/odo/tests/integration/devfile
Setting current dir to: /tmp/364017334
Running odo with args [odo preference set Experimental true]
[odo] Global preference was successfully updated
Running git with args [git clone https://github.com/che-samples/web-nodejs-sample.git /tmp/364017334/projectDir]
[git] Cloning into '/tmp/364017334/projectDir'...
Setting current dir to: /tmp/364017334/projectDir
Running odo with args [odo create nodejs --project yhzmzsovke lzelql]
[odo] Experimental mode is enabled, use at your own risk
[odo] 
[odo] Validation
[odo]  •  Checking devfile compatibility  ...
[odo] 
 ✓  Checking devfile compatibility [140679ns]
[odo]  •  Validating devfile component  ...
[odo] 
 ✓  Validating devfile component [269828ns]
[odo] 
[odo] Please use `odo push` command to create the component with source deployed
Running odo with args [odo url create oxuto --port 3000 --host ulwqx.com --now --ingress --devfile devfile.yaml]
[odo]  ✓  URL oxuto created for component: lzelql
[odo] 
[odo] Validation
[odo]  •  Validating the devfile  ...
[odo] 
 ✓  Validating the devfile [90192ns]
[odo] 
[odo] Creating Kubernetes resources for component lzelql
[odo]  ✗  Failed to start component with name lzelql.
[odo] Error: Failed to create the component: unable to create or update component: unable to create Deployment lzelql: deployments.apps "lzelql" is forbidden: unable to create new content in namespace bzcgbcptwl because it is being terminated
Deleting project: yhzmzsovke
Running odo with args [odo project delete yhzmzsovke -f]
[odo]  •  Deleting project yhzmzsovke  ...
[odo] 
 ✓  Deleting project yhzmzsovke [6s]
[odo]  ✓  Deleted project : yhzmzsovke
Setting current dir to: /go/src/github.com/openshift/odo/tests/integration/devfile
Deleting dir: /tmp/364017334
• Failure [11.143 seconds]
odo devfile url command tests
/go/src/github.com/openshift/odo/tests/integration/devfile/cmd_devfile_url_test.go:16
  Creating urls
  /go/src/github.com/openshift/odo/tests/integration/devfile/cmd_devfile_url_test.go:111
    create with now flag should pass [It]

Expected behavior

namespace should not get terminated while starting the component and url should get created.

Any logs, error output, etc?

Logs : https://prow.svc.ci.openshift.org/view/gcs/origin-ci-test/pr-logs/pull/openshift_odo/2913/pull-ci-openshift-odo-master-v4.3-integration-e2e/111#1:build-log.txt%3A454

@openshift-ci-robot openshift-ci-robot added the kind/bug Categorizes issue or PR as related to a bug. label May 8, 2020
@prietyc123 prietyc123 added the area/testing Issues or PRs related to testing, Quality Assurance or Quality Engineering label May 8, 2020
@yangcao77
Copy link
Contributor

PR related: #3125

The test failed due to namespace incorrect. Since the automation tests runs in parallel in multiple nodes, it causes the conflict.

Running odo with args [odo create nodejs --project yhzmzsovke lzelql]

Component created under namespace yhzmzsovke, but it's trying to push to a different bzcgbcptwl namespace. Which is created&ran by other tests, and terminate at this point.

 Error: Failed to create the component: unable to create or update component: unable to create Deployment lzelql: deployments.apps "lzelql" is forbidden: unable to create new content in namespace bzcgbcptwl because it is being terminated

The fix is to assign pushoptions.namespace when --now plag is provided.
Details described: #3125 (comment)

@amitkrout
Copy link
Contributor

amitkrout commented May 9, 2020

PR related: #3125

The test failed due to namespace incorrect. Since the automation tests runs in parallel in multiple nodes, it causes the conflict.

Running odo with args [odo create nodejs --project yhzmzsovke lzelql]

Component created under namespace yhzmzsovke, but it's trying to push to a different bzcgbcptwl namespace. Which is created&ran by other tests, and terminate at this point.

 Error: Failed to create the component: unable to create or update component: unable to create Deployment lzelql: deployments.apps "lzelql" is forbidden: unable to create new content in namespace bzcgbcptwl because it is being terminated

The fix is to assign pushoptions.namespace when --now plag is provided.
Details described: #3125 (comment)

To avoid conflict in parallel run we are using context dir while creating the component or from inside the context dir we are launching the component create along with the flag --project in both the cases. So in parallel run there should not be a problem of namespace conflict irrespective of what other flag is being passed like --now flag as each spec run has its own separate component dir i mean .odo dir. Infact there is no flag for namespace in odo url create... because the config file provides the details like project name, app name ... through a --context flag. So explicitly using --project flag does not make any sense if you are using --context flag from any path or you are in parallel to .odo dir.

$ odo url create -h
Create a URL for a component. The created URL can be used to access the specified component from outside the cluster.

[...]
Flags:
      --context string      Use given context directory as a source for component settings
      --devfile string      Path to a devfile.yaml (default "./devfile.yaml")
  -h, --help                Help for create
      --host string         Cluster ip for this URL
      --ingress             Creates an ingress instead of Route on OpenShift clusters
      --now                 Push changes to the cluster immediately
      --port int            Port number for the url of the component, required in case of components which expose more than one service port (default -1)
      --secure              Creates a secure https url
      --tls-secret string   Tls secret name for the url of the component if the user bring his own tls secret
[...]

This is how the regular odo url create command works. May be i am missing something in case of experimental mode for devfile. @yangcao77 Please share you thoughts. Thanks

@amitkrout
Copy link
Contributor

The fix is to assign pushoptions.namespace when --now plag is provided.

@yangcao77 You mean there is nothing wrong with the test script. Need to assign pushoptions.namespace in the actual code implementation to fix it ?

@yangcao77
Copy link
Contributor

@amitkrout
Copy link
Contributor

@yangcao77 Thanks for the tips. I will send a patch

@girishramnani This will be my first development code contribution. i will seek your guidance ;) . thanks

@amitkrout amitkrout self-assigned this May 12, 2020
@amitkrout amitkrout added area/devfile-spec Issues or PRs related to the Devfile specification and how odo handles and interprets it. and removed area/testing Issues or PRs related to testing, Quality Assurance or Quality Engineering labels May 12, 2020
@amitkrout amitkrout added the flake Categorizes issue or PR as related to a flaky test. label May 12, 2020
@girishramnani girishramnani added the triage/needs-information Indicates an issue needs more information in order to work on it. label May 14, 2020
@girishramnani girishramnani added the priority/Critical We need to stop doing everything and fix this ASAP. It is making the project unusable. label Jun 1, 2020
@girishramnani girishramnani added priority/High Important issue; should be worked on before any other issues (except priority/Critical issue(s)). and removed priority/Critical We need to stop doing everything and fix this ASAP. It is making the project unusable. labels Jun 4, 2020
@prietyc123
Copy link
Contributor Author

Similar kind of issue hits again with route creation on PR #3763

Created dir: /tmp/488689687
Creating a new project: ycuhnhhwvr
Running odo with args [odo project create ycuhnhhwvr -w -v4]
[odo] I0820 20:05:44.674714   14637 util.go:734] HTTPGetRequest: https://raw.githubusercontent.com/openshift/odo/master/build/VERSION
[odo] I0820 20:05:44.674819   14637 util.go:755] Response will be cached in /tmp/odohttpcache for 1h0m0s
[odo] I0820 20:05:44.676335   14637 util.go:768] Cached response used.
[odo]  •  Waiting for project to come up  ...
[...]
[odo]  ✓  Project 'ycuhnhhwvr' is ready for use
[odo]  ✓  New project created and now using project: ycuhnhhwvr
[odo] I0820 20:05:45.301717   14637 odo.go:72] Could not get the latest release information in time. Never mind, exiting gracefully :)
Current working dir: /home/travis/gopath/src/github.com/openshift/odo/tests/integration/devfile
Setting KUBECONFIG=/tmp/488689687/config
Running odo with args [odo preference set Experimental true]
[odo] I0820 20:05:45.472609   14665 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] Global preference was successfully updated
[odo] I0820 20:05:45.472984   14665 odo.go:72] Could not get the latest release information in time. Never mind, exiting gracefully :)
Running odo with args [odo create nodejs qoinex --context /tmp/488689687]
[odo] I0820 20:05:45.812349   14686 util.go:734] HTTPGetRequest: https://raw.githubusercontent.com/openshift/odo/master/build/VERSION
[odo] I0820 20:05:45.812492   14686 util.go:755] Response will be cached in /tmp/odohttpcache for 1h0m0s
[odo] I0820 20:05:45.812783   14686 util.go:768] Cached response used.
[odo] I0820 20:05:45.826982   14686 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] Experimental mode is enabled, use at your own risk
[odo] 
[odo] I0820 20:05:45.827090   14686 util.go:429] path /tmp/488689687/.odo/config.yaml doesn't exist, skipping it
[...]
[odo] 
[odo] Please use `odo push` command to create the component with source deployed
[odo] I0820 20:05:45.830573   14686 odo.go:72] Could not get the latest release information in time. Never mind, exiting gracefully :)
Running odo with args [odo storage create elemj --path /data --context /tmp/488689687]
[odo] I0820 20:05:45.987766   14751 util.go:734] HTTPGetRequest: https://raw.githubusercontent.com/openshift/odo/master/build/VERSION
[odo] I0820 20:05:45.987825   14751 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:45.987848   14751 util.go:755] Response will be cached in /tmp/odohttpcache for 1h0m0s
[odo] I0820 20:05:45.988009   14751 util.go:768] Cached response used.
[odo] I0820 20:05:46.003743   14751 context.go:69] absolute devfile path: '/tmp/488689687/devfile.yaml'
[odo] I0820 20:05:46.004119   14751 content.go:33] converted devfile YAML to JSON
[odo] I0820 20:05:46.004177   14751 apiVersion.go:50] devfile apiVersion: '2.0.0'
[odo] I0820 20:05:46.004185   14751 helper.go:35] devfile apiVersion '2.0.0' is supported in odo
[odo] I0820 20:05:46.016333   14751 schema.go:47] validated devfile schema
[odo]  ✓  Added storage elemj to qoinex
[odo] 
[odo] Please use `odo push` command to make the storage accessible to the component
[odo] I0820 20:05:46.016729   14751 validate.go:37] Successfully validated devfile sections
[odo] I0820 20:05:46.017189   14751 writer.go:49] devfile yaml created at: 'devfile.yaml'
[odo] I0820 20:05:46.017230   14751 odo.go:72] Could not get the latest release information in time. Never mind, exiting gracefully :)
Running odo with args [odo push --context /tmp/488689687]
[odo] I0820 20:05:46.166595   14771 util.go:734] HTTPGetRequest: https://raw.githubusercontent.com/openshift/odo/master/build/VERSION
[odo] I0820 20:05:46.167637   14771 util.go:755] Response will be cached in /tmp/odohttpcache for 1h0m0s
[odo] I0820 20:05:46.167830   14771 util.go:768] Cached response used.
[...]
[odo] I0820 20:05:46.167857   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.167928   14771 context.go:69] absolute devfile path: '/tmp/488689687/devfile.yaml'
[odo] I0820 20:05:46.168277   14771 content.go:33] converted devfile YAML to JSON
[odo] I0820 20:05:46.168356   14771 apiVersion.go:50] devfile apiVersion: '2.0.0'
[odo] I0820 20:05:46.168381   14771 helper.go:35] devfile apiVersion '2.0.0' is supported in odo
[odo] I0820 20:05:46.195578   14771 schema.go:47] validated devfile schema
[odo] I0820 20:05:46.196267   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.196564   14771 validate.go:37] Successfully validated devfile sections
[odo] I0820 20:05:46.196697   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.212430   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.212530   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.212591   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.212636   14771 context.go:69] absolute devfile path: '/tmp/488689687/devfile.yaml'
[odo] I0820 20:05:46.213118   14771 content.go:33] converted devfile YAML to JSON
[odo] I0820 20:05:46.213189   14771 apiVersion.go:50] devfile apiVersion: '2.0.0'
[odo] I0820 20:05:46.213199   14771 helper.go:35] devfile apiVersion '2.0.0' is supported in odo
[odo] I0820 20:05:46.220411   14771 schema.go:47] validated devfile schema
[odo] I0820 20:05:46.220526   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.220626   14771 validate.go:37] Successfully validated devfile sections
[odo] I0820 20:05:46.220732   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.220840   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.223342   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.223459   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] I0820 20:05:46.225841   14771 utils.go:26] Deployment qoinex not found
[odo] 
[odo] Validation
[odo]  •  Validating the devfile  ...
[odo] I0820 20:05:46.225903   14771 command.go:97] the command group of kind "init" is not found in the devfile
[odo] I0820 20:05:46.225919   14771 command.go:295] No init command was provided
[odo] I0820 20:05:46.225932   14771 utils.go:113] Found component "Container" with name "runtime"
[odo] I0820 20:05:46.225945   14771 command.go:312] Build command: devbuild
[odo] I0820 20:05:46.225961   14771 utils.go:113] Found component "Container" with name "runtime"
[odo] I0820 20:05:46.225973   14771 command.go:319] Run command: devrun
 ✓  Validating the devfile [114904ns]
[odo] 
[odo] Creating Kubernetes resources for component qoinex
[odo] I0820 20:05:46.226000   14771 utils.go:113] Found component "Container" with name "runtime"
[odo] I0820 20:05:46.226051   14771 utils.go:113] Found component "Container" with name "runtime"
[odo] I0820 20:05:46.226163   14771 utils.go:113] Found component "Container" with name "runtime"
[odo] I0820 20:05:46.226186   14771 command.go:97] the command group of kind "debug" is not found in the devfile
[odo] I0820 20:05:46.226196   14771 utils.go:294] Updating container runtime entrypoint with supervisord
[odo] I0820 20:05:46.226218   14771 utils.go:173] Updating container runtime with supervisord volume mounts
[odo] I0820 20:05:46.226234   14771 utils.go:183] Updating container runtime env with run command
[odo] I0820 20:05:46.226248   14771 utils.go:201] Updating container runtime env with run command's workdir
[odo] I0820 20:05:46.226261   14771 utils.go:113] Found component "Container" with name "runtime"
[odo] I0820 20:05:46.226282   14771 utils.go:113] Found component "Container" with name "runtime"
[odo] I0820 20:05:46.226291   14771 utils.go:122] Found component "Volume" with name "elemj"
[odo] I0820 20:05:46.226308   14771 adapter.go:295] Generating PVC name for elemj
[odo] I0820 20:05:46.226338   14771 utils.go:98] Checking PVC for volume elemj and label component=qoinex,storage-name=elemj
[odo] I0820 20:05:46.230946   14771 adapter.go:353] Creating deployment qoinex
[odo] I0820 20:05:46.230990   14771 adapter.go:354] The component name is qoinex
[odo] I0820 20:05:46.260378   14771 adapter.go:398] Successfully created component qoinex
[odo] I0820 20:05:46.277633   14771 adapter.go:407] Successfully created Service for component qoinex
[odo] I0820 20:05:46.277726   14771 utils.go:98] Checking PVC for volume elemj and label component=qoinex,storage-name=elemj
[odo] I0820 20:05:46.295681   14771 utils.go:33] Creating a PVC for elemj
[odo] I0820 20:05:46.336945   14771 utils.go:71] Creating a PVC with name elemj-qoinex-bwtg and labels map[component:qoinex storage-name:elemj]
[odo] I0820 20:05:46.360810   14771 deployments.go:55] Waiting for qoinex deployment rollout
[odo]  •  Waiting for component to start  ...
[odo] I0820 20:05:46.376177   14771 deployments.go:89] Waiting for deployment "qoinex" rollout to finish: 0 of 1 updated replicas are available...
[odo] I0820 20:05:46.376209   14771 deployments.go:96] Waiting for deployment spec update to be observed...
 ✓  Waiting for component to start [5s]
[odo] I0820 20:05:51.129051   14771 deployments.go:92] Deployment "qoinex" successfully rolled out
[odo] I0820 20:05:51.129063   14771 deployments.go:96] Waiting for deployment spec update to be observed...
[odo] I0820 20:05:51.129119   14771 pods.go:31] Waiting for component=qoinex pod
[odo] I0820 20:05:51.152481   14771 pods.go:58] Status of qoinex-588fd8794-6vhpx pod is Running
[odo] I0820 20:05:51.152557   14771 pods.go:64] Pod qoinex-588fd8794-6vhpx is Running
[odo] I0820 20:05:51.154316   14771 preference.go:209] The path for preference file is /tmp/488689687/config.yaml
[odo] 
[odo] Applying URL changes
[odo] I0820 20:05:51.164532   14771 url.go:408] Listing ingresses with label selector: app.kubernetes.io/instance=qoinex
[odo] I0820 20:05:51.167729   14771 url.go:385] Listing routes with label selector: app.kubernetes.io/part-of=,app.kubernetes.io/instance=qoinex
[odo] I0820 20:05:51.167750   14771 occlient.go:2627] Listing routes with label selector: app.kubernetes.io/part-of=,app.kubernetes.io/instance=qoinex
[odo]  ✗  Failed To Update Config To Component Deployed.
[odo] Error: unable to create route: error creating route: routes.route.openshift.io "3000-tcp-qoinex" is forbidden: unable to create new content in namespace courgkyjqy because it is being terminated
Deleting project: ycuhnhhwvr
Running odo with args [odo project delete ycuhnhhwvr -f]
[odo] I0820 20:05:51.277705   15642 util.go:734] HTTPGetRequest: https://raw.githubusercontent.com/openshift/odo/master/build/VERSION
[odo] I0820 20:05:51.277779   15642 util.go:755] Response will be cached in /tmp/odohttpcache for 1h0m0s
[odo] I0820 20:05:51.278175   15642 util.go:768] Cached response used.
[odo]  ✓  Deleted project : ycuhnhhwvr
[odo]  ⚠  Warning! Projects are deleted from the cluster asynchronously. Odo does its best to delete the project. Due to multi-tenant clusters, the project may still exist on a different node.
[odo] I0820 20:05:51.318096   15642 odo.go:72] Could not get the latest release information in time. Never mind, exiting gracefully :)
Setting current dir to: /home/travis/gopath/src/github.com/openshift/odo/tests/integration/devfile
Deleting dir: /tmp/488689687
• Failure [6.820 seconds]
odo devfile storage command tests
/home/travis/gopath/src/github.com/openshift/odo/tests/integration/devfile/cmd_devfile_storage_test.go:14
  When devfile storage create command is executed
  /home/travis/gopath/src/github.com/openshift/odo/tests/integration/devfile/cmd_devfile_storage_test.go:32
    should create a storage with default size when --size is not provided [It]
    /home/travis/gopath/src/github.com/openshift/odo/tests/integration/devfile/cmd_devfile_storage_test.go:75
    No future change is possible.  Bailing out early after 5.159s.
    Running odo with args [odo push --context /tmp/488689687]
    Expected
        <int>: 1
    to match exit code:
        <int>: 0

@prietyc123 prietyc123 reopened this Aug 21, 2020
@mik-dass
Copy link
Contributor

[odo] Applying URL changes
[odo] I0820 20:05:51.164532   14771 url.go:408] Listing ingresses with label selector: app.kubernetes.io/instance=qoinex
[odo] I0820 20:05:51.167729   14771 url.go:385] Listing routes with label selector: app.kubernetes.io/part-of=,app.kubernetes.io/instance=qoinex
[odo] I0820 20:05:51.167750   14771 occlient.go:2627] Listing routes with label selector: app.kubernetes.io/part-of=,app.kubernetes.io/instance=qoinex
[odo]  ✗  Failed To Update Config To Component Deployed.
[odo] Error: unable to create route: error creating route: routes.route.openshift.io "3000-tcp-qoinex" is forbidden: unable to create new content in namespace courgkyjqy because it is being terminated
Deleting project: ycuhnhhwvr

this seems to be a problem with the URL code. It is creating the route in a different namespace.

@yangcao77
Copy link
Contributor

My guess is, it's an issue with the test code. I took a brief look at the push code for devfile components

It seems like no matter from
https://github.com/openshift/odo/blob/eaf7dded3efa0c81539ba10a28622313fab4b77c/pkg/odo/cli/component/push.go#L108-L111
Or https://github.com/openshift/odo/blob/eaf7dded3efa0c81539ba10a28622313fab4b77c/pkg/odo/cli/component/push.go#L138-L144

the namespace is set to --project value if it's provided; if not, it will read from env.yaml file if it presents; if no namespace value found in env.yaml file, it would use the current namespace.

the namespace is saved to env.yaml file during component creation, with the provided project value if present, or use the current namespace.

However, from the test code above, it creates project and component separately.
it runs

Running odo with args [odo project create ycuhnhhwvr -w -v4]
......

Running odo with args [odo preference set Experimental true]

......

Running odo with args [odo create nodejs qoinex --context /tmp/488689687]

Since the Travis test runs multiple tests in parallel, it's not guaranteed the namespace won't change between project creation and component creation.

Suggest to use odo create nodejs --project <namespace> instead, to combine project creation and component creation.

@mik-dass
Copy link
Contributor

Suggest to use odo create nodejs --project instead, to combine project creation and component creation.

👍 I feel this will resolve the issue as the storage test script isn't using the project flag during component creation.

@kadel kadel removed the kind/bug Categorizes issue or PR as related to a bug. label Aug 26, 2020
@prietyc123
Copy link
Contributor Author

[odo] Applying URL changes
[odo] I0820 20:05:51.164532   14771 url.go:408] Listing ingresses with label selector: app.kubernetes.io/instance=qoinex
[odo] I0820 20:05:51.167729   14771 url.go:385] Listing routes with label selector: app.kubernetes.io/part-of=,app.kubernetes.io/instance=qoinex
[odo] I0820 20:05:51.167750   14771 occlient.go:2627] Listing routes with label selector: app.kubernetes.io/part-of=,app.kubernetes.io/instance=qoinex
[odo]  ✗  Failed To Update Config To Component Deployed.
[odo] Error: unable to create route: error creating route: routes.route.openshift.io "3000-tcp-qoinex" is forbidden: unable to create new content in namespace courgkyjqy because it is being terminated
Deleting project: ycuhnhhwvr

this seems to be a problem with the URL code. It is creating the route in a different namespace.

I hit the same issue in PR #4067

@adisky
Copy link
Contributor

adisky commented Dec 9, 2020

not actively working on this, removing my assignment
/unassign @adisky

@openshift-bot
Copy link

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci-robot openshift-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 9, 2021
@openshift-bot
Copy link

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci-robot openshift-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Apr 8, 2021
@openshift-bot
Copy link

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

@openshift-ci openshift-ci bot closed this as completed May 8, 2021
@openshift-ci
Copy link

openshift-ci bot commented May 8, 2021

@openshift-bot: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/devfile-spec Issues or PRs related to the Devfile specification and how odo handles and interprets it. flake Categorizes issue or PR as related to a flaky test. lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. priority/High Important issue; should be worked on before any other issues (except priority/Critical issue(s)). triage/needs-information Indicates an issue needs more information in order to work on it.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants