1
2
3 default_config = {
4 'default': 'smallcluster',
5 'enable_experimental': 'False',
6 'aws_access_key_id': 'asd0asd9f0asd0fas0d9f0',
7 'aws_secret_access_key': 'asdf0a9sdf09203fj0asdf',
8 'aws_user_id': 9009230923,
9 'k1_location': '~/.path/to/k1_rsa',
10 'k2_location': '/path/to/k2_rsa',
11 'k3_location': '/path/to/k3_rsa',
12 'v1_id': 'vol-c999999',
13 'v1_device': '/dev/sdj',
14 'v1_partition': 1,
15 'v1_mount_path': '/volume1',
16 'v2_id': 'vol-c888888',
17 'v2_device': '/dev/sdk',
18 'v2_partition': 1,
19 'v2_mount_path': '/volume2',
20 'v3_id': 'vol-c777777',
21 'v3_device': '/dev/sdl',
22 'v3_partition': 1,
23 'v3_mount_path': '/volume3',
24 'v4_id': 'vol-c666666',
25 'v4_partition': 1,
26 'v4_mount_path': '/volume4',
27 'v5_id': 'vol-c555555',
28 'v5_partition': 1,
29 'v5_mount_path': '/volume5',
30 'p1_class': 'starcluster.tests.mytestplugin.SetupClass',
31 'p1_param1': 23,
32 'p1_param2': 'skidoo',
33 'p2_class': 'starcluster.tests.mytestplugin.SetupClass2',
34 'p2_param1': 'hello',
35 'p2_param2': 'world',
36 'p3_class': 'starcluster.tests.mytestplugin.SetupClass3',
37 'p3_param1': 'bon',
38 'p3_param2': 'jour',
39 'p3_param3': 'monsignour',
40 's1_protocol': 'udp',
41 's1_from_port': 20,
42 's1_to_port': 20,
43 's1_cidr_ip': '192.168.1.0/24',
44 's2_protocol': 'tcp',
45 's2_from_port': 80,
46 's2_to_port': 20,
47 's2_cidr_ip': '192.168.233.0/24',
48 's3_from_port': 20,
49 's3_to_port': 30,
50 'c1_keyname': 'k1',
51 'c1_size': 4,
52 'c1_user': 'testuser',
53 'c1_shell': 'zsh',
54 'c1_master_id': 'ami-8f9e71e6',
55 'c1_node_id': 'ami-8f9e71e6',
56 'c1_master_type': 'm1.small',
57 'c1_node_type': 'm1.small',
58 'c1_vols': 'v1,v2,v3',
59 'c1_plugs': 'p1,p2,p3',
60 'c1_zone': 'us-east-1c',
61 'c2_extends': 'c1',
62 'c2_keyname': 'k2',
63 'c2_size': 6,
64 'c2_master_type': 'c1.xlarge',
65 'c2_node_type': 'c1.xlarge',
66 'c2_vols': 'v1,v2',
67 'c3_extends': 'c2',
68 'c3_keyname': 'k3',
69 'c3_size': 8,
70 'c3_vols': 'v3',
71 'c4_extends': 'c3',
72 'c4_permissions': 's1',
73 }
74
75 config_test_template = """
76 [global]
77 DEFAULT=%(default)s
78 ENABLE_EXPERIMENTAL=%(enable_experimental)s
79
80 [aws info]
81 AWS_ACCESS_KEY_ID = %(aws_access_key_id)s
82 AWS_SECRET_ACCESS_KEY = %(aws_secret_access_key)s
83 AWS_USER_ID= %(aws_user_id)s
84
85 [key k1]
86 KEY_LOCATION=%(k1_location)s
87
88 [key k2]
89 KEY_LOCATION=%(k2_location)s
90
91 [key k3]
92 KEY_LOCATION=%(k3_location)s
93
94 [volume v1]
95 VOLUME_ID = %(v1_id)s
96 DEVICE = %(v1_device)s
97 PARTITION = %(v1_partition)s
98 MOUNT_PATH = %(v1_mount_path)s
99
100 [volume v2]
101 VOLUME_ID = %(v2_id)s
102 DEVICE = %(v2_device)s
103 PARTITION = %(v2_partition)s
104 MOUNT_PATH = %(v2_mount_path)s
105
106 [volume v3]
107 VOLUME_ID = %(v3_id)s
108 DEVICE = %(v3_device)s
109 PARTITION = %(v3_partition)s
110 MOUNT_PATH = %(v3_mount_path)s
111
112 [volume v4]
113 VOLUME_ID = %(v4_id)s
114 PARTITION = %(v4_partition)s
115 MOUNT_PATH = %(v4_mount_path)s
116
117 [volume v5]
118 VOLUME_ID = %(v5_id)s
119 PARTITION = %(v5_partition)s
120 MOUNT_PATH = %(v5_mount_path)s
121
122 [plugin p1]
123 SETUP_CLASS = %(p1_class)s
124 MY_ARG = %(p1_param1)s
125 MY_OTHER_ARG = %(p1_param2)s
126
127 [plugin p2]
128 SETUP_CLASS = %(p2_class)s
129 MY_ARG = %(p2_param1)s
130 MY_OTHER_ARG = %(p2_param2)s
131
132 [plugin p3]
133 SETUP_CLASS = %(p3_class)s
134 MY_ARG = %(p3_param1)s
135 MY_OTHER_ARG = %(p3_param2)s
136 MY_OTHER_OTHER_ARG = %(p3_param3)s
137
138 [permission s1]
139 protocol = %(s1_protocol)s
140 from_port = %(s1_from_port)s
141 to_port = %(s1_to_port)s
142 cidr_ip = %(s1_cidr_ip)s
143
144 [permission s2]
145 protocol = %(s2_protocol)s
146 from_port = %(s2_from_port)s
147 to_port = %(s2_to_port)s
148 cidr_ip = %(s2_cidr_ip)s
149
150 [permission s3]
151 from_port = %(s3_from_port)s
152 to_port = %(s3_to_port)s
153
154 [cluster c1]
155 KEYNAME = %(c1_keyname)s
156 CLUSTER_SIZE = %(c1_size)s
157 CLUSTER_USER = %(c1_user)s
158 CLUSTER_SHELL = %(c1_shell)s
159 MASTER_IMAGE_ID = %(c1_master_id)s
160 MASTER_INSTANCE_TYPE = %(c1_master_type)s
161 NODE_IMAGE_ID = %(c1_node_id)s
162 NODE_INSTANCE_TYPE = %(c1_node_type)s
163 AVAILABILITY_ZONE = %(c1_zone)s
164 VOLUMES = %(c1_vols)s
165 PLUGINS = %(c1_plugs)s
166
167 [cluster c2]
168 EXTENDS=%(c2_extends)s
169 KEYNAME = %(c2_keyname)s
170 CLUSTER_SIZE= %(c2_size)s
171 MASTER_INSTANCE_TYPE = %(c2_master_type)s
172 NODE_INSTANCE_TYPE = %(c2_node_type)s
173 VOLUMES = %(c2_vols)s
174
175 [cluster c3]
176 EXTENDS=%(c3_extends)s
177 KEYNAME = %(c3_keyname)s
178 CLUSTER_SIZE= %(c3_size)s
179 VOLUMES = %(c3_vols)s
180
181 [cluster c4]
182 EXTENDS=%(c4_extends)s
183 PERMISSIONS=%(c4_permissions)s
184 """
185