cc1  v2.1
CC1 source code docs
 All Classes Namespaces Files Functions Variables Pages
s113_disk_attach_foreign.py
Go to the documentation of this file.
1 # -*- coding: utf-8 -*-
2 # @COPYRIGHT_begin
3 #
4 # Copyright [2010-2014] Institute of Nuclear Physics PAN, Krakow, Poland
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 # http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 #
18 # @COPYRIGHT_end
19 
20 ##
21 #
22 # Attach disks for not user's vm and vice versa
23 #
24 from predefined.actions import *
25 from predefined.users import *
26 from predefined.macros import *
27 import settings
28 
29 actions = []
30 actions.append(list_clusters)
31 
32 actions.append(list_filesystems)
33 actions.append(list_video_devices)
34 actions.append(list_network_devices)
35 actions.append(list_disk_controllers)
36 actions.append(list_all_storage_images)
37 actions.append(list_private_storage_images)
38 actions.append(list_private_vm_images)
39 actions.append(list_templates)
40 actions.append(list_available_networks)
41 
42 # Try to start VM with not my storage
43 actions.append({'u': test_users[1],
44  'fname': 'vm.user.create',
45  'args': [{'vnc': True,
46  'name': 'TestVMForeignStorage',
47  'iso_list': [],
48  'image_id': MACRO_GET_PRIVATE_VM_IMAGE_ID(settings.PRIVATE_IMAGE),
49  'disk_list': [MACRO_GET_PRIVATE_STORAGE_ID("Test Storage1")],
50  'template_id': MACRO_GET_TEMPLATE_ID("Small"),
51  'description': 'asd'}],
52  'estatus': 'image_permission',
53  })
54 
55 # Start VM...
56 actions.append({'u': u_new,
57  'fname': 'vm.user.create',
58  'args': [{'vnc': True,
59  'name': 'TestVM',
60  'iso_list': [],
61  'image_id': MACRO_GET_PRIVATE_VM_IMAGE_ID(settings.PRIVATE_IMAGE),
62  'disk_list': [],
63  'template_id': MACRO_GET_TEMPLATE_ID("Small"),
64  'description': 'asd'}]
65  })
66 
67 actions.append(wait_vm_is_running("TestVM"))
68 actions.append(list_user_vms)
69 
70 # ... try to attach my storage (test1 user) to not my vm
71 actions.append({'u': test_users[1],
72  'fname': 'image.user.attach',
73  'args': [MACRO_GET_USER_VM_ID("TestVM"),
74  {'img_id': MACRO_GET_DISK_STORAGE_ID("ForeignStorage1"),
75  'disk_controller': MACRO_GET_DISK_CONTROLLER_ID("scsi")}],
76  'estatus': 'user_permission',
77  })
78 # ...and try to attach not my storage
79 actions.append({'u': u_new,
80  'fname': 'image.user.attach',
81  'args': [MACRO_GET_USER_VM_ID("TestVM"),
82  {'img_id': MACRO_GET_DISK_STORAGE_ID("ForeignStorage1"),
83  'disk_controller': MACRO_GET_DISK_CONTROLLER_ID("scsi")}],
84  'estatus': 'image_permission',
85  })
86 
87 # Destroy VM
88 actions.append({'u': u_new,
89  'fname': 'vm.user.destroy',
90  'args': [[MACRO_GET_USER_VM_ID("TestVM")]]})
91 
92