[ 
https://issues.apache.org/jira/browse/DTACLOUD-355?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13547155#comment-13547155
 ] 

Ronelle Landy commented on DTACLOUD-355:
----------------------------------------

The solution as discussed does work as proposed:

curl -X GET -H 'Accept: application/xml' --user "un:pw" 
"http://qe-blade-13.idm.lab.bos.redhat.com:3005/api/instances/960757ad-8909-45c7-abb9-ade50b06ebf3";

<?xml version='1.0' encoding='utf-8' ?>
<instance 
href='http://qe-blade-13.idm.lab.bos.redhat.com:3005/api/instances/960757ad-8909-45c7-abb9-ade50b06ebf3'
 id='960757ad-8909-45c7-abb9-ade50b06ebf3'>
  <name>i-1357462206</name>
  <owner_id>admin@internal</owner_id>
  <image 
href='http://qe-blade-13.idm.lab.bos.redhat.com:3005/api/images/b4bca2c9-76fe-44ac-9da0-66fff4659a9d'
 id='b4bca2c9-76fe-44ac-9da0-66fff4659a9d'></image>
  <realm 
href='http://qe-blade-13.idm.lab.bos.redhat.com:3005/api/realms/a9347fb8-5976-11e1-a53e-5254005809b7'
 id='a9347fb8-5976-11e1-a53e-5254005809b7'></realm>
  <state>STOPPED</state>
  <hardware_profile 
href='http://qe-blade-13.idm.lab.bos.redhat.com:3005/api/hardware_profiles/SERVER'
 id='SERVER'>
    <property kind='fixed' name='memory' unit='MB' value='10240'></property>
    <property kind='fixed' name='cpu' unit='count' value='1'></property>
    <property kind='fixed' name='storage' unit='GB' value='1'></property>
  </hardware_profile>
  <actions>
    <link 
href='http://qe-blade-13.idm.lab.bos.redhat.com:3005/api/instances/960757ad-8909-45c7-abb9-ade50b06ebf3/start'
 method='post' rel='start' />
  </actions>
  <launch_time>2013-01-06T03:50:07.337-05:00</launch_time>
  <public_addresses><address type='mac'>00:1a:4a:10:78:f7</address>
<address port='5910' type='vnc'>10.16.120.47</address></public_addresses>
  <private_addresses></private_addresses>
  <storage_volumes></storage_volumes>
</instance>
[rlandy@localhost /]$ 

Looking at the RHEVM console however, the available actions are: 
run/stop/shutdown. Deltacloud only advertises "stop" as an allowable action. 
Considering that we are advertising the state as STOPPED, offering 
stop/shutdown as actions may seem incongruent.  We may need to revisit this one.

Will close the JIRA after the fixed is pushed to master.

                
> Deltacloud does not handle paused instances in RHEVM
> ----------------------------------------------------
>
>                 Key: DTACLOUD-355
>                 URL: https://issues.apache.org/jira/browse/DTACLOUD-355
>             Project: DeltaCloud
>          Issue Type: Bug
>          Components: Native/Frontend
>         Environment: RHEVM 3.0
> Deltacloud 1.0.4
>            Reporter: Ronelle Landy
>            Assignee: Michal Fojtik
>
> If a RHEVM provider is shutdown, while instances are running, and is later 
> restarted, the instances are put in a 'paused' state after start up. 
> Executing GET -X /api/instances against a RHEVM provider with instances in a 
> paused state errors out (with a rather long stack trace - some of whcih is 
> copied below):
> "GET /api/instances?format=xml HTTP/1.1" 500 67601 0.0560
> E, [2012-10-30T09:48:03.537891 #6625] ERROR -- : [NO HANDLED] RuntimeError: 
> Unexpected state 'PAUSED
>             EIO'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:289:in
>  `convert_state'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:230:in
>  `convert_instance'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:137:in
>  `block (2 levels) in instances'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:136:in
>  `each'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:136:in
>  `block in instances'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/exceptions.rb:199:in `call'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/exceptions.rb:199:in 
> `safely'
> /usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:130:in
>  `instances'
> /usr/share/deltacloud-core/lib/deltacloud/helpers/deltacloud_helper.rb:37:in 
> `block in filter_all'
> /usr/share/ruby/benchmark.rb:280:in `measure'
> /usr/share/deltacloud-core/lib/deltacloud/helpers/deltacloud_helper.rb:37:in 
> `filter_all'
> /usr/share/deltacloud-core/lib/deltacloud/helpers/rabbit_helper.rb:22:in 
> `block (2 levels) in standard_index_operation'
> /usr/local/share/gems/gems/sinatra-rabbit-1.1.2/lib/sinatra/rabbit/base.rb:394:in
>  `instance_eval'
> /usr/local/share/gems/gems/sinatra-rabbit-1.1.2/lib/sinatra/rabbit/base.rb:394:in
>  `block in control'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:1265:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:1265:in `block 
> in compile!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:835:in `[]'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:835:in `block (3 
> levels) in route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:851:in 
> `route_eval'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:835:in `block (2 
> levels) in route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:872:in `block in 
> process_route'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:870:in `catch'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:870:in 
> `process_route'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:834:in `block in 
> route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:833:in `each'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:833:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:936:in 
> `dispatch!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `block in 
> call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `block in 
> invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `catch'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:755:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:816:in `forward'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:885:in 
> `route_missing'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:846:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:936:in 
> `dispatch!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `block in 
> call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `block in 
> invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `catch'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:755:in `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb:16:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb:17:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/base.rb:47:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/nulllogger.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/head.rb:9:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/showexceptions.rb:21:in 
> `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:99:in `call'
> /usr/share/deltacloud-core/lib/sinatra/rack_accept.rb:160:in `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb:16:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb:17:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/base.rb:47:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/nulllogger.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/head.rb:9:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/showexceptions.rb:21:in 
> `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:99:in `call'
> /usr/local/share/gems/gems/rack-accept-0.4.5/lib/rack/accept/context.rb:22:in 
> `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb:16:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb:17:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/base.rb:47:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/nulllogger.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/head.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/methodoverride.rb:21:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:99:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:816:in `forward'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:885:in 
> `route_missing'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:846:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:936:in 
> `dispatch!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `block in 
> call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `block in 
> invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `catch'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:755:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:816:in `forward'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:885:in 
> `route_missing'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:846:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:936:in 
> `dispatch!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `block in 
> call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `block in 
> invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `catch'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:755:in `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb:16:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb:17:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/base.rb:47:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/nulllogger.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/head.rb:9:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/showexceptions.rb:21:in 
> `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:99:in `call'
> /usr/share/deltacloud-core/lib/sinatra/rack_accept.rb:160:in `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb:16:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb:17:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/base.rb:47:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/nulllogger.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/head.rb:9:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/showexceptions.rb:21:in 
> `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:99:in `call'
> /usr/local/share/gems/gems/rack-accept-0.4.5/lib/rack/accept/context.rb:22:in 
> `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb:16:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb:17:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/base.rb:47:in
>  `call'
> /usr/local/share/gems/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in
>  `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/nulllogger.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/head.rb:9:in `call'
> /usr/local/share/gems/gems/rack-1.4.1/lib/rack/methodoverride.rb:21:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:99:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:816:in `forward'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:885:in 
> `route_missing'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:846:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:936:in 
> `dispatch!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `block in 
> call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `block in 
> invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `catch'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in `invoke'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in `call!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:755:in `call'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:816:in `forward'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:885:in 
> `route_missing'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:846:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:842:in `route!'
> /usr/local/share/gems/gems/sinatra-1.3.3/lib/sinatra/base.rb:936:in 
> `dispatch!'
> ...........

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to