Bug 869144

Summary: Should validate the "Assembly name" from the application blueprint xml file
Product: [Retired] CloudForms Cloud Engine Reporter: Rehana <redakkan>
Component: aeolus-conductorAssignee: Angus Thomas <athomas>
Status: CLOSED EOL QA Contact: Rehana <aeolus-qa-list>
Severity: low Docs Contact:
Priority: unspecified    
Version: 1.1.0   
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Rehana 2012-10-23 06:57:50 UTC
Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:
100%

Steps to Reproduce:
1.Login ton conductor
2.Create application blueprint from XML (PFA: test.xml)
3.Launch instance
  
Actual results:
Observed that the instance launch failed with the error "Can not add VM. The given name contains special characters. Only lower-case and upper-case letters, numbers, '_', '-' allowed."

Expected results:
Should validate the assembly names also


Additional info:
rpm -qa | grep aeolus 
aeolus-configserver-0.4.11-1.el6cf.noarch
rubygem-aeolus-cli-0.7.5-1.el6cf.noarch
rubygem-aeolus-image-0.3.0-12.el6.noarch
aeolus-conductor-0.13.20-1.el6cf.noarch
aeolus-all-0.13.20-1.el6cf.noarch
aeolus-conductor-doc-0.13.20-1.el6cf.noarch
aeolus-configure-2.8.9-1.el6cf.noarch
aeolus-conductor-daemons-0.13.20-1.el6cf.noarch


----------------test.xml-----------
<deployable name='{test-audrey}'>
  <description>auto description</description>
  <assemblies>
    <assembly name='{test}' hwp='small-x86_64'>
      <image id='ee4871b0-19b3-11e2-834b-001f2904e998' />
      <services>
        <service name='proxy'>
          <executable url='http://qeblade20.rhq.lab.eng.bos.redhat.com/pub/cloud-qe-script01.sh' />
          <files>
            <file url='http://example.com/path/to/proxy_conf_file_2' />
            <file url='http://example.com/path/to/proxy_conf_file_2' />
          </files>
          <parameters>
            <parameter name='auto_service_param' type='scalar'>
              <value>bar</value>
            </parameter>
          </parameters>
        </service>
      </services>
    </assembly>
  </assemblies>
</deployable>
------------------------------------

log:
------------------------------------
thin server (localhost:3002) [deltacloud-mock][1757]: 127.0.0.1 - - [23/Oct/2012 02:22:52] "POST /api/instances HTTP/1.1" 500 6266 11.0611
thin server (localhost:3002) [deltacloud-mock][1757]: [NO HANDLED] RHEVM::RHEVMBackendException: Can not add VM. The given name contains special characters. Only lower-case and upper-case letters, numbers, '_', '-' allowed.
/usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_client.rb:177:in `create_vm'
/usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:206:in `create_instance'
/usr/share/deltacloud-core/lib/deltacloud/base_driver/exceptions.rb:151:in `call'
/usr/share/deltacloud-core/lib/deltacloud/base_driver/exceptions.rb:151:in `safely'
/usr/share/deltacloud-core/lib/deltacloud/drivers/rhevm/rhevm_driver.rb:197:in `create_instance'
/usr/share/deltacloud-core/lib/deltacloud/server.rb:480
/usr/share/deltacloud-core/lib/sinatra/rabbit.rb:125:in `instance_eval'
/usr/share/deltacloud-core/lib/sinatra/rabbit.rb:125:in `POST /api/instances'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1151:in `call'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1151:in `compile!'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:724:in `instance_eval'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:724:in `route_eval'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:708:in `route!'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:758:in `process_route'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:755:in `catch'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:755:in `process_route'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:707:in `route!'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:706:in `each'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:706:in `route!'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:843:in `dispatch!'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:644:in `call!'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `instance_eval'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `invoke'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `catch'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `invoke'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:644:in `call!'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:629:in `call'
/usr/share/deltacloud-core/lib/sinatra/rack_syslog.rb:48:in `call'
/usr/share/deltacloud-core/lib/sinatra/rack_date.rb:31:in `call'
/usr/share/deltacloud-core/lib/sinatra/rack_accept.rb:149:in `call'
/usr/lib/ruby/gems/1.8/gems/rack-1.3.0/lib/rack/head.rb:9:in `call'
/usr/share/deltacloud-core/lib/sinatra/rack_driver_select.rb:45:in `call'
/usr/share/deltacloud-core/lib/sinatra/rack_matrix_params.rb:106:in `call'
/usr/share/deltacloud-core/lib/sinatra/rack_runtime.rb:36:in `call'
/usr/share/deltacloud-core/lib/sinatra/rack_etag.rb:41:in `call'
/usr/lib/ruby/gems/1.8/gems/rack-accept-0.4.3/lib/rack/accept/context.rb:22:in `call'
/usr/lib/ruby/gems/1.8/gems/rack-1.3.0/lib/rack/head.rb:9:in `call'
/usr/lib/ruby/gems/1.8/gems/rack-1.3.0/lib/rack/methodoverride.rb:24:in `call'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1272:in `call'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1303:in `synchronize'
/usr/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1272:in `call'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/connection.rb:84:in `pre_process'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/connection.rb:82:in `catch'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/connection.rb:82:in `pre_process'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:1060:in `call'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:1060:in `spawn_threadpool'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:1057:in `initialize'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:1057:in `new'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:1057:in `spawn_threadpool'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:1049:in `defer'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/connection.rb:54:in `process'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/connection.rb:42:in `receive_data'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run_machine'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/backends/base.rb:61:in `start'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/server.rb:159:in `start'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/controllers/controller.rb:86:in `start'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/runner.rb:185:in `send'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/runner.rb:185:in `run_command'
/usr/lib/ruby/gems/1.8/gems/thin-1.2.11/lib/thin/runner.rb:151:in `run!'
/usr/share/deltacloud-core/bin/deltacloudd:235
/usr/bin/deltacloudd:5:in `load'
/usr/bin/deltacloudd:5
---------------------