blob: 96d6362a7440b41eea428a4eacfdb168717d5bb2 [file] [log] [blame]
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<templatesync>
<!-- MAKE SURE THAT THE OSTYPE OF TEMPLATES ARE CHANGED IN CASE OF USING TEMPLATE OTHER THAN THE DEFAULT CENTOS 5.3 64bit TEMPLATE -->
<!-- Make some preparations - create a couple of private templates -->
<!--
<command>
<name>createVolume</name>
<testcase>Create a volume</testcase>
<parameters>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
<item random="true">
<name>name</name>
</item>
<item getparam="true">
<name>zoneid</name>
<param>globalzoneid</param>
</item>
<item getparam="true">
<name>diskofferingid</name>
<param>globaldiskofferingid</param>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>volumeid</param>
</item>
</returnvalue>
</command>
-->
<command>
<name>deployVirtualMachine</name>
<testcase>Deploy a VM </testcase>
<parameters>
<item getparam="true">
<name>zoneid</name>
<param>globalzoneid</param>
</item>
<item getparam="true">
<name>serviceofferingid</name>
<param>globalserviceofferingid</param>
</item>
<item getparam="true">
<name>diskofferingid</name>
<param>globaldiskofferingid</param>
</item>
<item getparam="true">
<name>templateid</name>
<param>globaltemplateid</param>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
<item>
<name>displayname</name>
<value>TempSyncVM</value>
</item>
<item>
<name>group</name>
<value>group1</value>
</item>
<item getparam="true">
<name>networkids</name>
<param>globalnetworkid</param>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>vmid</param>
</item>
</returnvalue>
</command>
<command>
<name>select id from volumes</name>
<mysql>true</mysql>
<testcase>Getting volume id for the VM created</testcase>
<parameters>
<item getparam="true">
<name>instance_id</name>
<param>vmid</param>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>volumeid</param>
</item>
</returnvalue>
</command>
<command>
<name>stopVirtualMachine</name>
<testcase>Stop the Virtual Machine</testcase>
<parameters>
<item getparam="true">
<name>id</name>
<param>vmid</param>
</item>
</parameters>
</command>
<!-- Create template, delete it and restart management server -->
<command>
<name>createTemplate</name>
<testcase>Create template</testcase>
<parameters>
<item getparam="true">
<name>volumeid</name>
<param>volumeid</param>
</item>
<item random="true" setparam="true">
<name>name</name>
<param>privatetemplatename</param>
</item>
<item>
<name>displaytext</name>
<value>newtext</value>
</item>
<item>
<name>osTypeId</name>
<value>12</value>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>privatetemplateid</param>
</item>
</returnvalue>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<testcase>List template directory after it was created</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>removetemplate.sh</name>
<script>true</script>
<testcase>Removing template file from secondary storage</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>sleep.sh</name>
<script>true</script>
<testcase>Sleep for 4 min</testcase>
<parameters>
<item>
<name>s</name>
<value>240</value>
</item>
</parameters>
</command>
<!-- Create template, corrupt it by removing lines from templates.properties file and restart management server -->
<command>
<name>createTemplate</name>
<testcase>Create template</testcase>
<parameters>
<item getparam="true">
<name>volumeid</name>
<param>volumeid</param>
</item>
<item random="true" setparam="true">
<name>name</name>
<param>privatetemplatename</param>
</item>
<item>
<name>displaytext</name>
<value>newtext</value>
</item>
<item>
<name>osTypeId</name>
<value>12</value>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>privatetemplateid</param>
</item>
</returnvalue>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<testcase>List template directory after it was created</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>corrupttemplate.sh</name>
<script>true</script>
<testcase>Corrupting template file on secondary storage</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>i</name>
<param>privatetemplateid</param>
</item>
<item>
<name>a</name>
<value>2</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>sleep.sh</name>
<script>true</script>
<testcase>Sleep for 4 min</testcase>
<parameters>
<item>
<name>s</name>
<value>240</value>
</item>
</parameters>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<error>true</error>
<testcase>Verify that template got removed from the secondary storage by template sync</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<!-- Create a template directory on the secondary storage, reboot management server and make sure that template directory got cleanedup -->
<command>
<name>createTemplate</name>
<testcase>Create template</testcase>
<parameters>
<item getparam="true">
<name>volumeid</name>
<param>volumeid</param>
</item>
<item random="true" setparam="true">
<name>name</name>
<param>privatetemplatename</param>
</item>
<item>
<name>displaytext</name>
<value>newtext</value>
</item>
<item>
<name>osTypeId</name>
<value>12</value>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>privatetemplateid</param>
</item>
</returnvalue>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<testcase>List template directory after it was created</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>createfaketemplate.sh</name>
<script>true</script>
<testcase>Corrupting template file on secondary storage</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>i</name>
<param>privatetemplateid</param>
</item>
<item>
<name>a</name>
<value>1</value>
</item>
<item>
<name>dir</name>
<value>300556</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>sleep.sh</name>
<script>true</script>
<testcase>Sleep for 4 min</testcase>
<parameters>
<item>
<name>s</name>
<value>240</value>
</item>
</parameters>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<error>true</error>
<testcase>Verify that template got removed from the secondary storage by template sync</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item>
<name>p</name>
<value>/template/tmpl/1/300556/template.properties</value>
</item>
</parameters>
</command>
<!-- Create template, delete it and stop/start management server -->
<command>
<name>createTemplate</name>
<testcase>Create template</testcase>
<parameters>
<item getparam="true">
<name>volumeid</name>
<param>volumeid</param>
</item>
<item random="true" setparam="true">
<name>name</name>
<param>privatetemplatename</param>
</item>
<item>
<name>displaytext</name>
<value>newtext</value>
</item>
<item>
<name>osTypeId</name>
<value>12</value>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>privatetemplateid</param>
</item>
</returnvalue>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<testcase>List template directory after it was created</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>removetemplate.sh</name>
<script>true</script>
<testcase>Removing template file from secondary storage</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Stopping management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>stop</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Stopping management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>stop</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Starting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>start</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Starting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>start</value>
</item>
</parameters>
</command>
<command>
<name>sleep.sh</name>
<script>true</script>
<testcase>Sleep for 4 min</testcase>
<parameters>
<item>
<name>s</name>
<value>240</value>
</item>
</parameters>
</command>
<!-- Create template, don't delete it and restart management server. Make sure that the template is still available, and you can stat a vm from it -->
<command>
<name>createTemplate</name>
<testcase>Create template</testcase>
<parameters>
<item getparam="true">
<name>volumeid</name>
<param>volumeid</param>
</item>
<item random="true" setparam="true">
<name>name</name>
<param>privatetemplatename</param>
</item>
<item>
<name>displaytext</name>
<value>newtext</value>
</item>
<item>
<name>osTypeId</name>
<value>12</value>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>privatetemplateid</param>
</item>
</returnvalue>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<testcase>List template directory after it was created</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Restarting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>restart</value>
</item>
</parameters>
</command>
<command>
<name>sleep.sh</name>
<script>true</script>
<testcase>Sleep for 4 min</testcase>
<parameters>
<item>
<name>s</name>
<value>240</value>
</item>
</parameters>
</command>
<command>
<name>deployVirtualMachine</name>
<testcase>Deploy vm from private template after management server was rebooted</testcase>
<parameters>
<item getparam="true">
<name>zoneid</name>
<param>globalzoneid</param>
</item>
<item getparam="true">
<name>serviceofferingid</name>
<param>globalserviceofferingid</param>
</item>
<item getparam="true">
<name>diskofferingid</name>
<param>globaldiskofferingid</param>
</item>
<item getparam="true">
<name>templateid</name>
<param>privatetemplateid</param>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
<item>
<name>displayname</name>
<value>PrivateTempSyncVM</value>
</item>
<item>
<name>group</name>
<value>group2</value>
</item>
<item getparam="true">
<name>networkids</name>
<param>globalnetworkid</param>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>vmid</param>
</item>
</returnvalue>
</command>
<!-- Register template, delete it from the secondary storage and restart management server. Make sure that template download started again -->
<command>
<name>registerTemplate</name>
<testcase>Register template</testcase>
<parameters>
<item random="true" setparam="true">
<name>name</name>
<param>registername</param>
</item>
<item random="true" setparam="true">
<name>displaytext</name>
<param>registerdisplay</param>
</item>
<item getparam="true">
<name>url</name>
<param>globaltemplateurl</param>
</item>
<item>
<name>ostypeid</name>
<value>12</value>
</item>
<item>
<name>format</name>
<value>vhd</value>
</item>
<item getparam="true">
<name>zoneid</name>
<param>globalzoneid</param>
</item>
<item>
<name>account</name>
<value>admin</value>
</item>
<item>
<name>domainid</name>
<value>1</value>
</item>
</parameters>
<returnvalue>
<item setparam="true">
<name>id</name>
<param>privatetemplateid</param>
</item>
</returnvalue>
</command>
<command>
<name>sleep.sh</name>
<script>true</script>
<testcase>Sleep for 5 min</testcase>
<parameters>
<item>
<name>s</name>
<value>300</value>
</item>
</parameters>
</command>
<command>
<name>listtemplate.sh</name>
<script>true</script>
<testcase>List template directory after it was created</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>removetemplate.sh</name>
<script>true</script>
<testcase>Removing template file from secondary storage</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>secondary_storage_ip</param>
</item>
<item getparam="true">
<name>s</name>
<param>secondary_storage_dir</param>
</item>
<item getparam="true">
<name>p</name>
<param>template_path</param>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Stopping management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>stop</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Stopping management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>stop</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Starting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms1</param>
</item>
<item>
<name>o</name>
<value>start</value>
</item>
</parameters>
</command>
<command>
<name>ms.sh</name>
<script>true</script>
<testcase>Starting management server</testcase>
<parameters>
<item getparam="true">
<name>h</name>
<param>ms2</param>
</item>
<item>
<name>o</name>
<value>start</value>
</item>
</parameters>
</command>
<command>
<name>sleep.sh</name>
<script>true</script>
<testcase>Sleep for 15 seconds</testcase>
<parameters>
<item>
<name>s</name>
<value>15</value>
</item>
</parameters>
</command>
<!-- Execute a cleanup -->
<command>
<name>destroyVirtualMachine</name>
<testcase>Destroy virtual machine as a part of cleanup</testcase>
<parameters>
<item getparam="true">
<name>id</name>
<param>vmid</param>
</item>
</parameters>
</command>
</templatesync>