Merge lp:~sfeole/openstack-charm-testing/deprecate into lp:openstack-charm-testing
- deprecate
- Merge into trunk
Proposed by
Sean Feole
Status: | Merged |
---|---|
Merged at revision: | 323 |
Proposed branch: | lp:~sfeole/openstack-charm-testing/deprecate |
Merge into: | lp:openstack-charm-testing |
Diff against target: |
8714 lines (+3798/-3795) 218 files modified
README (+3/-143) README-ipv6.md (+0/-92) README-lxd.md (+0/-90) README-multihypervisor.md (+0/-157) deprecated/README (+143/-0) deprecated/README-ipv6.md (+92/-0) deprecated/README-lxd.md (+90/-0) deprecated/README-multihypervisor.md (+157/-0) deprecated/novarc (+11/-0) deprecated/novarc_unset_all (+5/-0) deprecated/novarcv3_domain (+16/-0) deprecated/novarcv3_project (+17/-0) deprecated/profiles/arm64 (+39/-0) deprecated/profiles/common (+85/-0) deprecated/profiles/default (+80/-0) deprecated/profiles/dellstack (+14/-0) deprecated/profiles/kernelstack (+15/-0) deprecated/profiles/keystonev3 (+104/-0) deprecated/profiles/lxd (+112/-0) deprecated/profiles/multihypervisor (+67/-0) deprecated/profiles/powerkvm (+46/-0) deprecated/profiles/ppc64el (+46/-0) deprecated/profiles/refstack_only (+32/-0) deprecated/profiles/stsstack (+9/-0) deprecated/profiles/vpil (+14/-0) deprecated/requirements.txt (+4/-0) deprecated/templates/heat/README (+17/-0) deprecated/templates/heat/heat-basic.yaml (+74/-0) deprecated/templates/rally/boot-and-associate-floating-ip.yaml (+18/-0) deprecated/templates/rally/boot-and-block-migrate.yaml (+17/-0) deprecated/templates/rally/boot-and-delete-multiple.yaml (+18/-0) deprecated/templates/rally/boot-and-delete-server-with-keypairs.yaml (+20/-0) deprecated/templates/rally/boot-and-delete-server-with-secgroups.yaml (+21/-0) deprecated/templates/rally/boot-and-delete.yaml (+18/-0) deprecated/templates/rally/boot-and-get-console-server.yaml (+18/-0) deprecated/templates/rally/boot-and-list.yaml (+19/-0) deprecated/templates/rally/boot-and-live-migrate.yaml (+17/-0) deprecated/templates/rally/boot-and-migrate.yaml (+16/-0) deprecated/templates/rally/boot-and-rebuild.yaml (+18/-0) deprecated/templates/rally/boot-and-show-server.yaml (+18/-0) deprecated/templates/rally/boot-bounce-delete.yaml (+27/-0) deprecated/templates/rally/boot-from-volume-and-delete.yaml (+19/-0) deprecated/templates/rally/boot-from-volume-and-resize.yaml (+25/-0) deprecated/templates/rally/boot-from-volume.yaml (+18/-0) deprecated/templates/rally/boot-lock-unlock-and-delete.yaml (+17/-0) deprecated/templates/rally/boot-server-attach-created-volume-and-live-migrate.yaml (+20/-0) deprecated/templates/rally/boot-server-attach-created-volume-and-resize.yaml (+25/-0) deprecated/templates/rally/boot-server-from-volume-and-live-migrate.yaml (+19/-0) deprecated/templates/rally/boot-snapshot-boot-delete.yaml (+18/-0) deprecated/templates/rally/boot.yaml (+17/-0) deprecated/templates/rally/create-and-delete-floating-ips-bulk.yaml (+13/-0) deprecated/templates/rally/create-and-delete-keypair.yaml (+11/-0) deprecated/templates/rally/create-and-delete-network.yaml (+13/-0) deprecated/templates/rally/create-and-delete-secgroups.yaml (+14/-0) deprecated/templates/rally/create-and-list-floating-ips-bulk.yaml (+14/-0) deprecated/templates/rally/create-and-list-keypairs.yaml (+11/-0) deprecated/templates/rally/create-and-list-networks.yaml (+13/-0) deprecated/templates/rally/create-and-list-secgroups.yaml (+14/-0) deprecated/templates/rally/create-and-update-secgroups.yaml (+13/-0) deprecated/templates/rally/list-agents.yaml (+7/-0) deprecated/templates/rally/list-aggregates.yaml (+7/-0) deprecated/templates/rally/list-availability-zones.yaml (+9/-0) deprecated/templates/rally/list-flavors.yaml (+13/-0) deprecated/templates/rally/list-hosts.yaml (+7/-0) deprecated/templates/rally/list-hypervisors.yaml (+9/-0) deprecated/templates/rally/list-images.yaml (+13/-0) deprecated/templates/rally/list-servers.yaml (+20/-0) deprecated/templates/rally/list-services.yaml (+7/-0) deprecated/templates/rally/pause-and-unpause.yaml (+18/-0) deprecated/templates/rally/resize-server.yaml (+21/-0) deprecated/templates/rally/shelve-and-unshelve.yaml (+18/-0) deprecated/templates/rally/suspend-and-resume.yaml (+18/-0) deprecated/templates/tempest/accounts.yaml (+6/-0) deprecated/templates/tempest/tempest-v3.conf.template (+71/-0) deprecated/templates/tempest/tempest.conf.oil_example (+461/-0) deprecated/templates/tempest/tempest.conf.template (+94/-0) deprecated/templates/tempest/tempest.conf.template.basic (+90/-0) deprecated/templates/tempest/tempest.conf.template.lxd (+86/-0) deprecated/templates/tempest/tempest.refstack.template.conf (+102/-0) deprecated/tools/deprecated/ppc64el-post-deploy-patches.sh (+80/-0) deprecated/tools/flavor_default.sh (+5/-0) deprecated/tools/flavor_shrink.sh (+5/-0) deprecated/tools/float_all.sh (+39/-0) deprecated/tools/float_all_new.sh (+44/-0) deprecated/tools/hardening/run-apache-tests (+15/-0) deprecated/tools/hardening/run-mysql-tests (+15/-0) deprecated/tools/hardening/run-os-tests (+4/-0) deprecated/tools/hardening/run-ssh-tests (+16/-0) deprecated/tools/images_amd64.sh (+39/-0) deprecated/tools/images_arm64.sh (+13/-0) deprecated/tools/images_lxd.sh (+19/-0) deprecated/tools/images_lxd_convert.sh (+221/-0) deprecated/tools/images_ppc64el.sh (+24/-0) deprecated/tools/inject_kernel_ppa.sh (+24/-0) deprecated/tools/install_rally.sh (+45/-0) deprecated/tools/instance_delete_all.sh (+11/-0) deprecated/tools/instance_flavor_show.sh (+8/-0) deprecated/tools/instance_hypervisor_show.sh (+8/-0) deprecated/tools/instance_launch.sh (+37/-0) deprecated/tools/instance_ssh_ping_all.sh (+6/-0) deprecated/tools/instance_start_all.sh (+2/-0) deprecated/tools/instance_stop_all.sh (+3/-0) deprecated/tools/instance_wait.sh (+29/-0) deprecated/tools/ipv6/check-cluster-status.sh (+25/-0) deprecated/tools/ipv6/check-db-grants.sh (+17/-0) deprecated/tools/ipv6/novarc (+6/-0) deprecated/tools/ipv6/post-deploy-test.sh (+19/-0) deprecated/tools/keystone_ca.sh (+9/-0) deprecated/tools/quota_high.sh (+25/-0) deprecated/tools/quota_million.sh (+25/-0) deprecated/tools/sec_groups.sh (+8/-0) deprecated/tox.ini (+35/-0) deprecated/tune-and-launch (+9/-0) novarc (+0/-11) novarc_unset_all (+0/-5) novarcv3_domain (+0/-16) novarcv3_project (+0/-17) profiles/arm64 (+0/-39) profiles/common (+0/-85) profiles/default (+0/-80) profiles/dellstack (+0/-14) profiles/kernelstack (+0/-15) profiles/keystonev3 (+0/-104) profiles/lxd (+0/-112) profiles/multihypervisor (+0/-67) profiles/powerkvm (+0/-46) profiles/ppc64el (+0/-46) profiles/refstack_only (+0/-32) profiles/stsstack (+0/-9) profiles/vpil (+0/-14) requirements.txt (+0/-4) templates/heat/README (+0/-17) templates/heat/heat-basic.yaml (+0/-74) templates/rally/boot-and-associate-floating-ip.yaml (+0/-18) templates/rally/boot-and-block-migrate.yaml (+0/-17) templates/rally/boot-and-delete-multiple.yaml (+0/-18) templates/rally/boot-and-delete-server-with-keypairs.yaml (+0/-20) templates/rally/boot-and-delete-server-with-secgroups.yaml (+0/-21) templates/rally/boot-and-delete.yaml (+0/-18) templates/rally/boot-and-get-console-server.yaml (+0/-18) templates/rally/boot-and-list.yaml (+0/-19) templates/rally/boot-and-live-migrate.yaml (+0/-17) templates/rally/boot-and-migrate.yaml (+0/-16) templates/rally/boot-and-rebuild.yaml (+0/-18) templates/rally/boot-and-show-server.yaml (+0/-18) templates/rally/boot-bounce-delete.yaml (+0/-27) templates/rally/boot-from-volume-and-delete.yaml (+0/-19) templates/rally/boot-from-volume-and-resize.yaml (+0/-25) templates/rally/boot-from-volume.yaml (+0/-18) templates/rally/boot-lock-unlock-and-delete.yaml (+0/-17) templates/rally/boot-server-attach-created-volume-and-live-migrate.yaml (+0/-20) templates/rally/boot-server-attach-created-volume-and-resize.yaml (+0/-25) templates/rally/boot-server-from-volume-and-live-migrate.yaml (+0/-19) templates/rally/boot-snapshot-boot-delete.yaml (+0/-18) templates/rally/boot.yaml (+0/-17) templates/rally/create-and-delete-floating-ips-bulk.yaml (+0/-13) templates/rally/create-and-delete-keypair.yaml (+0/-11) templates/rally/create-and-delete-network.yaml (+0/-13) templates/rally/create-and-delete-secgroups.yaml (+0/-14) templates/rally/create-and-list-floating-ips-bulk.yaml (+0/-14) templates/rally/create-and-list-keypairs.yaml (+0/-11) templates/rally/create-and-list-networks.yaml (+0/-13) templates/rally/create-and-list-secgroups.yaml (+0/-14) templates/rally/create-and-update-secgroups.yaml (+0/-13) templates/rally/list-agents.yaml (+0/-7) templates/rally/list-aggregates.yaml (+0/-7) templates/rally/list-availability-zones.yaml (+0/-9) templates/rally/list-flavors.yaml (+0/-13) templates/rally/list-hosts.yaml (+0/-7) templates/rally/list-hypervisors.yaml (+0/-9) templates/rally/list-images.yaml (+0/-13) templates/rally/list-servers.yaml (+0/-20) templates/rally/list-services.yaml (+0/-7) templates/rally/pause-and-unpause.yaml (+0/-18) templates/rally/resize-server.yaml (+0/-21) templates/rally/shelve-and-unshelve.yaml (+0/-18) templates/rally/suspend-and-resume.yaml (+0/-18) templates/tempest/accounts.yaml (+0/-6) templates/tempest/tempest-v3.conf.template (+0/-71) templates/tempest/tempest.conf.oil_example (+0/-461) templates/tempest/tempest.conf.template (+0/-94) templates/tempest/tempest.conf.template.basic (+0/-90) templates/tempest/tempest.conf.template.lxd (+0/-86) templates/tempest/tempest.refstack.template.conf (+0/-102) tools/deprecated/ppc64el-post-deploy-patches.sh (+0/-80) tools/flavor_default.sh (+0/-5) tools/flavor_shrink.sh (+0/-5) tools/float_all.sh (+0/-39) tools/float_all_new.sh (+0/-44) tools/hardening/run-apache-tests (+0/-15) tools/hardening/run-mysql-tests (+0/-15) tools/hardening/run-os-tests (+0/-4) tools/hardening/run-ssh-tests (+0/-16) tools/images_amd64.sh (+0/-39) tools/images_arm64.sh (+0/-13) tools/images_lxd.sh (+0/-19) tools/images_lxd_convert.sh (+0/-221) tools/images_ppc64el.sh (+0/-24) tools/inject_kernel_ppa.sh (+0/-24) tools/install_rally.sh (+0/-45) tools/instance_delete_all.sh (+0/-11) tools/instance_flavor_show.sh (+0/-8) tools/instance_hypervisor_show.sh (+0/-8) tools/instance_launch.sh (+0/-37) tools/instance_ssh_ping_all.sh (+0/-6) tools/instance_start_all.sh (+0/-2) tools/instance_stop_all.sh (+0/-3) tools/instance_wait.sh (+0/-29) tools/ipv6/check-cluster-status.sh (+0/-25) tools/ipv6/check-db-grants.sh (+0/-17) tools/ipv6/novarc (+0/-6) tools/ipv6/post-deploy-test.sh (+0/-19) tools/keystone_ca.sh (+0/-9) tools/quota_high.sh (+0/-25) tools/quota_million.sh (+0/-25) tools/sec_groups.sh (+0/-8) tox.ini (+0/-35) tune-and-launch (+0/-9) |
To merge this branch: | bzr merge lp:~sfeole/openstack-charm-testing/deprecate |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Ryan Beisner | Approve | ||
Sean Feole (community) | Needs Resubmitting | ||
Review via email: mp+341663@code.launchpad.net |
Commit message
Description of the change
openstack-
To post a comment you must log in.
- 324. By Sean Feole
-
rename dir to "deprecated"
Revision history for this message
Ryan Beisner (1chb1n) : | # |
review:
Approve
Revision history for this message
Sean Feole (sfeole) wrote : | # |
I don't have perms to push to OCT on bzr ;P
On Mon, Mar 19, 2018 at 12:03 PM, Ryan Beisner <email address hidden>
wrote:
> Review: Approve
>
>
> --
> https:/
> testing/
> You are the owner of lp:~sfeole/openstack-charm-testing/deprecate.
>
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'README' |
2 | --- README 2016-07-28 15:42:39 +0000 |
3 | +++ README 2018-03-19 16:01:39 +0000 |
4 | @@ -1,143 +1,3 @@ |
5 | -OpenStack-Charm-Testing |
6 | - |
7 | -about |
8 | -===== |
9 | - |
10 | -This openstack-charm-testing (aka o-c-t) project contains reference |
11 | -juju deployer bundles, post-deployment configuration scripts, and |
12 | -other templates for Ubuntu OpenStack charm testing. |
13 | - |
14 | -For automated testing, the Ubuntu OpenStack CI engine (aka uosci) |
15 | -consumes the bundles and other templates provided herein. |
16 | - |
17 | -OpenStack package and charm developers also perform manual testing |
18 | -based on this collection of bundles and templates, as well as using |
19 | -the next.yaml and default.yaml bundles as a baseline for edge cases and |
20 | -special testing. |
21 | - |
22 | -Generally, these configurations are tuned for virtual deployments, |
23 | -ie. testing short-lived OpenStack overclouds on top of an OpenStack |
24 | -undercloud. Some pieces may be specific to Canonical Server Team's |
25 | -internal dev cloud ('serverstack'), but can be easily modified for |
26 | -bare metal or other environments. |
27 | - |
28 | - |
29 | -deploy |
30 | -====== |
31 | - |
32 | -juju-deployer --bootstrap -c default.yaml -d trusty-juno |
33 | - |
34 | -targets exist for most combinations, e.g.: |
35 | - |
36 | - trusty-icehouse |
37 | - trusty-mitaka-proposed |
38 | - xenial-mitaka |
39 | - |
40 | - |
41 | -configure |
42 | -========= |
43 | - |
44 | -To configure serverstack run: |
45 | - ./configure |
46 | - |
47 | -To configure profiles 'dellstack, stsstack, ppc64el, kernelstack, lxd, multihypervisor', run: |
48 | - ./configure <profile> |
49 | - |
50 | -These "configure" scripts: |
51 | - |
52 | -a) Add an extra port to the neutron-gateway service for |
53 | - OpenStack-on-OpenStack deployments (ie. serverstack, stsstack). |
54 | - |
55 | -b) Configure appropriate external networking |
56 | - |
57 | -c) Download and upload images from ~/images |
58 | - |
59 | -d) Create demo tenants |
60 | - |
61 | -e) Write a tempest configuration file and clone the tempest repository from upstream |
62 | - |
63 | - |
64 | -test - tempest smoke |
65 | -==================== |
66 | - |
67 | -``` |
68 | -juju action do heat/0 domain-setup # Manual action required to configure heat permissions |
69 | -cd tempest |
70 | -sudo apt-get install python-dev python-virtualenv libffi-dev libssl-dev libyaml-dev -y |
71 | -virtualenv .venv |
72 | -.venv/bin/pip install -r requirements.txt |
73 | -.venv/bin/pip install python-ceilometerclient python-cinderclient python-glanceclient python-heatclient \ |
74 | - python-keystoneclient python-neutronclient python-novaclient python-swiftclient python-openstackclient pytz |
75 | -./run_tempest.sh -V --smoke |
76 | -``` |
77 | - |
78 | -NOTES: |
79 | - |
80 | - * Some failures are to be expected, depending on deployment environment (firewall, proxy |
81 | - restrictions, capacity, etc.). |
82 | - |
83 | - |
84 | -test - tempest full |
85 | -=================== |
86 | - |
87 | - * Full tests include over 2000 exercises and may take several |
88 | - hours to execute. |
89 | - |
90 | -cd tempest |
91 | -sudo pip install -r requirements.txt |
92 | -./run_tempest.sh -N -t |
93 | - |
94 | - |
95 | -destroy |
96 | -======= |
97 | - |
98 | -juju destroy-environment <your-enviro-name> |
99 | - |
100 | - |
101 | -manual instance test example (tools usage) |
102 | -========================================== |
103 | - |
104 | - * A common use for the bundles and tools might look like this. |
105 | - * See the tune-and-launch script as one common post-deployment time-saver. |
106 | - |
107 | -``` |
108 | -# deploy a cloud |
109 | -juju-deployer --bootstrap -c default.yaml -d trusty-juno |
110 | - |
111 | -# configure the cloud and add images |
112 | -./configure (or use configure-dellstack or configure-stsstack) |
113 | - |
114 | -# get overcloud credentials |
115 | -. novarc |
116 | - |
117 | -# check basic cloud and CLI functionality |
118 | -nova hypervisor-list && glance image-list && keystone token-get |
119 | - |
120 | -# shrink flavors just for testing |
121 | -./tools/flavor_shrink.sh |
122 | - |
123 | -# bump up quotas to a ridiculous level |
124 | -./tools/quota_million.sh |
125 | - |
126 | -# add security groups |
127 | -./tools/sec_groups.sh |
128 | - |
129 | -# launch some amd64 instances |
130 | -./tools/instance_launch.sh 2 cirros |
131 | -./tools/instance_launch.sh 2 trusty |
132 | -./tools/instance_launch.sh 2 xenial |
133 | - |
134 | -# optionally add ppc64el images |
135 | -./tools/images_ppc64el.sh |
136 | - |
137 | -# optionally launch ppc64el instances |
138 | -./tools/instance_launch.sh 2 trusty-ppc64el |
139 | -./tools/instance_launch.sh 2 xenial-ppc64el |
140 | - |
141 | -# give floating IPs to all instances |
142 | -./tools/float_all.sh |
143 | - |
144 | -# ssh to any of the new instances |
145 | -nova list |
146 | -ssh -i ~/testkey.pem <floating-ip-address> |
147 | -``` |
148 | +Please Note: bzr lp:openstack-charm-testing has been moved to GitHub \o/ |
149 | + |
150 | +Please Refer to: https://github.com/openstack-charmers/openstack-charm-testing |
151 | |
152 | === removed file 'README-ipv6.md' |
153 | --- README-ipv6.md 2016-06-28 12:08:43 +0000 |
154 | +++ README-ipv6.md 1970-01-01 00:00:00 +0000 |
155 | @@ -1,92 +0,0 @@ |
156 | -Openstack Charms with IPv6 |
157 | -========================== |
158 | -How to deploy Openstack charms on an IPv6 network. |
159 | - |
160 | -NOTE[0]: the percona-cluster charm includes a workaround for bug 1380747 which |
161 | - is intended to be removed once this issue is fixed upstream. |
162 | - |
163 | -NOTE[1]: swift-proxy and neutron-gateway both require python-eventlet >= 0.17 |
164 | - which only exists in distro as of Ubuntu Wily (Openstack Liberty). |
165 | - |
166 | -Requirements |
167 | -============ |
168 | -In order for IPv6 enabled charms to work, hosts much be configured with ipv6 |
169 | -addresses. For test purposes one case use radvd to automatically provide ipv6 |
170 | -addresses to nodes on your network so that you end up with something similar |
171 | -to the following: |
172 | -``` |
173 | -eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP group default qlen 1000 |
174 | - link/ether fa:16:3e:d3:99:81 brd ff:ff:ff:ff:ff:ff |
175 | - inet 10.5.0.77/16 brd 10.5.255.255 scope global eth0 |
176 | - valid_lft forever preferred_lft forever |
177 | - inet6 2001:db8:0:1:f816:3eff:fed3:9981/64 scope global dynamic |
178 | - valid_lft 86147sec preferred_lft 14147sec |
179 | - inet6 fe80::f816:3eff:fed3:9981/64 scope link |
180 | - valid_lft forever preferred_lft forever |
181 | -``` |
182 | -NOTE: ensure that ipv6 privacy extensions are DISABLED since the charms do not |
183 | -support this feature. Ubuntu server currently has them disabled by default and |
184 | -desktop has them enabled. |
185 | - |
186 | -Configuring RADVD |
187 | -================= |
188 | - |
189 | -1) Install |
190 | - |
191 | - sudo apt-get install radvd |
192 | - |
193 | -2) Set gateway address (assuming eth0 throughout here) |
194 | - |
195 | - sudo ip addr add 2001:db8:0:1::2/64 dev eth0 |
196 | - |
197 | -3) Configure |
198 | - |
199 | - In /etc/radvd.conf: |
200 | - |
201 | - The prefix "2001:db8:0:1::/64" should be changed according to real network |
202 | - allocation e.g. |
203 | - |
204 | - interface eth0 |
205 | - { |
206 | - AdvSendAdvert on; |
207 | - prefix 2001:db8:0:1::/64 |
208 | - { |
209 | - AdvOnLink on; |
210 | - AdvAutonomous on; |
211 | - }; |
212 | - }; |
213 | - |
214 | -4) sudo service radvd restart |
215 | - |
216 | -5) Make sure ipv6 forwarding is enabled |
217 | -``` |
218 | - echo "net.ipv6.conf.all.forwarding = 1"| sudo tee /etc/sysctl.d/100-openstack-charms-ipv6.conf |
219 | - sudo sysctl -p /etc/sysctl.d/100-openstack-charms-ipv6.conf |
220 | -``` |
221 | -6) Let IPv6 pass through the firewall |
222 | -``` |
223 | - sudo ip6tables -F |
224 | -``` |
225 | -7) If you are deploying to Openstack, make sure your nova/neutron security |
226 | - group rules are allowing Ingress ICMP and TCP (./tools/sec_groups.sh) |
227 | - |
228 | - |
229 | -Deploying the charms |
230 | -==================== |
231 | - |
232 | -1) choose a bundle from: |
233 | - |
234 | - * bundles/ipv6/next-ipv6.yaml - deploys charms ipv6 from the development branches |
235 | - * bundles/ipv6/next-ipv6-ha.yaml - deploys charms as HA ipv6 from the development branches |
236 | - |
237 | -2) Using one of the above do: |
238 | -``` |
239 | - juju-deployer -c <bundle> -d trusty-mitaka |
240 | -``` |
241 | - |
242 | -3) Once complete, switch novarc to tools/ipv6/novarc and run ./configure <profile> |
243 | - |
244 | -NOTE: if you are not deploying HA you'll need to set OS_AUTH_URL to the v6 address of your keystone unit |
245 | - |
246 | -4) You can then run tests found in the tools/ipv6 directory |
247 | - |
248 | |
249 | === removed file 'README-lxd.md' |
250 | --- README-lxd.md 2017-03-17 10:11:04 +0000 |
251 | +++ README-lxd.md 1970-01-01 00:00:00 +0000 |
252 | @@ -1,90 +0,0 @@ |
253 | -OpenStack w/ LXD Hypervisor Scenario |
254 | -===================================== |
255 | -An OpenStack-on-OpenStack example exercise. |
256 | - |
257 | - |
258 | -### Get o-c-t bundle and scripts |
259 | -``` |
260 | -mkdir -p ~/tools |
261 | -bzr branch lp:openstack-charm-testing ~/tools/openstack-charm-testing |
262 | -cd ~/./tools/openstack-charm-testing |
263 | -``` |
264 | - |
265 | -### Deploy |
266 | -Bootstrap, then deploy Wily + Liberty. |
267 | -``` |
268 | -juju-deployer -vdB -c bundles/lxd/next.yaml xenial-mitaka |
269 | -``` |
270 | - |
271 | -### Configure |
272 | -Add images, add 2nd NIC to neutron-gateway instance, create images, tenant, tenant router, networks. |
273 | -``` |
274 | -./configure lxd |
275 | -``` |
276 | - |
277 | -### Source the deployed overcloud nova credentials |
278 | -``` |
279 | -. ~/tools/openstack-charm-testing/novarc |
280 | -``` |
281 | - |
282 | -### Inspect and confirm the deployed cloud |
283 | - |
284 | -``` |
285 | -glance image-list |
286 | -``` |
287 | - |
288 | -``` |
289 | -nova hypervisor-list |
290 | -``` |
291 | - |
292 | -``` |
293 | -nova service-list |
294 | -``` |
295 | - |
296 | -``` |
297 | -neutron net-list |
298 | -``` |
299 | - |
300 | -### Shrink flavors |
301 | -Not required, but useful when testing density. |
302 | -``` |
303 | -./tools/flavor_shrink.sh |
304 | -``` |
305 | - |
306 | -### Set quotas really high |
307 | -Not required, but allows drastic resource overcommits. |
308 | -``` |
309 | -./tools/quota_million.sh |
310 | -``` |
311 | - |
312 | -### Set security groups + MTU |
313 | -Very permissive secgroups for testing, and lower instance MTU due to nested tunnels in cloud-on-cloud scenarios. |
314 | -``` |
315 | -./tools/sec_groups.sh |
316 | -``` |
317 | - |
318 | -### Create 3 new Trusty and 3 new Xenial lxd instances |
319 | -``` |
320 | -./tools/instance_launch.sh 3 trusty |
321 | -./tools/instance_launch.sh 3 xenial |
322 | -``` |
323 | - |
324 | -### Watch the instances go ACTIVE |
325 | -``` |
326 | -watch nova list |
327 | -``` |
328 | - |
329 | -### Assign floating IP addresses |
330 | -``` |
331 | -./tools/float_all.sh |
332 | -``` |
333 | - |
334 | -### Confirm floating IPs |
335 | -``` |
336 | -nova list |
337 | -``` |
338 | - |
339 | -### Confirm SSH access & connectivity to new instances |
340 | -``` |
341 | -ssh -i ~/testkey.pem ubuntu@n.n.n.n "uname -a" |
342 | -``` |
343 | |
344 | === removed file 'README-multihypervisor.md' |
345 | --- README-multihypervisor.md 2016-04-21 21:21:39 +0000 |
346 | +++ README-multihypervisor.md 1970-01-01 00:00:00 +0000 |
347 | @@ -1,157 +0,0 @@ |
348 | -Multi-Hypervisor Scenario (LXD + KVM) |
349 | -===================================== |
350 | -An OpenStack-on-OpenStack example exercise. |
351 | - |
352 | - |
353 | -### Get o-c-t bundle and scripts |
354 | -``` |
355 | -mkdir -p ~/tools |
356 | -bzr branch lp:openstack-charm-testing ~/tools/openstack-charm-testing |
357 | -cd ~/./tools/openstack-charm-testing |
358 | -``` |
359 | - |
360 | -### Deploy |
361 | -Bootstrap, then deploy Wily + Liberty. |
362 | -``` |
363 | -juju-deployer -vdB -c bundles/multi-hypervisor/default.yaml xenial-mitaka |
364 | -``` |
365 | - |
366 | -### Configure |
367 | -Add images, add 2nd NIC to neutron-gateway instance, create tenant, tenant router, networks. |
368 | -``` |
369 | -./configure multihypervisor |
370 | -``` |
371 | - |
372 | -### Source the deployed overcloud nova credentials |
373 | -``` |
374 | -. ~/tools/openstack-charm-testing/novarc |
375 | -``` |
376 | - |
377 | -### Inspect and confirm the deployed cloud |
378 | - |
379 | -``` |
380 | -glance image-list |
381 | -+--------------------------------------+--------------------+-------------+------------------+-----------+--------+ |
382 | -| ID | Name | Disk Format | Container Format | Size | Status | |
383 | -+--------------------------------------+--------------------+-------------+------------------+-----------+--------+ |
384 | -| 91169c9a-aa5f-4cd3-bd60-120c7fa3d5d6 | trusty-disk1.img | qcow2 | bare | 258540032 | active | |
385 | -| 9ecade03-de12-42ad-9a0e-f7b12f73c8fb | trusty-root.tar.xz | root-tar | bare | 123953936 | active | |
386 | -+--------------------------------------+--------------------+-------------+------------------+-----------+--------+ |
387 | -``` |
388 | - |
389 | -``` |
390 | -nova hypervisor-list |
391 | -+----+--------------------------------------+ |
392 | -| ID | Hypervisor hostname | |
393 | -+----+--------------------------------------+ |
394 | -| 1 | juju-beis1-machine-19 | |
395 | -| 2 | juju-beis1-machine-18 | |
396 | -| 3 | juju-beis1-machine-16.openstacklocal | |
397 | -| 4 | juju-beis1-machine-15.openstacklocal | |
398 | -| 5 | juju-beis1-machine-14.openstacklocal | |
399 | -| 6 | juju-beis1-machine-17 | |
400 | -+----+--------------------------------------+ |
401 | -``` |
402 | - |
403 | -``` |
404 | -nova service-list |
405 | -+----------------+-----------------------+----------+---------+-------+----------------------------+-----------------+ |
406 | -| Binary | Host | Zone | Status | State | Updated_at | Disabled Reason | |
407 | -+----------------+-----------------------+----------+---------+-------+----------------------------+-----------------+ |
408 | -| nova-cert | juju-beis1-machine-13 | internal | enabled | up | 2015-11-30T20:05:04.000000 | - | |
409 | -| nova-scheduler | juju-beis1-machine-13 | internal | enabled | up | 2015-11-30T20:05:05.000000 | - | |
410 | -| nova-conductor | juju-beis1-machine-13 | internal | enabled | up | 2015-11-30T20:05:06.000000 | - | |
411 | -| nova-compute | juju-beis1-machine-19 | nova | enabled | up | 2015-11-30T20:05:07.000000 | - | |
412 | -| nova-compute | juju-beis1-machine-18 | nova | enabled | up | 2015-11-30T20:05:08.000000 | - | |
413 | -| nova-compute | juju-beis1-machine-16 | nova | enabled | up | 2015-11-30T20:05:03.000000 | - | |
414 | -| nova-compute | juju-beis1-machine-15 | nova | enabled | up | 2015-11-30T20:05:05.000000 | - | |
415 | -| nova-compute | juju-beis1-machine-14 | nova | enabled | up | 2015-11-30T20:05:03.000000 | - | |
416 | -| nova-compute | juju-beis1-machine-17 | nova | enabled | up | 2015-11-30T20:05:06.000000 | - | |
417 | -+----------------+-----------------------+----------+---------+-------+----------------------------+-----------------+ |
418 | -``` |
419 | - |
420 | -``` |
421 | -neutron net-list |
422 | -+--------------------------------------+---------+------------------------------------------------------+ |
423 | -| id | name | subnets | |
424 | -+--------------------------------------+---------+------------------------------------------------------+ |
425 | -| cdfadc0d-be81-4d62-8e1c-ede821e98cfa | ext_net | b4da69d0-19a3-4e29-abb4-dbb809f34097 10.5.0.0/16 | |
426 | -| 66a4df1e-f0ad-48bf-b2f8-005c41caa42f | private | 0fbba4b3-5471-4cd7-a9f9-3b04feece594 192.168.21.0/24 | |
427 | -+--------------------------------------+---------+------------------------------------------------------+ |
428 | -``` |
429 | - |
430 | -### Shrink flavors |
431 | -Not required, but useful when testing density. |
432 | -``` |
433 | -./tools/flavor_shrink.sh |
434 | -``` |
435 | - |
436 | -### Set quotas really high |
437 | -Not required, but allows drastic resource overcommits. |
438 | -``` |
439 | -./tools/quota_million.sh |
440 | -``` |
441 | - |
442 | -### Set security groups + MTU |
443 | -Very permissive secgroups for testing, and lower instance MTU due to nested tunnels in cloud-on-cloud scenarios. |
444 | -``` |
445 | -./tools/sec_groups.sh |
446 | -``` |
447 | - |
448 | -### Create 3 new trusty (kvm) instances |
449 | -``` |
450 | -./tools/instance_launch.sh 3 trusty-disk1.img |
451 | -``` |
452 | - |
453 | -### Create 3 new trusty (lxd) instances |
454 | -``` |
455 | -./tools/instance_launch.sh 3 trusty-root.tar.xz |
456 | -``` |
457 | - |
458 | -### Watch the instances go ACTIVE |
459 | -``` |
460 | -watch nova list |
461 | -+--------------------------------------+--------------------------+--------+------------+-------------+-----------------------+ |
462 | -| ID | Name | Status | Task State | Power State | Networks | |
463 | -+--------------------------------------+--------------------------+--------+------------+-------------+-----------------------+ |
464 | -| 9e1cc2f1-082f-4bec-9cdb-b99f3b010aeb | trusty-disk1.img210034 | ACTIVE | - | Running | private=192.168.21.9 | |
465 | -| 038f63b8-62c1-4504-8f22-73d577500b34 | trusty-disk1.img210057 | ACTIVE | - | Running | private=192.168.21.10 | |
466 | -| 31767f21-4558-401e-93bb-1e1cd8b3fc8a | trusty-disk1.img210120 | ACTIVE | - | Running | private=192.168.21.11 | |
467 | -| 85cec6b1-fb39-4e9c-bb08-4cea3381a24c | trusty-root.tar.xz210148 | ACTIVE | - | Running | private=192.168.21.12 | |
468 | -| c947e805-91e5-4b9d-bc93-41ab5b73a4fa | trusty-root.tar.xz210211 | ACTIVE | - | Running | private=192.168.21.13 | |
469 | -| 3c46e502-793e-44a0-a66f-de68e20e19f5 | trusty-root.tar.xz210234 | BUILD | spawning | NOSTATE | private=192.168.21.14 | |
470 | -+--------------------------------------+--------------------------+--------+------------+-------------+-----------------------+ |
471 | -``` |
472 | - |
473 | -### Assign floating IP addresses |
474 | -``` |
475 | -./tools/float_all.sh |
476 | -``` |
477 | - |
478 | -### Confirm floating IPs |
479 | -``` |
480 | -nova list |
481 | -+--------------------------------------+--------------------------+--------+------------+-------------+-----------------------------------+ |
482 | -| ID | Name | Status | Task State | Power State | Networks | |
483 | -+--------------------------------------+--------------------------+--------+------------+-------------+-----------------------------------+ |
484 | -| 9e1cc2f1-082f-4bec-9cdb-b99f3b010aeb | trusty-disk1.img210034 | ACTIVE | - | Running | private=192.168.21.9, 10.5.150.6 | |
485 | -| 038f63b8-62c1-4504-8f22-73d577500b34 | trusty-disk1.img210057 | ACTIVE | - | Running | private=192.168.21.10, 10.5.150.4 | |
486 | -| 31767f21-4558-401e-93bb-1e1cd8b3fc8a | trusty-disk1.img210120 | ACTIVE | - | Running | private=192.168.21.11, 10.5.150.1 | |
487 | -| 85cec6b1-fb39-4e9c-bb08-4cea3381a24c | trusty-root.tar.xz210148 | ACTIVE | - | Running | private=192.168.21.12, 10.5.150.3 | |
488 | -| c947e805-91e5-4b9d-bc93-41ab5b73a4fa | trusty-root.tar.xz210211 | ACTIVE | - | Running | private=192.168.21.13, 10.5.150.2 | |
489 | -| 3c46e502-793e-44a0-a66f-de68e20e19f5 | trusty-root.tar.xz210234 | ACTIVE | - | Running | private=192.168.21.14, 10.5.150.5 | |
490 | -+--------------------------------------+--------------------------+--------+------------+-------------+-----------------------------------+ |
491 | -``` |
492 | - |
493 | -### Confirm SSH access & connectivity to new instances |
494 | -``` |
495 | -ssh -i ~/testkey.pem ubuntu@10.5.150.1 "uname -a" |
496 | -Warning: Permanently added '10.5.150.1' (ECDSA) to the list of known hosts. |
497 | -Linux trusty-disk1 3.13.0-68-generic #111-Ubuntu SMP Fri Nov 6 18:17:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux |
498 | -``` |
499 | -``` |
500 | -ssh -i ~/testkey.pem ubuntu@10.5.150.2 "uname -a" |
501 | -Warning: Permanently added '10.5.150.2' (ECDSA) to the list of known hosts. |
502 | -Linux trusty-root 4.2.0-18-generic #22-Ubuntu SMP Fri Nov 6 18:25:50 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux |
503 | -``` |
504 | - |
505 | |
506 | === added directory 'deprecated' |
507 | === added file 'deprecated/README' |
508 | --- deprecated/README 1970-01-01 00:00:00 +0000 |
509 | +++ deprecated/README 2018-03-19 16:01:39 +0000 |
510 | @@ -0,0 +1,143 @@ |
511 | +OpenStack-Charm-Testing |
512 | + |
513 | +about |
514 | +===== |
515 | + |
516 | +This openstack-charm-testing (aka o-c-t) project contains reference |
517 | +juju deployer bundles, post-deployment configuration scripts, and |
518 | +other templates for Ubuntu OpenStack charm testing. |
519 | + |
520 | +For automated testing, the Ubuntu OpenStack CI engine (aka uosci) |
521 | +consumes the bundles and other templates provided herein. |
522 | + |
523 | +OpenStack package and charm developers also perform manual testing |
524 | +based on this collection of bundles and templates, as well as using |
525 | +the next.yaml and default.yaml bundles as a baseline for edge cases and |
526 | +special testing. |
527 | + |
528 | +Generally, these configurations are tuned for virtual deployments, |
529 | +ie. testing short-lived OpenStack overclouds on top of an OpenStack |
530 | +undercloud. Some pieces may be specific to Canonical Server Team's |
531 | +internal dev cloud ('serverstack'), but can be easily modified for |
532 | +bare metal or other environments. |
533 | + |
534 | + |
535 | +deploy |
536 | +====== |
537 | + |
538 | +juju-deployer --bootstrap -c default.yaml -d trusty-juno |
539 | + |
540 | +targets exist for most combinations, e.g.: |
541 | + |
542 | + trusty-icehouse |
543 | + trusty-mitaka-proposed |
544 | + xenial-mitaka |
545 | + |
546 | + |
547 | +configure |
548 | +========= |
549 | + |
550 | +To configure serverstack run: |
551 | + ./configure |
552 | + |
553 | +To configure profiles 'dellstack, stsstack, ppc64el, kernelstack, lxd, multihypervisor', run: |
554 | + ./configure <profile> |
555 | + |
556 | +These "configure" scripts: |
557 | + |
558 | +a) Add an extra port to the neutron-gateway service for |
559 | + OpenStack-on-OpenStack deployments (ie. serverstack, stsstack). |
560 | + |
561 | +b) Configure appropriate external networking |
562 | + |
563 | +c) Download and upload images from ~/images |
564 | + |
565 | +d) Create demo tenants |
566 | + |
567 | +e) Write a tempest configuration file and clone the tempest repository from upstream |
568 | + |
569 | + |
570 | +test - tempest smoke |
571 | +==================== |
572 | + |
573 | +``` |
574 | +juju action do heat/0 domain-setup # Manual action required to configure heat permissions |
575 | +cd tempest |
576 | +sudo apt-get install python-dev python-virtualenv libffi-dev libssl-dev libyaml-dev -y |
577 | +virtualenv .venv |
578 | +.venv/bin/pip install -r requirements.txt |
579 | +.venv/bin/pip install python-ceilometerclient python-cinderclient python-glanceclient python-heatclient \ |
580 | + python-keystoneclient python-neutronclient python-novaclient python-swiftclient python-openstackclient pytz |
581 | +./run_tempest.sh -V --smoke |
582 | +``` |
583 | + |
584 | +NOTES: |
585 | + |
586 | + * Some failures are to be expected, depending on deployment environment (firewall, proxy |
587 | + restrictions, capacity, etc.). |
588 | + |
589 | + |
590 | +test - tempest full |
591 | +=================== |
592 | + |
593 | + * Full tests include over 2000 exercises and may take several |
594 | + hours to execute. |
595 | + |
596 | +cd tempest |
597 | +sudo pip install -r requirements.txt |
598 | +./run_tempest.sh -N -t |
599 | + |
600 | + |
601 | +destroy |
602 | +======= |
603 | + |
604 | +juju destroy-environment <your-enviro-name> |
605 | + |
606 | + |
607 | +manual instance test example (tools usage) |
608 | +========================================== |
609 | + |
610 | + * A common use for the bundles and tools might look like this. |
611 | + * See the tune-and-launch script as one common post-deployment time-saver. |
612 | + |
613 | +``` |
614 | +# deploy a cloud |
615 | +juju-deployer --bootstrap -c default.yaml -d trusty-juno |
616 | + |
617 | +# configure the cloud and add images |
618 | +./configure (or use configure-dellstack or configure-stsstack) |
619 | + |
620 | +# get overcloud credentials |
621 | +. novarc |
622 | + |
623 | +# check basic cloud and CLI functionality |
624 | +nova hypervisor-list && glance image-list && keystone token-get |
625 | + |
626 | +# shrink flavors just for testing |
627 | +./tools/flavor_shrink.sh |
628 | + |
629 | +# bump up quotas to a ridiculous level |
630 | +./tools/quota_million.sh |
631 | + |
632 | +# add security groups |
633 | +./tools/sec_groups.sh |
634 | + |
635 | +# launch some amd64 instances |
636 | +./tools/instance_launch.sh 2 cirros |
637 | +./tools/instance_launch.sh 2 trusty |
638 | +./tools/instance_launch.sh 2 xenial |
639 | + |
640 | +# optionally add ppc64el images |
641 | +./tools/images_ppc64el.sh |
642 | + |
643 | +# optionally launch ppc64el instances |
644 | +./tools/instance_launch.sh 2 trusty-ppc64el |
645 | +./tools/instance_launch.sh 2 xenial-ppc64el |
646 | + |
647 | +# give floating IPs to all instances |
648 | +./tools/float_all.sh |
649 | + |
650 | +# ssh to any of the new instances |
651 | +nova list |
652 | +ssh -i ~/testkey.pem <floating-ip-address> |
653 | +``` |
654 | |
655 | === added file 'deprecated/README-ipv6.md' |
656 | --- deprecated/README-ipv6.md 1970-01-01 00:00:00 +0000 |
657 | +++ deprecated/README-ipv6.md 2018-03-19 16:01:39 +0000 |
658 | @@ -0,0 +1,92 @@ |
659 | +Openstack Charms with IPv6 |
660 | +========================== |
661 | +How to deploy Openstack charms on an IPv6 network. |
662 | + |
663 | +NOTE[0]: the percona-cluster charm includes a workaround for bug 1380747 which |
664 | + is intended to be removed once this issue is fixed upstream. |
665 | + |
666 | +NOTE[1]: swift-proxy and neutron-gateway both require python-eventlet >= 0.17 |
667 | + which only exists in distro as of Ubuntu Wily (Openstack Liberty). |
668 | + |
669 | +Requirements |
670 | +============ |
671 | +In order for IPv6 enabled charms to work, hosts much be configured with ipv6 |
672 | +addresses. For test purposes one case use radvd to automatically provide ipv6 |
673 | +addresses to nodes on your network so that you end up with something similar |
674 | +to the following: |
675 | +``` |
676 | +eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP group default qlen 1000 |
677 | + link/ether fa:16:3e:d3:99:81 brd ff:ff:ff:ff:ff:ff |
678 | + inet 10.5.0.77/16 brd 10.5.255.255 scope global eth0 |
679 | + valid_lft forever preferred_lft forever |
680 | + inet6 2001:db8:0:1:f816:3eff:fed3:9981/64 scope global dynamic |
681 | + valid_lft 86147sec preferred_lft 14147sec |
682 | + inet6 fe80::f816:3eff:fed3:9981/64 scope link |
683 | + valid_lft forever preferred_lft forever |
684 | +``` |
685 | +NOTE: ensure that ipv6 privacy extensions are DISABLED since the charms do not |
686 | +support this feature. Ubuntu server currently has them disabled by default and |
687 | +desktop has them enabled. |
688 | + |
689 | +Configuring RADVD |
690 | +================= |
691 | + |
692 | +1) Install |
693 | + |
694 | + sudo apt-get install radvd |
695 | + |
696 | +2) Set gateway address (assuming eth0 throughout here) |
697 | + |
698 | + sudo ip addr add 2001:db8:0:1::2/64 dev eth0 |
699 | + |
700 | +3) Configure |
701 | + |
702 | + In /etc/radvd.conf: |
703 | + |
704 | + The prefix "2001:db8:0:1::/64" should be changed according to real network |
705 | + allocation e.g. |
706 | + |
707 | + interface eth0 |
708 | + { |
709 | + AdvSendAdvert on; |
710 | + prefix 2001:db8:0:1::/64 |
711 | + { |
712 | + AdvOnLink on; |
713 | + AdvAutonomous on; |
714 | + }; |
715 | + }; |
716 | + |
717 | +4) sudo service radvd restart |
718 | + |
719 | +5) Make sure ipv6 forwarding is enabled |
720 | +``` |
721 | + echo "net.ipv6.conf.all.forwarding = 1"| sudo tee /etc/sysctl.d/100-openstack-charms-ipv6.conf |
722 | + sudo sysctl -p /etc/sysctl.d/100-openstack-charms-ipv6.conf |
723 | +``` |
724 | +6) Let IPv6 pass through the firewall |
725 | +``` |
726 | + sudo ip6tables -F |
727 | +``` |
728 | +7) If you are deploying to Openstack, make sure your nova/neutron security |
729 | + group rules are allowing Ingress ICMP and TCP (./tools/sec_groups.sh) |
730 | + |
731 | + |
732 | +Deploying the charms |
733 | +==================== |
734 | + |
735 | +1) choose a bundle from: |
736 | + |
737 | + * bundles/ipv6/next-ipv6.yaml - deploys charms ipv6 from the development branches |
738 | + * bundles/ipv6/next-ipv6-ha.yaml - deploys charms as HA ipv6 from the development branches |
739 | + |
740 | +2) Using one of the above do: |
741 | +``` |
742 | + juju-deployer -c <bundle> -d trusty-mitaka |
743 | +``` |
744 | + |
745 | +3) Once complete, switch novarc to tools/ipv6/novarc and run ./configure <profile> |
746 | + |
747 | +NOTE: if you are not deploying HA you'll need to set OS_AUTH_URL to the v6 address of your keystone unit |
748 | + |
749 | +4) You can then run tests found in the tools/ipv6 directory |
750 | + |
751 | |
752 | === added file 'deprecated/README-lxd.md' |
753 | --- deprecated/README-lxd.md 1970-01-01 00:00:00 +0000 |
754 | +++ deprecated/README-lxd.md 2018-03-19 16:01:39 +0000 |
755 | @@ -0,0 +1,90 @@ |
756 | +OpenStack w/ LXD Hypervisor Scenario |
757 | +===================================== |
758 | +An OpenStack-on-OpenStack example exercise. |
759 | + |
760 | + |
761 | +### Get o-c-t bundle and scripts |
762 | +``` |
763 | +mkdir -p ~/tools |
764 | +bzr branch lp:openstack-charm-testing ~/tools/openstack-charm-testing |
765 | +cd ~/./tools/openstack-charm-testing |
766 | +``` |
767 | + |
768 | +### Deploy |
769 | +Bootstrap, then deploy Wily + Liberty. |
770 | +``` |
771 | +juju-deployer -vdB -c bundles/lxd/next.yaml xenial-mitaka |
772 | +``` |
773 | + |
774 | +### Configure |
775 | +Add images, add 2nd NIC to neutron-gateway instance, create images, tenant, tenant router, networks. |
776 | +``` |
777 | +./configure lxd |
778 | +``` |
779 | + |
780 | +### Source the deployed overcloud nova credentials |
781 | +``` |
782 | +. ~/tools/openstack-charm-testing/novarc |
783 | +``` |
784 | + |
785 | +### Inspect and confirm the deployed cloud |
786 | + |
787 | +``` |
788 | +glance image-list |
789 | +``` |
790 | + |
791 | +``` |
792 | +nova hypervisor-list |
793 | +``` |
794 | + |
795 | +``` |
796 | +nova service-list |
797 | +``` |
798 | + |
799 | +``` |
800 | +neutron net-list |
801 | +``` |
802 | + |
803 | +### Shrink flavors |
804 | +Not required, but useful when testing density. |
805 | +``` |
806 | +./tools/flavor_shrink.sh |
807 | +``` |
808 | + |
809 | +### Set quotas really high |
810 | +Not required, but allows drastic resource overcommits. |
811 | +``` |
812 | +./tools/quota_million.sh |
813 | +``` |
814 | + |
815 | +### Set security groups + MTU |
816 | +Very permissive secgroups for testing, and lower instance MTU due to nested tunnels in cloud-on-cloud scenarios. |
817 | +``` |
818 | +./tools/sec_groups.sh |
819 | +``` |
820 | + |
821 | +### Create 3 new Trusty and 3 new Xenial lxd instances |
822 | +``` |
823 | +./tools/instance_launch.sh 3 trusty |
824 | +./tools/instance_launch.sh 3 xenial |
825 | +``` |
826 | + |
827 | +### Watch the instances go ACTIVE |
828 | +``` |
829 | +watch nova list |
830 | +``` |
831 | + |
832 | +### Assign floating IP addresses |
833 | +``` |
834 | +./tools/float_all.sh |
835 | +``` |
836 | + |
837 | +### Confirm floating IPs |
838 | +``` |
839 | +nova list |
840 | +``` |
841 | + |
842 | +### Confirm SSH access & connectivity to new instances |
843 | +``` |
844 | +ssh -i ~/testkey.pem ubuntu@n.n.n.n "uname -a" |
845 | +``` |
846 | |
847 | === added file 'deprecated/README-multihypervisor.md' |
848 | --- deprecated/README-multihypervisor.md 1970-01-01 00:00:00 +0000 |
849 | +++ deprecated/README-multihypervisor.md 2018-03-19 16:01:39 +0000 |
850 | @@ -0,0 +1,157 @@ |
851 | +Multi-Hypervisor Scenario (LXD + KVM) |
852 | +===================================== |
853 | +An OpenStack-on-OpenStack example exercise. |
854 | + |
855 | + |
856 | +### Get o-c-t bundle and scripts |
857 | +``` |
858 | +mkdir -p ~/tools |
859 | +bzr branch lp:openstack-charm-testing ~/tools/openstack-charm-testing |
860 | +cd ~/./tools/openstack-charm-testing |
861 | +``` |
862 | + |
863 | +### Deploy |
864 | +Bootstrap, then deploy Wily + Liberty. |
865 | +``` |
866 | +juju-deployer -vdB -c bundles/multi-hypervisor/default.yaml xenial-mitaka |
867 | +``` |
868 | + |
869 | +### Configure |
870 | +Add images, add 2nd NIC to neutron-gateway instance, create tenant, tenant router, networks. |
871 | +``` |
872 | +./configure multihypervisor |
873 | +``` |
874 | + |
875 | +### Source the deployed overcloud nova credentials |
876 | +``` |
877 | +. ~/tools/openstack-charm-testing/novarc |
878 | +``` |
879 | + |
880 | +### Inspect and confirm the deployed cloud |
881 | + |
882 | +``` |
883 | +glance image-list |
884 | ++--------------------------------------+--------------------+-------------+------------------+-----------+--------+ |
885 | +| ID | Name | Disk Format | Container Format | Size | Status | |
886 | ++--------------------------------------+--------------------+-------------+------------------+-----------+--------+ |
887 | +| 91169c9a-aa5f-4cd3-bd60-120c7fa3d5d6 | trusty-disk1.img | qcow2 | bare | 258540032 | active | |
888 | +| 9ecade03-de12-42ad-9a0e-f7b12f73c8fb | trusty-root.tar.xz | root-tar | bare | 123953936 | active | |
889 | ++--------------------------------------+--------------------+-------------+------------------+-----------+--------+ |
890 | +``` |
891 | + |
892 | +``` |
893 | +nova hypervisor-list |
894 | ++----+--------------------------------------+ |
895 | +| ID | Hypervisor hostname | |
896 | ++----+--------------------------------------+ |
897 | +| 1 | juju-beis1-machine-19 | |
898 | +| 2 | juju-beis1-machine-18 | |
899 | +| 3 | juju-beis1-machine-16.openstacklocal | |
900 | +| 4 | juju-beis1-machine-15.openstacklocal | |
901 | +| 5 | juju-beis1-machine-14.openstacklocal | |
902 | +| 6 | juju-beis1-machine-17 | |
903 | ++----+--------------------------------------+ |
904 | +``` |
905 | + |
906 | +``` |
907 | +nova service-list |
908 | ++----------------+-----------------------+----------+---------+-------+----------------------------+-----------------+ |
909 | +| Binary | Host | Zone | Status | State | Updated_at | Disabled Reason | |
910 | ++----------------+-----------------------+----------+---------+-------+----------------------------+-----------------+ |
911 | +| nova-cert | juju-beis1-machine-13 | internal | enabled | up | 2015-11-30T20:05:04.000000 | - | |
912 | +| nova-scheduler | juju-beis1-machine-13 | internal | enabled | up | 2015-11-30T20:05:05.000000 | - | |
913 | +| nova-conductor | juju-beis1-machine-13 | internal | enabled | up | 2015-11-30T20:05:06.000000 | - | |
914 | +| nova-compute | juju-beis1-machine-19 | nova | enabled | up | 2015-11-30T20:05:07.000000 | - | |
915 | +| nova-compute | juju-beis1-machine-18 | nova | enabled | up | 2015-11-30T20:05:08.000000 | - | |
916 | +| nova-compute | juju-beis1-machine-16 | nova | enabled | up | 2015-11-30T20:05:03.000000 | - | |
917 | +| nova-compute | juju-beis1-machine-15 | nova | enabled | up | 2015-11-30T20:05:05.000000 | - | |
918 | +| nova-compute | juju-beis1-machine-14 | nova | enabled | up | 2015-11-30T20:05:03.000000 | - | |
919 | +| nova-compute | juju-beis1-machine-17 | nova | enabled | up | 2015-11-30T20:05:06.000000 | - | |
920 | ++----------------+-----------------------+----------+---------+-------+----------------------------+-----------------+ |
921 | +``` |
922 | + |
923 | +``` |
924 | +neutron net-list |
925 | ++--------------------------------------+---------+------------------------------------------------------+ |
926 | +| id | name | subnets | |
927 | ++--------------------------------------+---------+------------------------------------------------------+ |
928 | +| cdfadc0d-be81-4d62-8e1c-ede821e98cfa | ext_net | b4da69d0-19a3-4e29-abb4-dbb809f34097 10.5.0.0/16 | |
929 | +| 66a4df1e-f0ad-48bf-b2f8-005c41caa42f | private | 0fbba4b3-5471-4cd7-a9f9-3b04feece594 192.168.21.0/24 | |
930 | ++--------------------------------------+---------+------------------------------------------------------+ |
931 | +``` |
932 | + |
933 | +### Shrink flavors |
934 | +Not required, but useful when testing density. |
935 | +``` |
936 | +./tools/flavor_shrink.sh |
937 | +``` |
938 | + |
939 | +### Set quotas really high |
940 | +Not required, but allows drastic resource overcommits. |
941 | +``` |
942 | +./tools/quota_million.sh |
943 | +``` |
944 | + |
945 | +### Set security groups + MTU |
946 | +Very permissive secgroups for testing, and lower instance MTU due to nested tunnels in cloud-on-cloud scenarios. |
947 | +``` |
948 | +./tools/sec_groups.sh |
949 | +``` |
950 | + |
951 | +### Create 3 new trusty (kvm) instances |
952 | +``` |
953 | +./tools/instance_launch.sh 3 trusty-disk1.img |
954 | +``` |
955 | + |
956 | +### Create 3 new trusty (lxd) instances |
957 | +``` |
958 | +./tools/instance_launch.sh 3 trusty-root.tar.xz |
959 | +``` |
960 | + |
961 | +### Watch the instances go ACTIVE |
962 | +``` |
963 | +watch nova list |
964 | ++--------------------------------------+--------------------------+--------+------------+-------------+-----------------------+ |
965 | +| ID | Name | Status | Task State | Power State | Networks | |
966 | ++--------------------------------------+--------------------------+--------+------------+-------------+-----------------------+ |
967 | +| 9e1cc2f1-082f-4bec-9cdb-b99f3b010aeb | trusty-disk1.img210034 | ACTIVE | - | Running | private=192.168.21.9 | |
968 | +| 038f63b8-62c1-4504-8f22-73d577500b34 | trusty-disk1.img210057 | ACTIVE | - | Running | private=192.168.21.10 | |
969 | +| 31767f21-4558-401e-93bb-1e1cd8b3fc8a | trusty-disk1.img210120 | ACTIVE | - | Running | private=192.168.21.11 | |
970 | +| 85cec6b1-fb39-4e9c-bb08-4cea3381a24c | trusty-root.tar.xz210148 | ACTIVE | - | Running | private=192.168.21.12 | |
971 | +| c947e805-91e5-4b9d-bc93-41ab5b73a4fa | trusty-root.tar.xz210211 | ACTIVE | - | Running | private=192.168.21.13 | |
972 | +| 3c46e502-793e-44a0-a66f-de68e20e19f5 | trusty-root.tar.xz210234 | BUILD | spawning | NOSTATE | private=192.168.21.14 | |
973 | ++--------------------------------------+--------------------------+--------+------------+-------------+-----------------------+ |
974 | +``` |
975 | + |
976 | +### Assign floating IP addresses |
977 | +``` |
978 | +./tools/float_all.sh |
979 | +``` |
980 | + |
981 | +### Confirm floating IPs |
982 | +``` |
983 | +nova list |
984 | ++--------------------------------------+--------------------------+--------+------------+-------------+-----------------------------------+ |
985 | +| ID | Name | Status | Task State | Power State | Networks | |
986 | ++--------------------------------------+--------------------------+--------+------------+-------------+-----------------------------------+ |
987 | +| 9e1cc2f1-082f-4bec-9cdb-b99f3b010aeb | trusty-disk1.img210034 | ACTIVE | - | Running | private=192.168.21.9, 10.5.150.6 | |
988 | +| 038f63b8-62c1-4504-8f22-73d577500b34 | trusty-disk1.img210057 | ACTIVE | - | Running | private=192.168.21.10, 10.5.150.4 | |
989 | +| 31767f21-4558-401e-93bb-1e1cd8b3fc8a | trusty-disk1.img210120 | ACTIVE | - | Running | private=192.168.21.11, 10.5.150.1 | |
990 | +| 85cec6b1-fb39-4e9c-bb08-4cea3381a24c | trusty-root.tar.xz210148 | ACTIVE | - | Running | private=192.168.21.12, 10.5.150.3 | |
991 | +| c947e805-91e5-4b9d-bc93-41ab5b73a4fa | trusty-root.tar.xz210211 | ACTIVE | - | Running | private=192.168.21.13, 10.5.150.2 | |
992 | +| 3c46e502-793e-44a0-a66f-de68e20e19f5 | trusty-root.tar.xz210234 | ACTIVE | - | Running | private=192.168.21.14, 10.5.150.5 | |
993 | ++--------------------------------------+--------------------------+--------+------------+-------------+-----------------------------------+ |
994 | +``` |
995 | + |
996 | +### Confirm SSH access & connectivity to new instances |
997 | +``` |
998 | +ssh -i ~/testkey.pem ubuntu@10.5.150.1 "uname -a" |
999 | +Warning: Permanently added '10.5.150.1' (ECDSA) to the list of known hosts. |
1000 | +Linux trusty-disk1 3.13.0-68-generic #111-Ubuntu SMP Fri Nov 6 18:17:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux |
1001 | +``` |
1002 | +``` |
1003 | +ssh -i ~/testkey.pem ubuntu@10.5.150.2 "uname -a" |
1004 | +Warning: Permanently added '10.5.150.2' (ECDSA) to the list of known hosts. |
1005 | +Linux trusty-root 4.2.0-18-generic #22-Ubuntu SMP Fri Nov 6 18:25:50 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux |
1006 | +``` |
1007 | + |
1008 | |
1009 | === renamed directory 'bin' => 'deprecated/bin' |
1010 | === renamed directory 'bundles' => 'deprecated/bundles' |
1011 | === renamed file 'configure' => 'deprecated/configure' |
1012 | === renamed symlink 'default.yaml' => 'deprecated/default.yaml' |
1013 | === renamed directory 'demos' => 'deprecated/demos' |
1014 | === added symlink 'deprecated/next.yaml' |
1015 | === target is u'bundles/sparse/next.yaml' |
1016 | === added file 'deprecated/novarc' |
1017 | --- deprecated/novarc 1970-01-01 00:00:00 +0000 |
1018 | +++ deprecated/novarc 2018-03-19 16:01:39 +0000 |
1019 | @@ -0,0 +1,11 @@ |
1020 | +_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
1021 | +for param in $_OS_PARAMS; do |
1022 | + unset $param |
1023 | +done |
1024 | +unset _OS_PARAMS |
1025 | +export OS_USERNAME=admin |
1026 | +export OS_PASSWORD=openstack |
1027 | +export OS_TENANT_NAME=admin |
1028 | +export OS_REGION_NAME=RegionOne |
1029 | +export OS_AUTH_URL=${OS_AUTH_PROTOCOL:-http}://`juju-deployer -f keystone`:5000/v2.0 |
1030 | +export OS_AUTH_TYPE=password |
1031 | |
1032 | === added file 'deprecated/novarc_unset_all' |
1033 | --- deprecated/novarc_unset_all 1970-01-01 00:00:00 +0000 |
1034 | +++ deprecated/novarc_unset_all 2018-03-19 16:01:39 +0000 |
1035 | @@ -0,0 +1,5 @@ |
1036 | +_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
1037 | +for param in $_OS_PARAMS; do |
1038 | + unset $param |
1039 | +done |
1040 | +unset _OS_PARAMS |
1041 | |
1042 | === added file 'deprecated/novarcv3_domain' |
1043 | --- deprecated/novarcv3_domain 1970-01-01 00:00:00 +0000 |
1044 | +++ deprecated/novarcv3_domain 2018-03-19 16:01:39 +0000 |
1045 | @@ -0,0 +1,16 @@ |
1046 | +_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
1047 | +for param in $_OS_PARAMS; do |
1048 | + unset $param |
1049 | +done |
1050 | +unset _OS_PARAMS |
1051 | +export OS_AUTH_URL=${OS_AUTH_PROTOCOL:-http}://`juju-deployer -f keystone`:5000/v3 |
1052 | +export OS_USERNAME=admin |
1053 | +export OS_PASSWORD=openstack |
1054 | +export OS_REGION_NAME=RegionOne |
1055 | +export OS_DOMAIN_NAME=admin_domain |
1056 | +export OS_USER_DOMAIN_NAME=admin_domain |
1057 | +export OS_IDENTITY_API_VERSION=3 |
1058 | +# Swift needs this: |
1059 | +export OS_AUTH_VERSION=3 |
1060 | +# Gnocchi needs this: |
1061 | +export OS_AUTH_TYPE=password |
1062 | |
1063 | === added file 'deprecated/novarcv3_project' |
1064 | --- deprecated/novarcv3_project 1970-01-01 00:00:00 +0000 |
1065 | +++ deprecated/novarcv3_project 2018-03-19 16:01:39 +0000 |
1066 | @@ -0,0 +1,17 @@ |
1067 | +_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
1068 | +for param in $_OS_PARAMS; do |
1069 | + unset $param |
1070 | +done |
1071 | +unset _OS_PARAMS |
1072 | +export OS_AUTH_URL=${OS_AUTH_PROTOCOL:-http}://`juju-deployer -f keystone`:5000/v3 |
1073 | +export OS_USERNAME=admin |
1074 | +export OS_PASSWORD=openstack |
1075 | +export OS_USER_DOMAIN_NAME=admin_domain |
1076 | +export OS_PROJECT_DOMAIN_NAME=admin_domain |
1077 | +export OS_PROJECT_NAME=admin |
1078 | +export OS_REGION_NAME=RegionOne |
1079 | +export OS_IDENTITY_API_VERSION=3 |
1080 | +# Swift needs this: |
1081 | +export OS_AUTH_VERSION=3 |
1082 | +# Gnocchi needs this |
1083 | +export OS_AUTH_TYPE=password |
1084 | |
1085 | === added directory 'deprecated/profiles' |
1086 | === added file 'deprecated/profiles/arm64' |
1087 | --- deprecated/profiles/arm64 1970-01-01 00:00:00 +0000 |
1088 | +++ deprecated/profiles/arm64 2018-03-19 16:01:39 +0000 |
1089 | @@ -0,0 +1,39 @@ |
1090 | +#!/bin/bash -ex |
1091 | +# An experimental configuration script for configuring a ppc64el OpenStack test cloud. |
1092 | +# Useful in manual deployment testing. |
1093 | + |
1094 | +. ./profiles/common |
1095 | + |
1096 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.245.168.1" |
1097 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.245.168.0/21" |
1098 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.245.172.0:10.245.172.255" |
1099 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.6" |
1100 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="172.16.0.0/22" |
1101 | + |
1102 | +export BARE_METAL="True" |
1103 | + |
1104 | +# Accept network type as first parameter, assume gre if unspecified |
1105 | +net_type=${1:-"gre"} |
1106 | + |
1107 | +# Configure neutron networking on overcloud |
1108 | +source novarc |
1109 | +./bin/neutron-ext-net --network-type flat -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
1110 | +./bin/neutron-tenant-net --network-type $net_type -t admin -r provider-router -N $NAMESERVER private $CIDR_PRIV |
1111 | + |
1112 | +juju_config_neutron_mtu |
1113 | +create_tempest_users |
1114 | +create_tempest_flavors |
1115 | +create_default_flavors |
1116 | + |
1117 | +# Install monitoring, probing and troubleshooting tools on all units |
1118 | +juju run --all "sudo apt-get install htop atop nload iptraf nmap multitail iperf pastebinit stress sysstat -y" |
1119 | + |
1120 | +# Load images into glance |
1121 | +tools/images_arm64.sh |
1122 | + |
1123 | +# Set security groups and rules |
1124 | +tools/sec_groups.sh |
1125 | + |
1126 | +# Tune for higher-density testing |
1127 | +tools/flavor_shrink.sh |
1128 | +tools/quota_million.sh |
1129 | |
1130 | === added file 'deprecated/profiles/common' |
1131 | --- deprecated/profiles/common 1970-01-01 00:00:00 +0000 |
1132 | +++ deprecated/profiles/common 2018-03-19 16:01:39 +0000 |
1133 | @@ -0,0 +1,85 @@ |
1134 | +#!/bin/bash |
1135 | + |
1136 | +function upload_image { |
1137 | + src=$1 |
1138 | + image_name=$2 |
1139 | + image_file=$3 |
1140 | + image_format=${4:-"qcow2"} |
1141 | + image_hv_type=${5:-"qemu"} |
1142 | + image_arch=${6:-"x86_64"} |
1143 | + |
1144 | + case "$src" in |
1145 | + swift) http_root="http://$SWIFT_IP:80/swift/v1/images";; |
1146 | + cloudimages) http_root="http://cloud-images.ubuntu.com/${image_name}/current";; |
1147 | + esac |
1148 | + |
1149 | + mkdir -vp ~/images |
1150 | + |
1151 | + [ -f ~/images/$image_file ] || { |
1152 | + wget -O ~/images/$image_file ${http_root}/${image_file} |
1153 | + } |
1154 | + |
1155 | + openstack image show $image_name || { |
1156 | + openstack image create --public \ |
1157 | + --container-format=bare --disk-format=$image_format \ |
1158 | + --file=${HOME}/images/$image_file $image_name \ |
1159 | + --property architecture=$image_arch \ |
1160 | + --property hypervisor_type=$image_hv_type |
1161 | + } |
1162 | +} |
1163 | + |
1164 | +function install_packages { |
1165 | + # Install dependencies and CLI tools |
1166 | + # See also requirements.txt in tempest (probably need to sudo pip install -r requirements.txt) |
1167 | + |
1168 | + echo "NOTE: The configure script no longer sudo apt installs packages. If you find a client is missing on your machine, resolve it manually in advance of ./configure." |
1169 | + |
1170 | + #sudo apt-get install git testrepository subunit python-nose python-lxml python-boto \ |
1171 | + # python-junitxml python-subunit python-testresources python-oslotest python-stevedore \ |
1172 | + # python-cinderclient python-glanceclient python-heatclient python-keystoneclient \ |
1173 | + # python-neutronclient python-novaclient python-swiftclient python-ceilometerclient \ |
1174 | + # python-openstackclient openvswitch-test openvswitch-common -y |
1175 | +} |
1176 | + |
1177 | +function create_tempest_users { |
1178 | + # Create demo/testing users, tenants and flavor |
1179 | + openstack project show demo || openstack project create demo |
1180 | + openstack user show demo || openstack user create --project demo --password pass --enable --email demo@dev.null demo |
1181 | + openstack role show Member || openstack role create Member |
1182 | + openstack role add --user demo --project demo Member || : |
1183 | + openstack project show alt_demo || openstack project create alt_demo |
1184 | + openstack user show alt_demo || openstack user create --project alt_demo --password secret --enable --email alt_demo@dev.null alt_demo |
1185 | + openstack role add --user alt_demo --project alt_demo Member || : |
1186 | +} |
1187 | + |
1188 | +function create_tempest_flavors { |
1189 | + openstack flavor show m1.cirros || openstack flavor create --id 6 --ram 64 --disk 1 --vcpus 1 m1.cirros |
1190 | + openstack flavor show m1.tempest || openstack flavor create --id 7 --ram 256 --disk 5 --vcpus 1 m1.tempest |
1191 | + openstack flavor show m2.tempest || openstack flavor create --id 8 --ram 512 --disk 5 --vcpus 1 m2.tempest |
1192 | +} |
1193 | + |
1194 | +function create_default_flavors { |
1195 | + openstack flavor show m1.tiny || openstack flavor create --id 1 --ram 512 --disk 1 --vcpus 1 m1.tiny |
1196 | + openstack flavor show m1.small || openstack flavor create --id 2 --ram 2048 --disk 20 --vcpus 1 m1.small |
1197 | + openstack flavor show m1.medium || openstack flavor create --id 3 --ram 4096 --disk 20 --vcpus 2 m1.medium |
1198 | + openstack flavor show m1.large || openstack flavor create --id 4 --ram 8192 --disk 20 --vcpus 4 m1.large |
1199 | + openstack flavor show m1.xlarge || openstack flavor create --id 5 --ram 16384 --disk 20 --vcpus 8 m1.xlarge |
1200 | +} |
1201 | + |
1202 | +function shrink_flavors { |
1203 | + openstack flavor delete m1.tiny ||: |
1204 | + openstack flavor delete m1.small ||: |
1205 | + openstack flavor delete m1.medium ||: |
1206 | + openstack flavor delete m1.large ||: |
1207 | + openstack flavor delete m1.xlarge ||: |
1208 | + openstack flavor create --id 1 --ram 512 --disk 1 --swap 0 --vcpus 1 m1.tiny |
1209 | + openstack flavor create --id 2 --ram 768 --disk 10 --swap 2048 --vcpus 1 m1.small |
1210 | + openstack flavor create --id 3 --ram 1024 --disk 12 --swap 2048 --vcpus 2 m1.medium |
1211 | + openstack flavor create --id 4 --ram 1536 --disk 14 --swap 2048 --vcpus 4 m1.large |
1212 | + openstack flavor create --id 5 --ram 2048 --disk 16 --swap 2048 --vcpus 8 m1.xlarge |
1213 | +} |
1214 | + |
1215 | +function juju_config_neutron_mtu { |
1216 | + juju set neutron-gateway instance-mtu=1300 &> /dev/null || |
1217 | + juju config neutron-gateway instance-mtu=1300 &> /dev/null |
1218 | +} |
1219 | |
1220 | === added file 'deprecated/profiles/default' |
1221 | --- deprecated/profiles/default 1970-01-01 00:00:00 +0000 |
1222 | +++ deprecated/profiles/default 2018-03-19 16:01:39 +0000 |
1223 | @@ -0,0 +1,80 @@ |
1224 | +#!/bin/bash |
1225 | + |
1226 | +set -ex |
1227 | + |
1228 | +. ./profiles/common |
1229 | + |
1230 | +install_packages |
1231 | + |
1232 | +# Set serverstack defaults, if not already set. |
1233 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.5.0.1" |
1234 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.5.0.0/16" |
1235 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.5.150.0:10.5.200.254" |
1236 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.6" |
1237 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="192.168.21.0/24" |
1238 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
1239 | + |
1240 | +# Accept network type as first parameter, assume gre if unspecified |
1241 | +net_type=${1:-"gre"} |
1242 | + |
1243 | +# If not on bare metal, add extra port to overcloud neutron-gateway and configure charm to use it |
1244 | +if [[ "${BARE_METAL^^}" != "TRUE" ]]; then |
1245 | + source ~/novarc |
1246 | + ./bin/post-deploy-config neutron-gateway |
1247 | +fi |
1248 | + |
1249 | +# Configure neutron networking on overcloud |
1250 | +source novarc |
1251 | +./bin/neutron-ext-net --network-type flat -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
1252 | +./bin/neutron-tenant-net --network-type $net_type -t admin -r provider-router -N $NAMESERVER private $CIDR_PRIV |
1253 | + |
1254 | +upload_image cloudimages xenial xenial-server-cloudimg-amd64-disk1.img |
1255 | +upload_image cloudimages trusty trusty-server-cloudimg-amd64-disk1.img |
1256 | +upload_image cloudimages precise precise-server-cloudimg-amd64-disk1.img |
1257 | +upload_image swift cirros cirros-0.3.4-x86_64-disk.img |
1258 | +upload_image swift cirros2 cirros-0.3.4-x86_64-disk.img |
1259 | + |
1260 | +image_id=$(openstack image list | awk '/cirros\s/ {print $2}') |
1261 | +image_alt_id=$(openstack image list | awk '/cirros2\s/ {print $2}') |
1262 | + |
1263 | +create_tempest_users |
1264 | + |
1265 | +access=$(openstack --os-username demo --os-password pass --os-tenant-name demo ec2 credentials create | grep access | awk '{ print $4 }') |
1266 | +secret=$(openstack ec2 credentials show $access | grep secret | awk '{ print $4 }') |
1267 | + |
1268 | +create_tempest_flavors |
1269 | +create_default_flavors |
1270 | + |
1271 | +# Gather vars for tempest template |
1272 | +ext_net=$(neutron net-list | grep ext_net | awk '{ print $2 }') |
1273 | +router=$(neutron router-list | grep provider-router | awk '{ print $2}') |
1274 | +keystone=$(juju-deployer -f keystone) |
1275 | +dashboard=$(juju-deployer -f openstack-dashboard) |
1276 | +ncc=$(juju-deployer -f nova-cloud-controller) |
1277 | +http=${OS_AUTH_PROTOCOL:-http} |
1278 | + |
1279 | +# Insert vars into tempest conf |
1280 | +sed -e "s/__IMAGE_ID__/$image_id/g" -e "s/__IMAGE_ALT_ID__/$image_alt_id/g" \ |
1281 | + -e "s/__DASHBOARD__/$dashboard/g" -e "s/__KEYSTONE__/$keystone/g" \ |
1282 | + -e "s/__EXT_NET__/$ext_net/g" -e "s/__PROTO__/$http/g" \ |
1283 | + -e "s/__SWIFT__/$SWIFT_IP/g" \ |
1284 | + -e "s/__NAMESERVER__/$NAMESERVER/g" \ |
1285 | + -e "s/__CIDR_PRIV__/${CIDR_PRIV////\\/}/g" \ |
1286 | + -e "s/__NCC__/$ncc/g" -e "s/__SECRET__/$secret/g" -e "s/__ACCESS__/$access/g" \ |
1287 | + templates/tempest/tempest.conf.template > tempest.conf |
1288 | + |
1289 | +sed -e "s/__IMAGE_ID__/$image_id/g" -e "s/__IMAGE_ALT_ID__/$image_alt_id/g" \ |
1290 | + -e "s/__DASHBOARD__/$dashboard/g" -e "s/__KEYSTONE__/$keystone/g" \ |
1291 | + -e "s/__EXT_NET__/$ext_net/g" -e "s/__PROTO__/$http/g" \ |
1292 | + -e "s/__SWIFT__/$SWIFT_IP/g" \ |
1293 | + -e "s/__NAMESERVER__/$NAMESERVER/g" \ |
1294 | + -e "s/__CIDR_PRIV__/${CIDR_PRIV////\\/}/g" \ |
1295 | + -e "s/__NCC__/$ncc/g" -e "s/__SECRET__/$secret/g" -e "s/__ACCESS__/$access/g" \ |
1296 | + templates/tempest/tempest.refstack.template.conf > tempest_refstack.conf |
1297 | + |
1298 | +# Git tempest, place the rendered tempest template |
1299 | +[ -d tempest ] || git clone https://github.com/openstack/tempest |
1300 | +# Checkout latest commit that included run_tempest.sh. This is a stop-gap until |
1301 | +# OSCI uses tempest charm or switches to new style of executing tempest tests. |
1302 | +git --git-dir=tempest/.git --work-tree=tempest checkout f2ba23f7834facb2bfe7c376840e7630881d1bf9 |
1303 | +cp tempest.conf tempest/etc |
1304 | |
1305 | === added file 'deprecated/profiles/dellstack' |
1306 | --- deprecated/profiles/dellstack 1970-01-01 00:00:00 +0000 |
1307 | +++ deprecated/profiles/dellstack 2018-03-19 16:01:39 +0000 |
1308 | @@ -0,0 +1,14 @@ |
1309 | +#!/bin/bash |
1310 | + |
1311 | +set -ex |
1312 | + |
1313 | +# Set dellstack overrides, if not already set. |
1314 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.245.168.1" |
1315 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.245.168.0/21" |
1316 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.245.171.0:10.245.171.255" |
1317 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.2" |
1318 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="172.16.0.0/22" |
1319 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
1320 | + |
1321 | +export BARE_METAL="True" |
1322 | +./profiles/default $1 $2 $3 $4 $5 |
1323 | |
1324 | === added file 'deprecated/profiles/kernelstack' |
1325 | --- deprecated/profiles/kernelstack 1970-01-01 00:00:00 +0000 |
1326 | +++ deprecated/profiles/kernelstack 2018-03-19 16:01:39 +0000 |
1327 | @@ -0,0 +1,15 @@ |
1328 | +#!/bin/bash |
1329 | + |
1330 | +set -ex |
1331 | + |
1332 | +# Set kernelstack overrides, if not already set. |
1333 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.38.0.1" |
1334 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.38.0.0/19" |
1335 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.38.3.0:10.38.10.254" |
1336 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.38.0.1" |
1337 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="172.16.0.0/22" |
1338 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.0.38.3" |
1339 | + |
1340 | +export BARE_METAL="True" |
1341 | +./profiles/default $1 $2 $3 $4 $5 |
1342 | + |
1343 | |
1344 | === added file 'deprecated/profiles/keystonev3' |
1345 | --- deprecated/profiles/keystonev3 1970-01-01 00:00:00 +0000 |
1346 | +++ deprecated/profiles/keystonev3 2018-03-19 16:01:39 +0000 |
1347 | @@ -0,0 +1,104 @@ |
1348 | +#!/bin/bash |
1349 | + |
1350 | +set -ex |
1351 | + |
1352 | +function upload_image { |
1353 | + src=$1 |
1354 | + image_name=$2 |
1355 | + image_file=$3 |
1356 | + case "$src" in |
1357 | + swift) http_root="http://$SWIFT_IP:80/swift/v1/images";; |
1358 | + cloudimages) http_root="http://cloud-images.ubuntu.com/${image_name}/current";; |
1359 | + esac |
1360 | + [ -f ~/images/$image_file ] || { |
1361 | + wget -O ~/images/$image_file ${http_root}/${image_file} |
1362 | + } |
1363 | + openstack image show $image_name || { |
1364 | + openstack image create --public --container-format=bare --disk-format=qcow2 --file=${HOME}/images/$image_file $image_name |
1365 | + } |
1366 | +} |
1367 | + |
1368 | +# Install dependencies and CLI tools |
1369 | +# See also requirements.txt in tempest (probably need to sudo pip install -r requirements.txt) |
1370 | +#sudo apt-get install git testrepository subunit python-nose python-lxml python-boto \ |
1371 | +# python-junitxml python-subunit python-testresources python-oslotest python-stevedore \ |
1372 | +# python-cinderclient python-glanceclient python-heatclient python-keystoneclient \ |
1373 | +# python-neutronclient python-novaclient python-swiftclient python-ceilometerclient \ |
1374 | +# openvswitch-test openvswitch-common -y |
1375 | + |
1376 | +# Set serverstack defaults, if not already set. |
1377 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.5.0.1" |
1378 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.5.0.0/16" |
1379 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.5.150.0:10.5.200.254" |
1380 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.6" |
1381 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="192.168.21.0/24" |
1382 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
1383 | + |
1384 | +# Accept network type as first parameter, assume gre if unspecified |
1385 | +net_type=${1:-"gre"} |
1386 | + |
1387 | +# If not on bare metal, add extra port to overcloud neutron-gateway and configure charm to use it |
1388 | +if [[ "${BARE_METAL^^}" != "TRUE" ]]; then |
1389 | + unset OS_DEFAULT_DOMAIN OS_PROJECT_NAME OS_IDENTITY_API_VERSION OS_PROJECT_DOMAIN_NAME |
1390 | + source novarc_unset_all |
1391 | + source ~/novarc |
1392 | + ./bin/post-deploy-config neutron-gateway |
1393 | +fi |
1394 | + |
1395 | +# Configure neutron networking on overcloud |
1396 | +source novarcv3_domain |
1397 | +./bin/neutron-ext-net-ksv3 --project admin --network-type flat -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
1398 | +./bin/neutron-tenant-net-ksv3 --project admin --network-type $net_type -r provider-router -N $NAMESERVER private $CIDR_PRIV |
1399 | +ext_net=$(openstack network list | awk '/ext_net/ {print $2}') |
1400 | + |
1401 | +# Create demo/testing users, tenants and flavor |
1402 | +openstack project show demo || openstack project create demo |
1403 | +openstack user show demo || openstack user create --project demo --password pass --enable --email demo@dev.null demo |
1404 | +openstack role show Member || openstack role create Member |
1405 | +openstack role add --user demo --project demo Member |
1406 | +openstack project show alt_demo || openstack project create alt_demo |
1407 | +openstack user show alt_demo || openstack user create --project alt_demo --password secret --enable --email alt_demo@dev.null alt_demo |
1408 | +openstack role add --user alt_demo --project alt_demo Member |
1409 | +access=$(openstack ec2 credentials create --user demo --project demo | awk '/access/ {print $4}') |
1410 | +secret=$(openstack ec2 credentials show $access | awk '/secret/ {print $4}') |
1411 | + |
1412 | +source novarcv3_project |
1413 | +# Download images if not already present |
1414 | +mkdir -vp ~/images |
1415 | +upload_image cloudimages xenial xenial-server-cloudimg-amd64-disk1.img |
1416 | +upload_image cloudimages trusty trusty-server-cloudimg-amd64-disk1.img |
1417 | +upload_image cloudimages precise precise-server-cloudimg-amd64-disk1.img |
1418 | +upload_image swift cirros cirros-0.3.4-x86_64-disk.img |
1419 | +image_id=$(openstack image list | awk '/cirros/ {print $2}') |
1420 | +image_alt_id=$(openstack image list | awk '/precise/ {print $2}') |
1421 | + |
1422 | + |
1423 | +echo "Flavors" |
1424 | +openstack flavor show m1.cirros || openstack flavor create --id 6 --ram 64 --disk 1 --vcpus 1 m1.cirros |
1425 | +openstack flavor show m1.tempest || openstack flavor create --id 7 --ram 256 --disk 5 --vcpus 1 m1.tempest |
1426 | +openstack flavor show m2.tempest || openstack flavor create --id 8 --ram 512 --disk 5 --vcpus 1 m2.tempest |
1427 | + |
1428 | +echo "Tempest" |
1429 | +router=$(neutron --os-project-name admin router-list | grep provider-router | awk '{ print $2}') |
1430 | +# Gather vars for tempest template |
1431 | +keystone=$(juju-deployer -f keystone) |
1432 | +dashboard=$(juju-deployer -f openstack-dashboard) |
1433 | +ncc=$(juju-deployer -f nova-cloud-controller) |
1434 | +http=${OS_AUTH_PROTOCOL:-http} |
1435 | +default_domain_id=$(openstack domain list | awk '/default/ {print $2}') |
1436 | + |
1437 | +# Insert vars into tempest conf |
1438 | +sed -e "s/__IMAGE_ID__/$image_id/g" -e "s/__IMAGE_ALT_ID__/$image_alt_id/g" \ |
1439 | + -e "s/__DASHBOARD__/$dashboard/g" -e "s/__KEYSTONE__/$keystone/g" \ |
1440 | + -e "s/__EXT_NET__/$ext_net/g" -e "s/__PROTO__/$http/g" \ |
1441 | + -e "s/__SWIFT__/$SWIFT_IP/g" \ |
1442 | + -e "s/__NAMESERVER__/$NAMESERVER/g" \ |
1443 | + -e "s/__CIDR_PRIV__/${CIDR_PRIV////\\/}/g" \ |
1444 | + -e "s/__NCC__/$ncc/g" -e "s/__SECRET__/$secret/g" -e "s/__ACCESS__/$access/g" \ |
1445 | + -e "s/__DEFAULT_DOMAIN_ID__/$default_domain_id/g" \ |
1446 | + templates/tempest/tempest-v3.conf.template > tempest.conf |
1447 | + |
1448 | +# Git tempest, place the rendered tempest template |
1449 | +[ -d tempest ] || git clone https://github.com/openstack/tempest |
1450 | +cp tempest.conf tempest/etc |
1451 | +cp templates/tempest/accounts.yaml tempest/etc |
1452 | |
1453 | === added file 'deprecated/profiles/lxd' |
1454 | --- deprecated/profiles/lxd 1970-01-01 00:00:00 +0000 |
1455 | +++ deprecated/profiles/lxd 2018-03-19 16:01:39 +0000 |
1456 | @@ -0,0 +1,112 @@ |
1457 | +#!/bin/bash |
1458 | + |
1459 | +set -ex |
1460 | + |
1461 | +. ./profiles/common |
1462 | + |
1463 | +install_packages |
1464 | + |
1465 | +# Set serverstack defaults, if not already set. |
1466 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.5.0.1" |
1467 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.5.0.0/16" |
1468 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.5.150.0:10.5.200.254" |
1469 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.6" |
1470 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="192.168.21.0/24" |
1471 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
1472 | + |
1473 | +# Accept network type as first parameter, assume gre if unspecified |
1474 | +net_type=${1:-"gre"} |
1475 | + |
1476 | +# If not on bare metal, add extra port to overcloud neutron-gateway and configure charm to use it |
1477 | +if [[ "${BARE_METAL^^}" != "TRUE" ]]; then |
1478 | + source ~/novarc |
1479 | + ./bin/post-deploy-config neutron-gateway |
1480 | +fi |
1481 | + |
1482 | +# Configure neutron networking on overcloud |
1483 | +source novarc |
1484 | +./bin/neutron-ext-net --network-type flat -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
1485 | +./bin/quantum-tenant-net --network-type $net_type -t admin -r provider-router -N $NAMESERVER private $CIDR_PRIV |
1486 | + |
1487 | +upload_image cloudimages xenial xenial-server-cloudimg-amd64-root.tar.xz raw lxc |
1488 | +upload_image cloudimages trusty trusty-server-cloudimg-amd64-root.tar.xz raw lxc |
1489 | + |
1490 | +image_id=$(openstack image list | grep trusty | awk '{ print $2 }') |
1491 | +image_alt_id=$(openstack image list | grep xenial | awk '{ print $2 }') |
1492 | + |
1493 | +create_tempest_users |
1494 | + |
1495 | +access=$(openstack --os-username demo --os-password pass --os-tenant-name demo ec2 credentials create | grep access | awk '{ print $4 }') |
1496 | +secret=$(openstack ec2 credentials show $access | grep secret | awk '{ print $4 }') |
1497 | + |
1498 | +create_tempest_flavors |
1499 | +create_default_flavors |
1500 | + |
1501 | +function create_exclusive_aggregate { |
1502 | + exclusive_flavor=$1 |
1503 | + app_hostnames=$(./bin/application-hostnames nova-compute-exclusive-${exclusiveflavor}) |
1504 | + if [ -n "$app_hostnames" ]; then |
1505 | + aggregate_name=exclusive-lxd-${exclusive_flavor} |
1506 | + openstack aggregate show ${aggregate_name} || { |
1507 | + openstack aggregate create ${aggregate_name} |
1508 | + openstack aggregate set --property exclusive-flavor=${exclusive_flavor} ${aggregate_name} |
1509 | + openstack aggregate set --property max_instances_per_host=1 ${aggregate_name} |
1510 | + for hostname in ${app_hostnames}; do |
1511 | + openstack aggregate add host ${aggregate_name} ${hostname} |
1512 | + done |
1513 | + } |
1514 | + create_exclusive_flavor ${exclusive_flavor} |
1515 | + fi |
1516 | +} |
1517 | + |
1518 | +function create_exclusive_flavor { |
1519 | + exclusive_flavor=$1 |
1520 | + case ${exclusive_flavor} in |
1521 | + small) |
1522 | + ram=1500 |
1523 | + cpu=1 |
1524 | + disk=40 |
1525 | + ;; |
1526 | + medium) |
1527 | + ram=3500 |
1528 | + cpu=2 |
1529 | + disk=40 |
1530 | + ;; |
1531 | + large) |
1532 | + ram=7500 |
1533 | + cpu=4 |
1534 | + disk=80 |
1535 | + ;; |
1536 | + esac |
1537 | + flavor_name=e1.lxd.${exclusive_flavor} |
1538 | + openstack flavor show ${flavor_name} || { |
1539 | + openstack flavor create --public --ram ${ram} --disk ${disk} --vcpus ${cpu} ${flavor_name} |
1540 | + openstack flavor set --property aggregate_instance_extra_specs:exclusive-flavor=${exclusive_flavor} ${flavor_name} |
1541 | + } |
1542 | +} |
1543 | + |
1544 | +for exclusive_flavor in small medium large; do |
1545 | + create_exclusive_aggregate ${exclusive_flavor} |
1546 | +done |
1547 | + |
1548 | +# Gather vars for tempest template |
1549 | +ext_net=$(neutron net-list | grep ext_net | awk '{ print $2 }') |
1550 | +router=$(neutron router-list | grep provider-router | awk '{ print $2}') |
1551 | +keystone=$(juju-deployer -f keystone) |
1552 | +dashboard=$(juju-deployer -f openstack-dashboard) |
1553 | +ncc=$(juju-deployer -f nova-cloud-controller) |
1554 | +http=${OS_AUTH_PROTOCOL:-http} |
1555 | + |
1556 | +# Insert vars into tempest conf |
1557 | +sed -e "s/__IMAGE_ID__/$image_id/g" -e "s/__IMAGE_ALT_ID__/$image_alt_id/g" \ |
1558 | + -e "s/__DASHBOARD__/$dashboard/g" -e "s/__KEYSTONE__/$keystone/g" \ |
1559 | + -e "s/__EXT_NET__/$ext_net/g" -e "s/__PROTO__/$http/g" \ |
1560 | + -e "s/__SWIFT__/$SWIFT_IP/g" \ |
1561 | + -e "s/__NAMESERVER__/$NAMESERVER/g" \ |
1562 | + -e "s/__CIDR_PRIV__/${CIDR_PRIV////\\/}/g" \ |
1563 | + -e "s/__NCC__/$ncc/g" -e "s/__SECRET__/$secret/g" -e "s/__ACCESS__/$access/g" \ |
1564 | + templates/tempest/tempest.conf.template.lxd > tempest.conf |
1565 | + |
1566 | +# Git tempest, place the rendered tempest template |
1567 | +[ -d tempest ] || git clone https://github.com/openstack/tempest |
1568 | +cp tempest.conf tempest/etc |
1569 | |
1570 | === added file 'deprecated/profiles/multihypervisor' |
1571 | --- deprecated/profiles/multihypervisor 1970-01-01 00:00:00 +0000 |
1572 | +++ deprecated/profiles/multihypervisor 2018-03-19 16:01:39 +0000 |
1573 | @@ -0,0 +1,67 @@ |
1574 | +#!/bin/bash |
1575 | + |
1576 | +set -ex |
1577 | + |
1578 | +. ./profiles/common |
1579 | + |
1580 | +install_packages |
1581 | + |
1582 | +# Set serverstack defaults, if not already set. |
1583 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.5.0.1" |
1584 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.5.0.0/16" |
1585 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.5.150.0:10.5.200.254" |
1586 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.6" |
1587 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="192.168.21.0/24" |
1588 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
1589 | + |
1590 | +# Accept network type as first parameter, assume gre if unspecified |
1591 | +net_type=${1:-"gre"} |
1592 | + |
1593 | +# If not on bare metal, add extra port to overcloud neutron-gateway and configure charm to use it |
1594 | +if [[ "${BARE_METAL^^}" != "TRUE" ]]; then |
1595 | + source ~/novarc |
1596 | + ./bin/post-deploy-config neutron-gateway |
1597 | +fi |
1598 | + |
1599 | +# Configure neutron networking on overcloud |
1600 | +source novarc |
1601 | +./bin/neutron-ext-net --network-type flat -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
1602 | +./bin/quantum-tenant-net --network-type $net_type -t admin -r provider-router -N $NAMESERVER private $CIDR_PRIV |
1603 | + |
1604 | +upload_image cloudimages xenial-lxd xenial-server-cloudimg-amd64-root.tar.xz raw lxc x86_64 |
1605 | +upload_image cloudimages trusty-lxd trusty-server-cloudimg-amd64-root.tar.xz raw lxc x86_64 |
1606 | + |
1607 | +upload_image cloudimages xenial-kvm xenial-server-cloudimg-amd64-disk1.img qcow2 qemu x86_64 |
1608 | +upload_image cloudimages trusty-kvm trusty-server-cloudimg-amd64-disk1.img qcow2 qemu x86_64 |
1609 | + |
1610 | +image_id=$(openstack image list | grep trusty-kvm | awk '{ print $2 }') |
1611 | +image_alt_id=$(openstack image list | grep xenial-kvm | awk '{ print $2 }') |
1612 | + |
1613 | +create_tempest_users |
1614 | + |
1615 | +access=$(openstack --os-username demo --os-password pass --os-tenant-name demo ec2 credentials create | grep access | awk '{ print $4 }') |
1616 | +secret=$(openstack ec2 credentials show $access | grep secret | awk '{ print $4 }') |
1617 | + |
1618 | +create_tempest_flavors |
1619 | + |
1620 | +# Gather vars for tempest template |
1621 | +ext_net=$(neutron net-list | grep ext_net | awk '{ print $2 }') |
1622 | +router=$(neutron router-list | grep provider-router | awk '{ print $2}') |
1623 | +keystone=$(juju-deployer -f keystone) |
1624 | +dashboard=$(juju-deployer -f openstack-dashboard) |
1625 | +ncc=$(juju-deployer -f nova-cloud-controller) |
1626 | +http=${OS_AUTH_PROTOCOL:-http} |
1627 | + |
1628 | +# Insert vars into tempest conf |
1629 | +sed -e "s/__IMAGE_ID__/$image_id/g" -e "s/__IMAGE_ALT_ID__/$image_alt_id/g" \ |
1630 | + -e "s/__DASHBOARD__/$dashboard/g" -e "s/__KEYSTONE__/$keystone/g" \ |
1631 | + -e "s/__EXT_NET__/$ext_net/g" -e "s/__PROTO__/$http/g" \ |
1632 | + -e "s/__SWIFT__/$SWIFT_IP/g" \ |
1633 | + -e "s/__NAMESERVER__/$NAMESERVER/g" \ |
1634 | + -e "s/__CIDR_PRIV__/${CIDR_PRIV////\\/}/g" \ |
1635 | + -e "s/__NCC__/$ncc/g" -e "s/__SECRET__/$secret/g" -e "s/__ACCESS__/$access/g" \ |
1636 | + templates/tempest/tempest.conf.template > tempest.conf |
1637 | + |
1638 | +# Git tempest, place the rendered tempest template |
1639 | +[ -d tempest ] || git clone https://github.com/openstack/tempest |
1640 | +cp tempest.conf tempest/etc |
1641 | |
1642 | === added file 'deprecated/profiles/powerkvm' |
1643 | --- deprecated/profiles/powerkvm 1970-01-01 00:00:00 +0000 |
1644 | +++ deprecated/profiles/powerkvm 2018-03-19 16:01:39 +0000 |
1645 | @@ -0,0 +1,46 @@ |
1646 | +#!/bin/bash -ex |
1647 | +# An experimental configuration script for configuring a ppc64el OpenStack test cloud. |
1648 | +# Useful in manual deployment testing. |
1649 | + |
1650 | +# Install CLI tools |
1651 | +#sudo apt-get install git testrepository subunit python-nose python-lxml python-boto \ |
1652 | +# python-junitxml python-subunit python-testresources python-oslotest python-stevedore \ |
1653 | +# python-cinderclient python-glanceclient python-heatclient python-keystoneclient \ |
1654 | +# python-neutronclient python-novaclient python-swiftclient python-ceilometerclient \ |
1655 | +# openvswitch-test openvswitch-common python-openstackclient -y |
1656 | + |
1657 | +# Set "dellstack" network parameters, if not already set. Adjust to fit your environment. |
1658 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.245.168.1" |
1659 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.245.168.0/21" |
1660 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.245.173.0:10.245.173.254" |
1661 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.2" |
1662 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="172.16.0.0/22" |
1663 | + |
1664 | +# Accept network type as first parameter, assume gre if unspecified |
1665 | +net_type=${1:-"gre"} |
1666 | + |
1667 | +# Configure neutron networking on overcloud |
1668 | +source novarc |
1669 | +./bin/quantum-ext-net --network-type $net_type -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
1670 | +./bin/quantum-tenant-net --network-type $net_type -t admin -r provider-router -N $NAMESERVER private $CIDR_PRIV |
1671 | + |
1672 | +# Create demo user and tenant |
1673 | +keystone tenant-create --name demo || : |
1674 | +keystone user-create --name demo --tenant demo --pass pass --enabled true --email demo@dev.null || : |
1675 | +keystone user-role-add --user demo --role Member --tenant demo || : |
1676 | +keystone tenant-create --name alt_demo || : |
1677 | +keystone user-create --name alt_demo --tenant alt_demo --pass secret --enabled true --email alt_demo@dev.null || : |
1678 | +keystone user-role-add --user alt_demo --role Member --tenant alt_demo || : |
1679 | + |
1680 | +# Install monitoring, probing and troubleshooting tools on all units |
1681 | +juju run --all "sudo apt-get install htop atop nload iptraf nmap multitail iperf pastebinit stress sysstat -y" |
1682 | + |
1683 | +# Load images into glance |
1684 | +tools/images_ppc64el.sh |
1685 | + |
1686 | +# Set security groups and rules |
1687 | +tools/sec_groups.sh |
1688 | + |
1689 | +# Tune for higher-density testing |
1690 | +tools/flavor_shrink.sh |
1691 | +tools/quota_million.sh |
1692 | |
1693 | === added file 'deprecated/profiles/ppc64el' |
1694 | --- deprecated/profiles/ppc64el 1970-01-01 00:00:00 +0000 |
1695 | +++ deprecated/profiles/ppc64el 2018-03-19 16:01:39 +0000 |
1696 | @@ -0,0 +1,46 @@ |
1697 | +#!/bin/bash -ex |
1698 | +# An experimental configuration script for configuring a ppc64el OpenStack test cloud. |
1699 | +# Useful in manual deployment testing. |
1700 | + |
1701 | +# Install CLI tools |
1702 | +#sudo apt-get install git testrepository subunit python-nose python-lxml python-boto \ |
1703 | +# python-junitxml python-subunit python-testresources python-oslotest python-stevedore \ |
1704 | +# python-cinderclient python-glanceclient python-heatclient python-keystoneclient \ |
1705 | +# python-neutronclient python-novaclient python-swiftclient python-ceilometerclient \ |
1706 | +# openvswitch-test openvswitch-common python-openstackclient -y |
1707 | + |
1708 | +# Set "dellstack" network parameters, if not already set. Adjust to fit your environment. |
1709 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.245.168.1" |
1710 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.245.168.0/21" |
1711 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.245.173.0:10.245.173.255" |
1712 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.2" |
1713 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="172.16.0.0/22" |
1714 | + |
1715 | +# Accept network type as first parameter, assume gre if unspecified |
1716 | +net_type=${1:-"gre"} |
1717 | + |
1718 | +# Configure neutron networking on overcloud |
1719 | +source novarc |
1720 | +./bin/quantum-ext-net --network-type $net_type -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
1721 | +./bin/quantum-tenant-net --network-type $net_type -t admin -r provider-router -N $NAMESERVER private $CIDR_PRIV |
1722 | + |
1723 | +# Create demo user and tenant |
1724 | +keystone tenant-create --name demo || : |
1725 | +keystone user-create --name demo --tenant demo --pass pass --enabled true --email demo@dev.null || : |
1726 | +keystone user-role-add --user demo --role Member --tenant demo || : |
1727 | +keystone tenant-create --name alt_demo || : |
1728 | +keystone user-create --name alt_demo --tenant alt_demo --pass secret --enabled true --email alt_demo@dev.null || : |
1729 | +keystone user-role-add --user alt_demo --role Member --tenant alt_demo || : |
1730 | + |
1731 | +# Install monitoring, probing and troubleshooting tools on all units |
1732 | +juju run --all "sudo apt-get install htop atop nload iptraf nmap multitail iperf pastebinit stress sysstat -y" |
1733 | + |
1734 | +# Load images into glance |
1735 | +tools/images_ppc64el.sh |
1736 | + |
1737 | +# Set security groups and rules |
1738 | +tools/sec_groups.sh |
1739 | + |
1740 | +# Tune for higher-density testing |
1741 | +tools/flavor_shrink.sh |
1742 | +tools/quota_million.sh |
1743 | |
1744 | === added file 'deprecated/profiles/refstack_only' |
1745 | --- deprecated/profiles/refstack_only 1970-01-01 00:00:00 +0000 |
1746 | +++ deprecated/profiles/refstack_only 2018-03-19 16:01:39 +0000 |
1747 | @@ -0,0 +1,32 @@ |
1748 | +#!/bin/bash |
1749 | + |
1750 | +set -ex |
1751 | + |
1752 | +. ./profiles/common |
1753 | + |
1754 | +# Set serverstack defaults, if not already set. |
1755 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.5.0.1" |
1756 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.5.0.0/16" |
1757 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.5.150.0:10.5.200.254" |
1758 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.6" |
1759 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="192.168.21.0/24" |
1760 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
1761 | + |
1762 | +# Gather vars for tempest template |
1763 | +ext_net=$(neutron net-list | grep ext_net | awk '{ print $2 }') |
1764 | +router=$(neutron router-list | grep provider-router | awk '{ print $2}') |
1765 | +keystone=$(juju-deployer -f keystone) |
1766 | +dashboard=$(juju-deployer -f openstack-dashboard) |
1767 | +ncc=$(juju-deployer -f nova-cloud-controller) |
1768 | +http=${OS_AUTH_PROTOCOL:-http} |
1769 | + |
1770 | +# Insert vars into tempest conf |
1771 | + |
1772 | +sed -e "s/__IMAGE_ID__/$image_id/g" -e "s/__IMAGE_ALT_ID__/$image_alt_id/g" \ |
1773 | + -e "s/__DASHBOARD__/$dashboard/g" -e "s/__KEYSTONE__/$keystone/g" \ |
1774 | + -e "s/__EXT_NET__/$ext_net/g" -e "s/__PROTO__/$http/g" \ |
1775 | + -e "s/__SWIFT__/$SWIFT_IP/g" \ |
1776 | + -e "s/__NAMESERVER__/$NAMESERVER/g" \ |
1777 | + -e "s/__CIDR_PRIV__/${CIDR_PRIV////\\/}/g" \ |
1778 | + -e "s/__NCC__/$ncc/g" -e "s/__SECRET__/$secret/g" -e "s/__ACCESS__/$access/g" \ |
1779 | + templates/tempest/tempest.refstack.template.conf > tempest_refstack.conf |
1780 | |
1781 | === added file 'deprecated/profiles/stsstack' |
1782 | --- deprecated/profiles/stsstack 1970-01-01 00:00:00 +0000 |
1783 | +++ deprecated/profiles/stsstack 2018-03-19 16:01:39 +0000 |
1784 | @@ -0,0 +1,9 @@ |
1785 | +#!/bin/bash |
1786 | + |
1787 | +set -ex |
1788 | + |
1789 | +# Set sts-stack overrides, if not already set. |
1790 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.230.64.2" |
1791 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.230.19.58" |
1792 | + |
1793 | +./profiles/default $1 $2 $3 $4 $5 |
1794 | |
1795 | === added file 'deprecated/profiles/vpil' |
1796 | --- deprecated/profiles/vpil 1970-01-01 00:00:00 +0000 |
1797 | +++ deprecated/profiles/vpil 2018-03-19 16:01:39 +0000 |
1798 | @@ -0,0 +1,14 @@ |
1799 | +#!/bin/bash |
1800 | + |
1801 | +set -ex |
1802 | + |
1803 | +# Set overrides, if not already set. |
1804 | +[[ -z "$GATEWAY" ]] && export GATEWAY="10.246.64.1" |
1805 | +[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.246.64.0/21" |
1806 | +[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.246.67.128:10.246.67.255" |
1807 | +[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.246.64.50" |
1808 | +[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="172.16.0.0/22" |
1809 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
1810 | + |
1811 | +export BARE_METAL="True" |
1812 | +./profiles/default $1 $2 $3 $4 $5 |
1813 | |
1814 | === added file 'deprecated/requirements.txt' |
1815 | --- deprecated/requirements.txt 1970-01-01 00:00:00 +0000 |
1816 | +++ deprecated/requirements.txt 2018-03-19 16:01:39 +0000 |
1817 | @@ -0,0 +1,4 @@ |
1818 | +# Requirements for post-deployment configuration tools |
1819 | +python-openstackclient |
1820 | +python-neutronclient |
1821 | +juju-deployer |
1822 | |
1823 | === added directory 'deprecated/templates' |
1824 | === added directory 'deprecated/templates/heat' |
1825 | === added file 'deprecated/templates/heat/README' |
1826 | --- deprecated/templates/heat/README 1970-01-01 00:00:00 +0000 |
1827 | +++ deprecated/templates/heat/README 2018-03-19 16:01:39 +0000 |
1828 | @@ -0,0 +1,17 @@ |
1829 | +HEAT TEMPLATES DIR |
1830 | + |
1831 | + |
1832 | +About |
1833 | +======= |
1834 | + The heat git project has several heat (aka HOT) templates available. |
1835 | + Generally those can be used directly. Some enhancements and modifications |
1836 | + may be necessary in our testing, such as adding the network id parameter |
1837 | + in the basic helloworld template (upstream template didn't have that). |
1838 | + |
1839 | + |
1840 | +Example Usage |
1841 | +============= |
1842 | + heat stack-create heat_basic -f heat-templates/heat-basic.yaml \ |
1843 | + --parameters "admin_pass=Ubuntu;key_name=testkey;image=cirros;network=private" |
1844 | + |
1845 | + heat stack-list |
1846 | |
1847 | === added file 'deprecated/templates/heat/heat-basic.yaml' |
1848 | --- deprecated/templates/heat/heat-basic.yaml 1970-01-01 00:00:00 +0000 |
1849 | +++ deprecated/templates/heat/heat-basic.yaml 2018-03-19 16:01:39 +0000 |
1850 | @@ -0,0 +1,74 @@ |
1851 | +# |
1852 | +# This is a hello world HOT template just defining a single compute |
1853 | +# server. |
1854 | +# |
1855 | +# NOTE( beisner ): Added network parameter for scenarios where multiple networks exist |
1856 | +# Template originally from heat-templates git repo. |
1857 | +# |
1858 | +heat_template_version: 2013-05-23 |
1859 | + |
1860 | +description: > |
1861 | + Hello world HOT template that just defines a single server. |
1862 | + Contains just base features to verify base HOT support. |
1863 | + |
1864 | +parameters: |
1865 | + network: |
1866 | + type: string |
1867 | + description: The network for the VM |
1868 | + default: private |
1869 | + key_name: |
1870 | + type: string |
1871 | + description: Name of an existing key pair to use for the server |
1872 | + constraints: |
1873 | + - custom_constraint: nova.keypair |
1874 | + flavor: |
1875 | + type: string |
1876 | + description: Flavor for the server to be created |
1877 | + default: m1.small |
1878 | + constraints: |
1879 | + - custom_constraint: nova.flavor |
1880 | + image: |
1881 | + type: string |
1882 | + description: Image ID or image name to use for the server |
1883 | + constraints: |
1884 | + - custom_constraint: glance.image |
1885 | + admin_pass: |
1886 | + type: string |
1887 | + description: Admin password |
1888 | + hidden: true |
1889 | + constraints: |
1890 | + - length: { min: 6, max: 8 } |
1891 | + description: Password length must be between 6 and 8 characters |
1892 | + - allowed_pattern: "[a-zA-Z0-9]+" |
1893 | + description: Password must consist of characters and numbers only |
1894 | + - allowed_pattern: "[A-Z]+[a-zA-Z0-9]*" |
1895 | + description: Password must start with an uppercase character |
1896 | + db_port: |
1897 | + type: number |
1898 | + description: Database port number |
1899 | + default: 50000 |
1900 | + constraints: |
1901 | + - range: { min: 40000, max: 60000 } |
1902 | + description: Port number must be between 40000 and 60000 |
1903 | + |
1904 | +resources: |
1905 | + server: |
1906 | + type: OS::Nova::Server |
1907 | + properties: |
1908 | + key_name: { get_param: key_name } |
1909 | + image: { get_param: image } |
1910 | + flavor: { get_param: flavor } |
1911 | + admin_pass: { get_param: admin_pass } |
1912 | + networks: [{network: {get_param: network} }] |
1913 | + user_data: |
1914 | + str_replace: |
1915 | + template: | |
1916 | + #!/bin/bash |
1917 | + echo db_port |
1918 | + params: |
1919 | + db_port: { get_param: db_port } |
1920 | + |
1921 | +outputs: |
1922 | + server_networks: |
1923 | + description: The networks of the deployed server |
1924 | + value: { get_attr: [server, networks] } |
1925 | |
1926 | === added directory 'deprecated/templates/rally' |
1927 | === added file 'deprecated/templates/rally/boot-and-associate-floating-ip.yaml' |
1928 | --- deprecated/templates/rally/boot-and-associate-floating-ip.yaml 1970-01-01 00:00:00 +0000 |
1929 | +++ deprecated/templates/rally/boot-and-associate-floating-ip.yaml 2018-03-19 16:01:39 +0000 |
1930 | @@ -0,0 +1,18 @@ |
1931 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
1932 | +--- |
1933 | + NovaServers.boot_and_associate_floating_ip: |
1934 | + - |
1935 | + args: |
1936 | + flavor: |
1937 | + name: "{{flavor_name}}" |
1938 | + image: |
1939 | + name: "__IMAGE__" |
1940 | + runner: |
1941 | + type: "constant" |
1942 | + times: 1 |
1943 | + concurrency: 1 |
1944 | + context: |
1945 | + users: |
1946 | + tenants: 1 |
1947 | + users_per_tenant: 1 |
1948 | + network: {} |
1949 | |
1950 | === added file 'deprecated/templates/rally/boot-and-block-migrate.yaml' |
1951 | --- deprecated/templates/rally/boot-and-block-migrate.yaml 1970-01-01 00:00:00 +0000 |
1952 | +++ deprecated/templates/rally/boot-and-block-migrate.yaml 2018-03-19 16:01:39 +0000 |
1953 | @@ -0,0 +1,17 @@ |
1954 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
1955 | +--- |
1956 | +NovaServers.boot_and_live_migrate_server: |
1957 | +- args: |
1958 | + flavor: |
1959 | + name: "{{flavor_name}}" |
1960 | + image: |
1961 | + name: "__IMAGE__" |
1962 | + block_migration: true |
1963 | + runner: |
1964 | + type: "constant" |
1965 | + times: 10 |
1966 | + concurrency: 2 |
1967 | + context: |
1968 | + users: |
1969 | + tenants: 1 |
1970 | + users_per_tenant: 1 |
1971 | |
1972 | === added file 'deprecated/templates/rally/boot-and-delete-multiple.yaml' |
1973 | --- deprecated/templates/rally/boot-and-delete-multiple.yaml 1970-01-01 00:00:00 +0000 |
1974 | +++ deprecated/templates/rally/boot-and-delete-multiple.yaml 2018-03-19 16:01:39 +0000 |
1975 | @@ -0,0 +1,18 @@ |
1976 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
1977 | +--- |
1978 | + NovaServers.boot_and_delete_multiple_servers: |
1979 | + - |
1980 | + args: |
1981 | + image: |
1982 | + name: "__IMAGE__" |
1983 | + flavor: |
1984 | + name: "{{flavor_name}}" |
1985 | + count: 5 |
1986 | + runner: |
1987 | + type: "constant" |
1988 | + times: 1 |
1989 | + concurrency: 1 |
1990 | + context: |
1991 | + users: |
1992 | + tenants: 1 |
1993 | + users_per_tenant: 1 |
1994 | |
1995 | === added file 'deprecated/templates/rally/boot-and-delete-server-with-keypairs.yaml' |
1996 | --- deprecated/templates/rally/boot-and-delete-server-with-keypairs.yaml 1970-01-01 00:00:00 +0000 |
1997 | +++ deprecated/templates/rally/boot-and-delete-server-with-keypairs.yaml 2018-03-19 16:01:39 +0000 |
1998 | @@ -0,0 +1,20 @@ |
1999 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2000 | +--- |
2001 | + NovaKeypair.boot_and_delete_server_with_keypair: |
2002 | + - |
2003 | + args: |
2004 | + flavor: |
2005 | + name: "{{flavor_name}}" |
2006 | + image: |
2007 | + name: "__IMAGE__" |
2008 | + boot_server_kwargs: {} |
2009 | + runner: |
2010 | + type: "constant" |
2011 | + times: 5 |
2012 | + concurrency: 2 |
2013 | + context: |
2014 | + users: |
2015 | + tenants: 2 |
2016 | + users_per_tenant: 1 |
2017 | + network: |
2018 | + start_cidr: "100.1.0.0/26" |
2019 | |
2020 | === added file 'deprecated/templates/rally/boot-and-delete-server-with-secgroups.yaml' |
2021 | --- deprecated/templates/rally/boot-and-delete-server-with-secgroups.yaml 1970-01-01 00:00:00 +0000 |
2022 | +++ deprecated/templates/rally/boot-and-delete-server-with-secgroups.yaml 2018-03-19 16:01:39 +0000 |
2023 | @@ -0,0 +1,21 @@ |
2024 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2025 | +--- |
2026 | + NovaSecGroup.boot_and_delete_server_with_secgroups: |
2027 | + - |
2028 | + args: |
2029 | + flavor: |
2030 | + name: "{{flavor_name}}" |
2031 | + image: |
2032 | + name: "__IAMGE__" |
2033 | + security_group_count: 10 |
2034 | + rules_per_security_group: 10 |
2035 | + runner: |
2036 | + type: "constant" |
2037 | + times: 10 |
2038 | + concurrency: 2 |
2039 | + context: |
2040 | + users: |
2041 | + tenants: 3 |
2042 | + users_per_tenant: 2 |
2043 | + network: |
2044 | + start_cidr: "100.1.0.0/26" |
2045 | |
2046 | === added file 'deprecated/templates/rally/boot-and-delete.yaml' |
2047 | --- deprecated/templates/rally/boot-and-delete.yaml 1970-01-01 00:00:00 +0000 |
2048 | +++ deprecated/templates/rally/boot-and-delete.yaml 2018-03-19 16:01:39 +0000 |
2049 | @@ -0,0 +1,18 @@ |
2050 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2051 | +--- |
2052 | + NovaServers.boot_and_delete_server: |
2053 | + - |
2054 | + args: |
2055 | + flavor: |
2056 | + name: "{{flavor_name}}" |
2057 | + image: |
2058 | + name: "__IMAGE__" |
2059 | + force_delete: false |
2060 | + runner: |
2061 | + type: "constant" |
2062 | + times: 10 |
2063 | + concurrency: 2 |
2064 | + context: |
2065 | + users: |
2066 | + tenants: 3 |
2067 | + users_per_tenant: 2 |
2068 | |
2069 | === added file 'deprecated/templates/rally/boot-and-get-console-server.yaml' |
2070 | --- deprecated/templates/rally/boot-and-get-console-server.yaml 1970-01-01 00:00:00 +0000 |
2071 | +++ deprecated/templates/rally/boot-and-get-console-server.yaml 2018-03-19 16:01:39 +0000 |
2072 | @@ -0,0 +1,18 @@ |
2073 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2074 | +{% set image_name = image_name or "^cirros.*uec$" %} |
2075 | +--- |
2076 | + NovaServers.boot_and_get_console_output: |
2077 | + - |
2078 | + args: |
2079 | + flavor: |
2080 | + name: "{{flavor_name}}" |
2081 | + image: |
2082 | + name: "{{image_name}}" |
2083 | + runner: |
2084 | + type: "constant" |
2085 | + times: 1 |
2086 | + concurrency: 1 |
2087 | + context: |
2088 | + users: |
2089 | + tenants: 1 |
2090 | + users_per_tenant: 1 |
2091 | |
2092 | === added file 'deprecated/templates/rally/boot-and-list.yaml' |
2093 | --- deprecated/templates/rally/boot-and-list.yaml 1970-01-01 00:00:00 +0000 |
2094 | +++ deprecated/templates/rally/boot-and-list.yaml 2018-03-19 16:01:39 +0000 |
2095 | @@ -0,0 +1,19 @@ |
2096 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2097 | +--- |
2098 | + NovaServers.boot_and_list_server: |
2099 | + - |
2100 | + args: |
2101 | + flavor: |
2102 | + name: "{{flavor_name}}" |
2103 | + image: |
2104 | + name: "__IMAGE__" |
2105 | + detailed: True |
2106 | + runner: |
2107 | + type: "constant" |
2108 | + times: 1 |
2109 | + concurrency: 1 |
2110 | + context: |
2111 | + users: |
2112 | + tenants: 1 |
2113 | + users_per_tenant: 1 |
2114 | + |
2115 | |
2116 | === added file 'deprecated/templates/rally/boot-and-live-migrate.yaml' |
2117 | --- deprecated/templates/rally/boot-and-live-migrate.yaml 1970-01-01 00:00:00 +0000 |
2118 | +++ deprecated/templates/rally/boot-and-live-migrate.yaml 2018-03-19 16:01:39 +0000 |
2119 | @@ -0,0 +1,17 @@ |
2120 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2121 | +--- |
2122 | +NovaServers.boot_and_live_migrate_server: |
2123 | +- args: |
2124 | + flavor: |
2125 | + name: "{{flavor_name}}" |
2126 | + image: |
2127 | + name: "__IMAGE__" |
2128 | + block_migration: false |
2129 | + runner: |
2130 | + type: "constant" |
2131 | + times: 10 |
2132 | + concurrency: 2 |
2133 | + context: |
2134 | + users: |
2135 | + tenants: 1 |
2136 | + users_per_tenant: 1 |
2137 | |
2138 | === added file 'deprecated/templates/rally/boot-and-migrate.yaml' |
2139 | --- deprecated/templates/rally/boot-and-migrate.yaml 1970-01-01 00:00:00 +0000 |
2140 | +++ deprecated/templates/rally/boot-and-migrate.yaml 2018-03-19 16:01:39 +0000 |
2141 | @@ -0,0 +1,16 @@ |
2142 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2143 | +--- |
2144 | +NovaServers.boot_and_migrate_server: |
2145 | +- args: |
2146 | + flavor: |
2147 | + name: "{{flavor_name}}" |
2148 | + image: |
2149 | + name: "__IMAGE__" |
2150 | + runner: |
2151 | + type: "constant" |
2152 | + times: 10 |
2153 | + concurrency: 2 |
2154 | + context: |
2155 | + users: |
2156 | + tenants: 1 |
2157 | + users_per_tenant: 1 |
2158 | |
2159 | === added file 'deprecated/templates/rally/boot-and-rebuild.yaml' |
2160 | --- deprecated/templates/rally/boot-and-rebuild.yaml 1970-01-01 00:00:00 +0000 |
2161 | +++ deprecated/templates/rally/boot-and-rebuild.yaml 2018-03-19 16:01:39 +0000 |
2162 | @@ -0,0 +1,18 @@ |
2163 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2164 | +--- |
2165 | +NovaServers.boot_and_rebuild_server: |
2166 | +- args: |
2167 | + flavor: |
2168 | + name: "{{flavor_name}}" |
2169 | + from_image: |
2170 | + name: "__IMAGE__" |
2171 | + to_image: |
2172 | + name: "__IMAGE__" |
2173 | + runner: |
2174 | + type: "constant" |
2175 | + times: 5 |
2176 | + concurrency: 2 |
2177 | + context: |
2178 | + users: |
2179 | + tenants: 1 |
2180 | + users_per_tenant: 1 |
2181 | |
2182 | === added file 'deprecated/templates/rally/boot-and-show-server.yaml' |
2183 | --- deprecated/templates/rally/boot-and-show-server.yaml 1970-01-01 00:00:00 +0000 |
2184 | +++ deprecated/templates/rally/boot-and-show-server.yaml 2018-03-19 16:01:39 +0000 |
2185 | @@ -0,0 +1,18 @@ |
2186 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2187 | +{% set image_name = image_name or "^cirros.*uec$" %} |
2188 | +--- |
2189 | + NovaServers.boot_and_show_server: |
2190 | + - |
2191 | + args: |
2192 | + flavor: |
2193 | + name: "{{flavor_name}}" |
2194 | + image: |
2195 | + name: "__IMAGE__" |
2196 | + runner: |
2197 | + type: "constant" |
2198 | + times: 1 |
2199 | + concurrency: 1 |
2200 | + context: |
2201 | + users: |
2202 | + tenants: 1 |
2203 | + users_per_tenant: 1 |
2204 | |
2205 | === added file 'deprecated/templates/rally/boot-bounce-delete.yaml' |
2206 | --- deprecated/templates/rally/boot-bounce-delete.yaml 1970-01-01 00:00:00 +0000 |
2207 | +++ deprecated/templates/rally/boot-bounce-delete.yaml 2018-03-19 16:01:39 +0000 |
2208 | @@ -0,0 +1,27 @@ |
2209 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2210 | +--- |
2211 | + NovaServers.boot_and_bounce_server: |
2212 | + - |
2213 | + args: |
2214 | + flavor: |
2215 | + name: "{{flavor_name}}" |
2216 | + image: |
2217 | + name: "__IMAGE__" |
2218 | + force_delete: false |
2219 | + actions: |
2220 | + - |
2221 | + hard_reboot: 1 |
2222 | + - |
2223 | + soft_reboot: 1 |
2224 | + - |
2225 | + stop_start: 1 |
2226 | + - |
2227 | + rescue_unrescue: 1 |
2228 | + runner: |
2229 | + type: "constant" |
2230 | + times: 10 |
2231 | + concurrency: 2 |
2232 | + context: |
2233 | + users: |
2234 | + tenants: 3 |
2235 | + users_per_tenant: 2 |
2236 | |
2237 | === added file 'deprecated/templates/rally/boot-from-volume-and-delete.yaml' |
2238 | --- deprecated/templates/rally/boot-from-volume-and-delete.yaml 1970-01-01 00:00:00 +0000 |
2239 | +++ deprecated/templates/rally/boot-from-volume-and-delete.yaml 2018-03-19 16:01:39 +0000 |
2240 | @@ -0,0 +1,19 @@ |
2241 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2242 | +--- |
2243 | + NovaServers.boot_server_from_volume_and_delete: |
2244 | + - |
2245 | + args: |
2246 | + flavor: |
2247 | + name: "{{flavor_name}}" |
2248 | + image: |
2249 | + name: "__IMAGE__" |
2250 | + volume_size: 10 |
2251 | + force_delete: false |
2252 | + runner: |
2253 | + type: "constant" |
2254 | + times: 10 |
2255 | + concurrency: 2 |
2256 | + context: |
2257 | + users: |
2258 | + tenants: 3 |
2259 | + users_per_tenant: 2 |
2260 | |
2261 | === added file 'deprecated/templates/rally/boot-from-volume-and-resize.yaml' |
2262 | --- deprecated/templates/rally/boot-from-volume-and-resize.yaml 1970-01-01 00:00:00 +0000 |
2263 | +++ deprecated/templates/rally/boot-from-volume-and-resize.yaml 2018-03-19 16:01:39 +0000 |
2264 | @@ -0,0 +1,25 @@ |
2265 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2266 | +--- |
2267 | + NovaServers.boot_server_from_volume_and_resize: |
2268 | + - |
2269 | + args: |
2270 | + flavor: |
2271 | + name: "{{flavor_name}}" |
2272 | + image: |
2273 | + name: "__IMAGE__" |
2274 | + to_flavor: |
2275 | + name: "m1.small" |
2276 | + confirm: true |
2277 | + volume_size: 1 |
2278 | + force_delete: false |
2279 | + do_delete: true |
2280 | + boot_server_kwargs: {} |
2281 | + create_volume_kwargs: {} |
2282 | + runner: |
2283 | + type: "constant" |
2284 | + times: 10 |
2285 | + concurrency: 2 |
2286 | + context: |
2287 | + users: |
2288 | + tenants: 3 |
2289 | + users_per_tenant: 2 |
2290 | |
2291 | === added file 'deprecated/templates/rally/boot-from-volume.yaml' |
2292 | --- deprecated/templates/rally/boot-from-volume.yaml 1970-01-01 00:00:00 +0000 |
2293 | +++ deprecated/templates/rally/boot-from-volume.yaml 2018-03-19 16:01:39 +0000 |
2294 | @@ -0,0 +1,18 @@ |
2295 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2296 | +--- |
2297 | + NovaServers.boot_server_from_volume: |
2298 | + - |
2299 | + args: |
2300 | + flavor: |
2301 | + name: "{{flavor_name}}" |
2302 | + image: |
2303 | + name: "__IMAGE__" |
2304 | + volume_size: 10 |
2305 | + runner: |
2306 | + type: "constant" |
2307 | + times: 10 |
2308 | + concurrency: 2 |
2309 | + context: |
2310 | + users: |
2311 | + tenants: 3 |
2312 | + users_per_tenant: 2 |
2313 | |
2314 | === added file 'deprecated/templates/rally/boot-lock-unlock-and-delete.yaml' |
2315 | --- deprecated/templates/rally/boot-lock-unlock-and-delete.yaml 1970-01-01 00:00:00 +0000 |
2316 | +++ deprecated/templates/rally/boot-lock-unlock-and-delete.yaml 2018-03-19 16:01:39 +0000 |
2317 | @@ -0,0 +1,17 @@ |
2318 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2319 | +--- |
2320 | + NovaServers.boot_lock_unlock_and_delete: |
2321 | + - |
2322 | + args: |
2323 | + flavor: |
2324 | + name: "{{flavor_name}}" |
2325 | + image: |
2326 | + name: "__IMAGE__" |
2327 | + runner: |
2328 | + type: "constant" |
2329 | + times: 10 |
2330 | + concurrency: 2 |
2331 | + context: |
2332 | + users: |
2333 | + tenants: 1 |
2334 | + users_per_tenant: 1 |
2335 | |
2336 | === added file 'deprecated/templates/rally/boot-server-attach-created-volume-and-live-migrate.yaml' |
2337 | --- deprecated/templates/rally/boot-server-attach-created-volume-and-live-migrate.yaml 1970-01-01 00:00:00 +0000 |
2338 | +++ deprecated/templates/rally/boot-server-attach-created-volume-and-live-migrate.yaml 2018-03-19 16:01:39 +0000 |
2339 | @@ -0,0 +1,20 @@ |
2340 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2341 | +--- |
2342 | +NovaServers.boot_server_attach_created_volume_and_live_migrate: |
2343 | +- args: |
2344 | + flavor: |
2345 | + name: "{{flavor_name}}" |
2346 | + image: |
2347 | + name: "__IMAGE__" |
2348 | + size: 10 |
2349 | + block_migration: false |
2350 | + boot_server_kwargs: {} |
2351 | + create_volume_kwargs: {} |
2352 | + runner: |
2353 | + type: "constant" |
2354 | + times: 5 |
2355 | + concurrency: 1 |
2356 | + context: |
2357 | + users: |
2358 | + tenants: 2 |
2359 | + users_per_tenant: 2 |
2360 | |
2361 | === added file 'deprecated/templates/rally/boot-server-attach-created-volume-and-resize.yaml' |
2362 | --- deprecated/templates/rally/boot-server-attach-created-volume-and-resize.yaml 1970-01-01 00:00:00 +0000 |
2363 | +++ deprecated/templates/rally/boot-server-attach-created-volume-and-resize.yaml 2018-03-19 16:01:39 +0000 |
2364 | @@ -0,0 +1,25 @@ |
2365 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2366 | +--- |
2367 | + NovaServers.boot_server_attach_created_volume_and_resize: |
2368 | + - |
2369 | + args: |
2370 | + flavor: |
2371 | + name: "{{flavor_name}}" |
2372 | + image: |
2373 | + name: "__IMAGE__" |
2374 | + to_flavor: |
2375 | + name: "m1.small" |
2376 | + confirm: true |
2377 | + volume_size: 1 |
2378 | + force_delete: false |
2379 | + do_delete: true |
2380 | + boot_server_kwargs: {} |
2381 | + create_volume_kwargs: {} |
2382 | + runner: |
2383 | + type: "constant" |
2384 | + times: 10 |
2385 | + concurrency: 2 |
2386 | + context: |
2387 | + users: |
2388 | + tenants: 3 |
2389 | + users_per_tenant: 2 |
2390 | |
2391 | === added file 'deprecated/templates/rally/boot-server-from-volume-and-live-migrate.yaml' |
2392 | --- deprecated/templates/rally/boot-server-from-volume-and-live-migrate.yaml 1970-01-01 00:00:00 +0000 |
2393 | +++ deprecated/templates/rally/boot-server-from-volume-and-live-migrate.yaml 2018-03-19 16:01:39 +0000 |
2394 | @@ -0,0 +1,19 @@ |
2395 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2396 | +--- |
2397 | +NovaServers.boot_server_from_volume_and_live_migrate: |
2398 | +- args: |
2399 | + flavor: |
2400 | + name: "{{flavor_name}}" |
2401 | + image: |
2402 | + name: "__IMAGE__" |
2403 | + block_migration: false |
2404 | + volume_size: 10 |
2405 | + force_delete: false |
2406 | + runner: |
2407 | + type: "constant" |
2408 | + times: 10 |
2409 | + concurrency: 2 |
2410 | + context: |
2411 | + users: |
2412 | + tenants: 1 |
2413 | + users_per_tenant: 1 |
2414 | |
2415 | === added file 'deprecated/templates/rally/boot-snapshot-boot-delete.yaml' |
2416 | --- deprecated/templates/rally/boot-snapshot-boot-delete.yaml 1970-01-01 00:00:00 +0000 |
2417 | +++ deprecated/templates/rally/boot-snapshot-boot-delete.yaml 2018-03-19 16:01:39 +0000 |
2418 | @@ -0,0 +1,18 @@ |
2419 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2420 | +--- |
2421 | + NovaServers.snapshot_server: |
2422 | + - |
2423 | + args: |
2424 | + flavor: |
2425 | + name: "{{flavor_name}}" |
2426 | + image: |
2427 | + name: "__IMAGE__" |
2428 | + force_delete: false |
2429 | + runner: |
2430 | + type: "constant" |
2431 | + times: 10 |
2432 | + concurrency: 2 |
2433 | + context: |
2434 | + users: |
2435 | + tenants: 3 |
2436 | + users_per_tenant: 2 |
2437 | |
2438 | === added file 'deprecated/templates/rally/boot.yaml' |
2439 | --- deprecated/templates/rally/boot.yaml 1970-01-01 00:00:00 +0000 |
2440 | +++ deprecated/templates/rally/boot.yaml 2018-03-19 16:01:39 +0000 |
2441 | @@ -0,0 +1,17 @@ |
2442 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2443 | +--- |
2444 | + NovaServers.boot_server: |
2445 | + - |
2446 | + args: |
2447 | + flavor: |
2448 | + name: "{{flavor_name}}" |
2449 | + image: |
2450 | + name: "__IMAGE__" |
2451 | + runner: |
2452 | + type: "constant" |
2453 | + times: 10 |
2454 | + concurrency: 2 |
2455 | + context: |
2456 | + users: |
2457 | + tenants: 3 |
2458 | + users_per_tenant: 2 |
2459 | |
2460 | === added file 'deprecated/templates/rally/create-and-delete-floating-ips-bulk.yaml' |
2461 | --- deprecated/templates/rally/create-and-delete-floating-ips-bulk.yaml 1970-01-01 00:00:00 +0000 |
2462 | +++ deprecated/templates/rally/create-and-delete-floating-ips-bulk.yaml 2018-03-19 16:01:39 +0000 |
2463 | @@ -0,0 +1,13 @@ |
2464 | +--- |
2465 | + NovaFloatingIpsBulk.create_and_delete_floating_ips_bulk: |
2466 | + - |
2467 | + args: |
2468 | + start_cidr: "10.2.0.0/24" |
2469 | + runner: |
2470 | + type: "constant" |
2471 | + times: 5 |
2472 | + concurrency: 2 |
2473 | + context: |
2474 | + users: |
2475 | + tenants: 3 |
2476 | + users_per_tenant: 2 |
2477 | |
2478 | === added file 'deprecated/templates/rally/create-and-delete-keypair.yaml' |
2479 | --- deprecated/templates/rally/create-and-delete-keypair.yaml 1970-01-01 00:00:00 +0000 |
2480 | +++ deprecated/templates/rally/create-and-delete-keypair.yaml 2018-03-19 16:01:39 +0000 |
2481 | @@ -0,0 +1,11 @@ |
2482 | +--- |
2483 | + NovaKeypair.create_and_delete_keypair: |
2484 | + - |
2485 | + runner: |
2486 | + type: "constant" |
2487 | + times: 10 |
2488 | + concurrency: 2 |
2489 | + context: |
2490 | + users: |
2491 | + tenants: 3 |
2492 | + users_per_tenant: 2 |
2493 | |
2494 | === added file 'deprecated/templates/rally/create-and-delete-network.yaml' |
2495 | --- deprecated/templates/rally/create-and-delete-network.yaml 1970-01-01 00:00:00 +0000 |
2496 | +++ deprecated/templates/rally/create-and-delete-network.yaml 2018-03-19 16:01:39 +0000 |
2497 | @@ -0,0 +1,13 @@ |
2498 | +--- |
2499 | + NovaNetworks.create_and_delete_network: |
2500 | + - |
2501 | + args: |
2502 | + start_cidr: "10.10.0.0/24" |
2503 | + runner: |
2504 | + type: "constant" |
2505 | + times: 5 |
2506 | + concurrency: 2 |
2507 | + context: |
2508 | + users: |
2509 | + tenants: 3 |
2510 | + users_per_tenant: 2 |
2511 | \ No newline at end of file |
2512 | |
2513 | === added file 'deprecated/templates/rally/create-and-delete-secgroups.yaml' |
2514 | --- deprecated/templates/rally/create-and-delete-secgroups.yaml 1970-01-01 00:00:00 +0000 |
2515 | +++ deprecated/templates/rally/create-and-delete-secgroups.yaml 2018-03-19 16:01:39 +0000 |
2516 | @@ -0,0 +1,14 @@ |
2517 | +--- |
2518 | + NovaSecGroup.create_and_delete_secgroups: |
2519 | + - |
2520 | + args: |
2521 | + security_group_count: 10 |
2522 | + rules_per_security_group: 10 |
2523 | + runner: |
2524 | + type: "constant" |
2525 | + times: 10 |
2526 | + concurrency: 2 |
2527 | + context: |
2528 | + users: |
2529 | + tenants: 3 |
2530 | + users_per_tenant: 2 |
2531 | |
2532 | === added file 'deprecated/templates/rally/create-and-list-floating-ips-bulk.yaml' |
2533 | --- deprecated/templates/rally/create-and-list-floating-ips-bulk.yaml 1970-01-01 00:00:00 +0000 |
2534 | +++ deprecated/templates/rally/create-and-list-floating-ips-bulk.yaml 2018-03-19 16:01:39 +0000 |
2535 | @@ -0,0 +1,14 @@ |
2536 | +--- |
2537 | + NovaFloatingIpsBulk.create_and_list_floating_ips_bulk: |
2538 | + - |
2539 | + args: |
2540 | + start_cidr: "10.2.0.0/24" |
2541 | + runner: |
2542 | + type: "constant" |
2543 | + times: 5 |
2544 | + concurrency: 2 |
2545 | + context: |
2546 | + users: |
2547 | + tenants: 3 |
2548 | + users_per_tenant: 2 |
2549 | + |
2550 | |
2551 | === added file 'deprecated/templates/rally/create-and-list-keypairs.yaml' |
2552 | --- deprecated/templates/rally/create-and-list-keypairs.yaml 1970-01-01 00:00:00 +0000 |
2553 | +++ deprecated/templates/rally/create-and-list-keypairs.yaml 2018-03-19 16:01:39 +0000 |
2554 | @@ -0,0 +1,11 @@ |
2555 | +--- |
2556 | + NovaKeypair.create_and_list_keypairs: |
2557 | + - |
2558 | + runner: |
2559 | + type: "constant" |
2560 | + times: 10 |
2561 | + concurrency: 2 |
2562 | + context: |
2563 | + users: |
2564 | + tenants: 3 |
2565 | + users_per_tenant: 2 |
2566 | |
2567 | === added file 'deprecated/templates/rally/create-and-list-networks.yaml' |
2568 | --- deprecated/templates/rally/create-and-list-networks.yaml 1970-01-01 00:00:00 +0000 |
2569 | +++ deprecated/templates/rally/create-and-list-networks.yaml 2018-03-19 16:01:39 +0000 |
2570 | @@ -0,0 +1,13 @@ |
2571 | +--- |
2572 | + NovaNetworks.create_and_list_networks: |
2573 | + - |
2574 | + args: |
2575 | + start_cidr: "10.10.0.0/24" |
2576 | + runner: |
2577 | + type: "constant" |
2578 | + times: 5 |
2579 | + concurrency: 2 |
2580 | + context: |
2581 | + users: |
2582 | + tenants: 3 |
2583 | + users_per_tenant: 2 |
2584 | \ No newline at end of file |
2585 | |
2586 | === added file 'deprecated/templates/rally/create-and-list-secgroups.yaml' |
2587 | --- deprecated/templates/rally/create-and-list-secgroups.yaml 1970-01-01 00:00:00 +0000 |
2588 | +++ deprecated/templates/rally/create-and-list-secgroups.yaml 2018-03-19 16:01:39 +0000 |
2589 | @@ -0,0 +1,14 @@ |
2590 | +--- |
2591 | + NovaSecGroup.create_and_list_secgroups: |
2592 | + - |
2593 | + args: |
2594 | + security_group_count: 10 |
2595 | + rules_per_security_group: 10 |
2596 | + runner: |
2597 | + type: "constant" |
2598 | + times: 10 |
2599 | + concurrency: 2 |
2600 | + context: |
2601 | + users: |
2602 | + tenants: 3 |
2603 | + users_per_tenant: 2 |
2604 | |
2605 | === added file 'deprecated/templates/rally/create-and-update-secgroups.yaml' |
2606 | --- deprecated/templates/rally/create-and-update-secgroups.yaml 1970-01-01 00:00:00 +0000 |
2607 | +++ deprecated/templates/rally/create-and-update-secgroups.yaml 2018-03-19 16:01:39 +0000 |
2608 | @@ -0,0 +1,13 @@ |
2609 | +--- |
2610 | + NovaSecGroup.create_and_update_secgroups: |
2611 | + - |
2612 | + args: |
2613 | + security_group_count: 10 |
2614 | + runner: |
2615 | + type: "constant" |
2616 | + times: 10 |
2617 | + concurrency: 2 |
2618 | + context: |
2619 | + users: |
2620 | + tenants: 3 |
2621 | + users_per_tenant: 2 |
2622 | |
2623 | === added file 'deprecated/templates/rally/list-agents.yaml' |
2624 | --- deprecated/templates/rally/list-agents.yaml 1970-01-01 00:00:00 +0000 |
2625 | +++ deprecated/templates/rally/list-agents.yaml 2018-03-19 16:01:39 +0000 |
2626 | @@ -0,0 +1,7 @@ |
2627 | +--- |
2628 | + NovaAgents.list_agents: |
2629 | + - |
2630 | + runner: |
2631 | + type: "constant" |
2632 | + concurrency: 2 |
2633 | + times: 10 |
2634 | |
2635 | === added file 'deprecated/templates/rally/list-aggregates.yaml' |
2636 | --- deprecated/templates/rally/list-aggregates.yaml 1970-01-01 00:00:00 +0000 |
2637 | +++ deprecated/templates/rally/list-aggregates.yaml 2018-03-19 16:01:39 +0000 |
2638 | @@ -0,0 +1,7 @@ |
2639 | +--- |
2640 | + NovaAggregates.list_aggregates: |
2641 | + - |
2642 | + runner: |
2643 | + type: "constant" |
2644 | + concurrency: 2 |
2645 | + times : 10 |
2646 | |
2647 | === added file 'deprecated/templates/rally/list-availability-zones.yaml' |
2648 | --- deprecated/templates/rally/list-availability-zones.yaml 1970-01-01 00:00:00 +0000 |
2649 | +++ deprecated/templates/rally/list-availability-zones.yaml 2018-03-19 16:01:39 +0000 |
2650 | @@ -0,0 +1,9 @@ |
2651 | +--- |
2652 | + NovaAvailabilityZones.list_availability_zones: |
2653 | + - |
2654 | + args: |
2655 | + detailed: true |
2656 | + runner: |
2657 | + type: "constant" |
2658 | + concurrency: 2 |
2659 | + times: 10 |
2660 | |
2661 | === added file 'deprecated/templates/rally/list-flavors.yaml' |
2662 | --- deprecated/templates/rally/list-flavors.yaml 1970-01-01 00:00:00 +0000 |
2663 | +++ deprecated/templates/rally/list-flavors.yaml 2018-03-19 16:01:39 +0000 |
2664 | @@ -0,0 +1,13 @@ |
2665 | +--- |
2666 | + NovaFlavors.list_flavors: |
2667 | + - |
2668 | + args: |
2669 | + detailed: True |
2670 | + runner: |
2671 | + type: "constant" |
2672 | + times: 10 |
2673 | + concurrency: 2 |
2674 | + context: |
2675 | + users: |
2676 | + tenants: 3 |
2677 | + users_per_tenant: 2 |
2678 | |
2679 | === added file 'deprecated/templates/rally/list-hosts.yaml' |
2680 | --- deprecated/templates/rally/list-hosts.yaml 1970-01-01 00:00:00 +0000 |
2681 | +++ deprecated/templates/rally/list-hosts.yaml 2018-03-19 16:01:39 +0000 |
2682 | @@ -0,0 +1,7 @@ |
2683 | +--- |
2684 | + NovaHosts.list_hosts: |
2685 | + - |
2686 | + runner: |
2687 | + type: "constant" |
2688 | + concurrency: 2 |
2689 | + times: 10 |
2690 | |
2691 | === added file 'deprecated/templates/rally/list-hypervisors.yaml' |
2692 | --- deprecated/templates/rally/list-hypervisors.yaml 1970-01-01 00:00:00 +0000 |
2693 | +++ deprecated/templates/rally/list-hypervisors.yaml 2018-03-19 16:01:39 +0000 |
2694 | @@ -0,0 +1,9 @@ |
2695 | +--- |
2696 | + NovaHypervisors.list_hypervisors: |
2697 | + - |
2698 | + args: |
2699 | + detailed: True |
2700 | + runner: |
2701 | + type: "constant" |
2702 | + times: 10 |
2703 | + concurrency: 2 |
2704 | |
2705 | === added file 'deprecated/templates/rally/list-images.yaml' |
2706 | --- deprecated/templates/rally/list-images.yaml 1970-01-01 00:00:00 +0000 |
2707 | +++ deprecated/templates/rally/list-images.yaml 2018-03-19 16:01:39 +0000 |
2708 | @@ -0,0 +1,13 @@ |
2709 | +--- |
2710 | + NovaImages.list_images: |
2711 | + - |
2712 | + args: |
2713 | + detailed: True |
2714 | + runner: |
2715 | + type: "constant" |
2716 | + times: 10 |
2717 | + concurrency: 2 |
2718 | + context: |
2719 | + users: |
2720 | + tenants: 3 |
2721 | + users_per_tenant: 2 |
2722 | |
2723 | === added file 'deprecated/templates/rally/list-servers.yaml' |
2724 | --- deprecated/templates/rally/list-servers.yaml 1970-01-01 00:00:00 +0000 |
2725 | +++ deprecated/templates/rally/list-servers.yaml 2018-03-19 16:01:39 +0000 |
2726 | @@ -0,0 +1,20 @@ |
2727 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2728 | +--- |
2729 | + NovaServers.list_servers: |
2730 | + - |
2731 | + args: |
2732 | + detailed: True |
2733 | + runner: |
2734 | + type: "constant" |
2735 | + times: 1 |
2736 | + concurrency: 1 |
2737 | + context: |
2738 | + users: |
2739 | + tenants: 1 |
2740 | + users_per_tenant: 1 |
2741 | + servers: |
2742 | + flavor: |
2743 | + name: "{{flavor_name}}" |
2744 | + image: |
2745 | + name: "__IMAGE__" |
2746 | + servers_per_tenant: 2 |
2747 | |
2748 | === added file 'deprecated/templates/rally/list-services.yaml' |
2749 | --- deprecated/templates/rally/list-services.yaml 1970-01-01 00:00:00 +0000 |
2750 | +++ deprecated/templates/rally/list-services.yaml 2018-03-19 16:01:39 +0000 |
2751 | @@ -0,0 +1,7 @@ |
2752 | +--- |
2753 | + NovaServices.list_services: |
2754 | + - |
2755 | + runner: |
2756 | + type: "constant" |
2757 | + times: 10 |
2758 | + concurrency: 2 |
2759 | |
2760 | === added file 'deprecated/templates/rally/pause-and-unpause.yaml' |
2761 | --- deprecated/templates/rally/pause-and-unpause.yaml 1970-01-01 00:00:00 +0000 |
2762 | +++ deprecated/templates/rally/pause-and-unpause.yaml 2018-03-19 16:01:39 +0000 |
2763 | @@ -0,0 +1,18 @@ |
2764 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2765 | +--- |
2766 | + NovaServers.pause_and_unpause_server: |
2767 | + - |
2768 | + args: |
2769 | + flavor: |
2770 | + name: "{{flavor_name}}" |
2771 | + image: |
2772 | + name: "__IMAGE__" |
2773 | + force_delete: false |
2774 | + runner: |
2775 | + type: "constant" |
2776 | + times: 10 |
2777 | + concurrency: 2 |
2778 | + context: |
2779 | + users: |
2780 | + tenants: 3 |
2781 | + users_per_tenant: 2 |
2782 | |
2783 | === added file 'deprecated/templates/rally/resize-server.yaml' |
2784 | --- deprecated/templates/rally/resize-server.yaml 1970-01-01 00:00:00 +0000 |
2785 | +++ deprecated/templates/rally/resize-server.yaml 2018-03-19 16:01:39 +0000 |
2786 | @@ -0,0 +1,21 @@ |
2787 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2788 | +--- |
2789 | + NovaServers.resize_server: |
2790 | + - |
2791 | + args: |
2792 | + flavor: |
2793 | + name: "{{flavor_name}}" |
2794 | + image: |
2795 | + name: "__IMAGE__" |
2796 | + to_flavor: |
2797 | + name: "m1.small" |
2798 | + confirm: true |
2799 | + force_delete: false |
2800 | + runner: |
2801 | + type: "constant" |
2802 | + times: 10 |
2803 | + concurrency: 5 |
2804 | + context: |
2805 | + users: |
2806 | + tenants: 1 |
2807 | + users_per_tenant: 1 |
2808 | |
2809 | === added file 'deprecated/templates/rally/shelve-and-unshelve.yaml' |
2810 | --- deprecated/templates/rally/shelve-and-unshelve.yaml 1970-01-01 00:00:00 +0000 |
2811 | +++ deprecated/templates/rally/shelve-and-unshelve.yaml 2018-03-19 16:01:39 +0000 |
2812 | @@ -0,0 +1,18 @@ |
2813 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2814 | +--- |
2815 | + NovaServers.shelve_and_unshelve_server: |
2816 | + - |
2817 | + args: |
2818 | + flavor: |
2819 | + name: "{{flavor_name}}" |
2820 | + image: |
2821 | + name: "__IMAGE__" |
2822 | + force_delete: false |
2823 | + runner: |
2824 | + type: "constant" |
2825 | + times: 10 |
2826 | + concurrency: 2 |
2827 | + context: |
2828 | + users: |
2829 | + tenants: 3 |
2830 | + users_per_tenant: 2 |
2831 | |
2832 | === added file 'deprecated/templates/rally/suspend-and-resume.yaml' |
2833 | --- deprecated/templates/rally/suspend-and-resume.yaml 1970-01-01 00:00:00 +0000 |
2834 | +++ deprecated/templates/rally/suspend-and-resume.yaml 2018-03-19 16:01:39 +0000 |
2835 | @@ -0,0 +1,18 @@ |
2836 | +{% set flavor_name = flavor_name or "m1.tiny" %} |
2837 | +--- |
2838 | + NovaServers.suspend_and_resume_server: |
2839 | + - |
2840 | + args: |
2841 | + flavor: |
2842 | + name: "{{flavor_name}}" |
2843 | + image: |
2844 | + name: "__IMAGE__" |
2845 | + force_delete: false |
2846 | + runner: |
2847 | + type: "constant" |
2848 | + times: 10 |
2849 | + concurrency: 2 |
2850 | + context: |
2851 | + users: |
2852 | + tenants: 3 |
2853 | + users_per_tenant: 2 |
2854 | |
2855 | === added directory 'deprecated/templates/tempest' |
2856 | === added file 'deprecated/templates/tempest/accounts.yaml' |
2857 | --- deprecated/templates/tempest/accounts.yaml 1970-01-01 00:00:00 +0000 |
2858 | +++ deprecated/templates/tempest/accounts.yaml 2018-03-19 16:01:39 +0000 |
2859 | @@ -0,0 +1,6 @@ |
2860 | +- username: 'demo' |
2861 | + tenant_name: 'demo' |
2862 | + password: 'secret' |
2863 | +- username: 'alt_demo' |
2864 | + tenant_name: 'alt_demo' |
2865 | + password: 'secret' |
2866 | |
2867 | === added file 'deprecated/templates/tempest/tempest-v3.conf.template' |
2868 | --- deprecated/templates/tempest/tempest-v3.conf.template 1970-01-01 00:00:00 +0000 |
2869 | +++ deprecated/templates/tempest/tempest-v3.conf.template 2018-03-19 16:01:39 +0000 |
2870 | @@ -0,0 +1,71 @@ |
2871 | +[auth] |
2872 | +test_accounts_file=accounts.yaml |
2873 | +default_credentials_domain_name=admin_domain |
2874 | +admin_username=admin |
2875 | +admin_project_name=admin |
2876 | +admin_password=openstack |
2877 | +admin_domain_name=admin_domain |
2878 | +[compute] |
2879 | +image_ref=__IMAGE_ID__ |
2880 | +image_ref_alt=__IMAGE_ALT_ID__ |
2881 | +flavor_ref=7 |
2882 | +flavor_ref_alt=8 |
2883 | +region=RegionOne |
2884 | +min_compute_nodes = 3 |
2885 | +[compute-feature-enabled] |
2886 | +console_output=false |
2887 | +resize=true |
2888 | +live_migration=true |
2889 | +block_migration_for_live_migration=true |
2890 | +[identity] |
2891 | +uri_v3=__PROTO__://__KEYSTONE__:5000/v3 |
2892 | +auth_version=v3 |
2893 | +admin_role=Admin |
2894 | +region=RegionOne |
2895 | +default_domain_id=__DEFAULT_DOMAIN_ID__ |
2896 | +admin_domain_scope=true |
2897 | +[identity-feature-enabled] |
2898 | +api_v2=false |
2899 | +api_v3=true |
2900 | +[image] |
2901 | +catalog_type = image |
2902 | +region=RegionOne |
2903 | +http_image = http://__SWIFT__:80/swift/v1/images/cirros-0.3.4-x86_64-uec.tar.gz |
2904 | +[network] |
2905 | +project_network_cidr=__CIDR_PRIV__ |
2906 | +public_network_id=__EXT_NET__ |
2907 | +dns_servers=__NAMESERVER__ |
2908 | +project_networks_reachable = false |
2909 | +[network-feature-enabled] |
2910 | +ipv6=false |
2911 | +[orchestration] |
2912 | +stack_owner_role = Admin |
2913 | +instance_type = m1.small |
2914 | +keypair_name = testkey |
2915 | +[oslo_concurrency] |
2916 | +lock_path=/tmp |
2917 | +[scenario] |
2918 | +img_dir=/home/ubuntu/images |
2919 | +ssh_user=cirros |
2920 | +[service_available] |
2921 | +ceilometer = true |
2922 | +cinder = true |
2923 | +glance = true |
2924 | +heat = true |
2925 | +horizon = true |
2926 | +ironic = false |
2927 | +neutron = true |
2928 | +nova = true |
2929 | +sahara = false |
2930 | +swift = true |
2931 | +trove = false |
2932 | +zaqar = false |
2933 | +[volume] |
2934 | +catalog_type = volumev3 |
2935 | +backend_names=cinder-ceph |
2936 | +storage_protocol=ceph |
2937 | +[volume-feature-enabled] |
2938 | +backup=false |
2939 | +api_v1=false |
2940 | +api_v2=false |
2941 | +api_v3=true |
2942 | |
2943 | === added file 'deprecated/templates/tempest/tempest.conf.oil_example' |
2944 | --- deprecated/templates/tempest/tempest.conf.oil_example 1970-01-01 00:00:00 +0000 |
2945 | +++ deprecated/templates/tempest/tempest.conf.oil_example 2018-03-19 16:01:39 +0000 |
2946 | @@ -0,0 +1,461 @@ |
2947 | +# OIL |
2948 | + |
2949 | +[DEFAULT] |
2950 | +#log_config = /opt/stack/tempest/etc/logging.conf.sample |
2951 | + |
2952 | +# disable logging to the stderr |
2953 | +use_stderr = False |
2954 | + |
2955 | +# log file |
2956 | +log_file = tempest.log |
2957 | + |
2958 | +# lock/semaphore base directory |
2959 | +lock_path=/tmp |
2960 | + |
2961 | +default_log_levels=tempest.stress=INFO,amqplib=WARN,sqlalchemy=WARN,boto=WARN,suds=INFO,keystone=INFO,eventlet.wsgi.server=WARN |
2962 | + |
2963 | +[identity] |
2964 | +# This section contains configuration options that a variety of Tempest |
2965 | +# test clients use when authenticating with different user/tenant |
2966 | +# combinations |
2967 | + |
2968 | +# The type of endpoint for a Identity service. Unless you have a |
2969 | +# custom Keystone service catalog implementation, you probably want to leave |
2970 | +# this value as "identity" |
2971 | +catalog_type = identity |
2972 | +# Ignore SSL certificate validation failures? Use when in testing |
2973 | +# environments that have self-signed SSL certs. |
2974 | +disable_ssl_certificate_validation = False |
2975 | +# URL for where to find the OpenStack Identity API endpoint (Keystone) |
2976 | +uri = http://{{ keystone_host }}:5000/v2.0/ |
2977 | +# URL for where to find the OpenStack V3 Identity API endpoint (Keystone) |
2978 | +uri_v3 = http://{{ keystone_host }}:5000/v3/ |
2979 | +# The identity region. Also used as the other services' region name unless |
2980 | +# they are set explicitly. |
2981 | +region = RegionOne |
2982 | + |
2983 | +# This should be the username of a user WITHOUT administrative privileges |
2984 | +username = {{ test_tenant_1_username }} |
2985 | +# The above non-administrative user's password |
2986 | +password = {{ test_tenant_1_password }} |
2987 | +# The above non-administrative user's tenant name |
2988 | +tenant_name = {{ test_tenant_2_tenant_name }} |
2989 | + |
2990 | +# This should be the username of an alternate user WITHOUT |
2991 | +# administrative privileges |
2992 | +alt_username = {{ test_tenant_2_username }} |
2993 | +# The above non-administrative user's password |
2994 | +alt_password = {{ test_tenant_2_password }} |
2995 | +# The above non-administrative user's tenant name |
2996 | +alt_tenant_name = {{ test_tenant_2_tenant_name }} |
2997 | + |
2998 | +# NOTE (adam_g): The OS_* credentials in envrc should point to the |
2999 | +# default configured credentials in the keystone |
3000 | +# service config (admin user). |
3001 | +# This should be the username of a user WITH administrative privileges |
3002 | +admin_username = {{ admin_username }} |
3003 | +# The above administrative user's password |
3004 | +admin_password = {{ admin_password }} |
3005 | +# The above administrative user's tenant name |
3006 | +admin_tenant_name = {{ admin_tenant_name }} |
3007 | + |
3008 | +# The role that is required to administrate keystone. |
3009 | +admin_role = Admin |
3010 | + |
3011 | +[compute] |
3012 | +# This section contains configuration options used when executing tests |
3013 | +# against the OpenStack Compute API. |
3014 | + |
3015 | +# Allows test cases to create/destroy tenants and users. This option |
3016 | +# enables isolated test cases and better parallel execution, |
3017 | +# but also requires that OpenStack Identity API admin credentials |
3018 | +# are known. |
3019 | +allow_tenant_isolation = true |
3020 | + |
3021 | +# Allows test cases to create/destroy tenants and users. This option |
3022 | +# enables isolated test cases and better parallel execution, |
3023 | +# but also requires that OpenStack Identity API admin credentials |
3024 | +# are known. |
3025 | +allow_tenant_reuse = true |
3026 | + |
3027 | +# Reference data for tests. The ref and ref_alt should be |
3028 | +# distinct images/flavors. |
3029 | +image_ref = {{ image_uuid_1 }} |
3030 | +image_ref_alt = {{ image_uuid_2 }} |
3031 | +flavor_ref = 2 |
3032 | +flavor_ref_alt = 3 |
3033 | + |
3034 | +# User names used to authenticate to an instance for a given image. |
3035 | +image_ssh_user = root |
3036 | + |
3037 | +# Password used to authenticate to an instance |
3038 | +image_ssh_password = password |
3039 | + |
3040 | +# User name used to authenticate to an instance using the alternate image |
3041 | +image_alt_ssh_user = root |
3042 | + |
3043 | +# Password used to authenticate to an instance using the alternate image |
3044 | +image_alt_ssh_password = password |
3045 | + |
3046 | +# Number of seconds to wait while looping to check the status of an |
3047 | +# instance that is building. |
3048 | +build_interval = 10 |
3049 | + |
3050 | +# Number of seconds to time out on waiting for an instance |
3051 | +# to build or reach an expected status |
3052 | +build_timeout = 600 |
3053 | + |
3054 | +# Run additional tests that use SSH for instance validation? |
3055 | +# This requires the instances be routable from the host |
3056 | +# executing the tests |
3057 | +run_ssh = false |
3058 | + |
3059 | +# Name of a user used to authenticated to an instance |
3060 | +ssh_user = cirros |
3061 | + |
3062 | +# Visible fixed network name |
3063 | +fixed_network_name = private |
3064 | + |
3065 | +# Network id used for SSH (public, private, etc) |
3066 | +network_for_ssh = private |
3067 | + |
3068 | +# IP version of the address used for SSH |
3069 | +ip_version_for_ssh = 4 |
3070 | + |
3071 | +# Number of seconds to wait to ping to an instance |
3072 | +ping_timeout = 60 |
3073 | + |
3074 | +# Number of seconds to wait to authenticate to an instance |
3075 | +ssh_timeout = 300 |
3076 | + |
3077 | +# Additinal wait time for clean state, when there is |
3078 | +# no OS-EXT-STS extension availiable |
3079 | +ready_wait = 0 |
3080 | + |
3081 | +# Number of seconds to wait for output from ssh channel |
3082 | +ssh_channel_timeout = 60 |
3083 | + |
3084 | +# Dose the SSH uses Floating IP? |
3085 | +use_floatingip_for_ssh = True |
3086 | + |
3087 | +# The type of endpoint for a Compute API service. Unless you have a |
3088 | +# custom Keystone service catalog implementation, you probably want to leave |
3089 | +# this value as "compute" |
3090 | +catalog_type = compute |
3091 | + |
3092 | +# The name of a region for compute. If empty or commented-out, the value of |
3093 | +# identity.region is used instead. If no such region is found in the service |
3094 | +# catalog, the first found one is used. |
3095 | +#region = RegionOne |
3096 | + |
3097 | +# Does the Compute API support creation of images? |
3098 | +create_image_enabled = true |
3099 | + |
3100 | +# For resize to work with libvirt/kvm, one of the following must be true: |
3101 | +# Single node: allow_resize_to_same_host=True must be set in nova.conf |
3102 | +# Cluster: the 'nova' user must have scp access between cluster nodes |
3103 | +# XXX disabled, can we enable? |
3104 | +resize_available = false |
3105 | + |
3106 | +# Does the compute API support changing the admin password? |
3107 | +change_password_available=false |
3108 | + |
3109 | +# Run live migration tests (requires 2 hosts) |
3110 | +live_migration_available = false |
3111 | + |
3112 | +# Use block live migration (Otherwise, non-block migration will be |
3113 | +# performed, which requires XenServer pools in case of using XS) |
3114 | +use_block_migration_for_live_migration = false |
3115 | + |
3116 | +# Supports iSCSI block migration - depends on a XAPI supporting |
3117 | +# relax-xsm-sr-check |
3118 | +block_migrate_supports_cinder_iscsi = false |
3119 | + |
3120 | +# When set to false, disk config tests are forced to skip |
3121 | +disk_config_enabled = true |
3122 | + |
3123 | +# When set to false, flavor extra data tests are forced to skip |
3124 | +flavor_extra_enabled = true |
3125 | + |
3126 | +# Expected first device name when a volume is attached to an instance |
3127 | +volume_device_name = vdb |
3128 | + |
3129 | +[compute-admin] |
3130 | +# This should be the username of a user WITH administrative privileges |
3131 | +# If not defined the admin user from the identity section will be used |
3132 | +username = {{ admin_username }} |
3133 | +# The above administrative user's password |
3134 | +password = {{ admin_password }} |
3135 | +# The above administrative user's tenant name |
3136 | +tenant_name = {{ admin_tenant_name }} |
3137 | + |
3138 | +[image] |
3139 | +# This section contains configuration options used when executing tests |
3140 | +# against the OpenStack Images API |
3141 | + |
3142 | +# The type of endpoint for an Image API service. Unless you have a |
3143 | +# custom Keystone service catalog implementation, you probably want to leave |
3144 | +# this value as "image" |
3145 | +catalog_type = image |
3146 | + |
3147 | +# The name of a region for image. If empty or commented-out, the value of |
3148 | +# identity.region is used instead. If no such region is found in the service |
3149 | +# catalog, the first found one is used. |
3150 | +#region = RegionOne |
3151 | + |
3152 | +# The version of the OpenStack Images API to use |
3153 | +api_version = 1 |
3154 | + |
3155 | +# HTTP image to use for glance http image testing |
3156 | +#http_image = http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-uec.tar.gz |
3157 | +http_image = http://10.245.0.10/cloud_images/cirros-0.3.1-x86_64-uec.tar.gz |
3158 | + |
3159 | +[network] |
3160 | +# This section contains configuration options used when executing tests |
3161 | +# against the OpenStack Network API. |
3162 | + |
3163 | +# Version of the Neutron API |
3164 | +api_version = v1.1 |
3165 | +# Catalog type of the Neutron Service |
3166 | +catalog_type = network |
3167 | + |
3168 | +# The name of a region for network. If empty or commented-out, the value of |
3169 | +# identity.region is used instead. If no such region is found in the service |
3170 | +# catalog, the first found one is used. |
3171 | +#region = RegionOne |
3172 | + |
3173 | +# A large private cidr block from which to allocate smaller blocks for |
3174 | +# tenant networks. |
3175 | +tenant_network_cidr = 10.100.0.0/16 |
3176 | + |
3177 | +# The mask bits used to partition the tenant block. |
3178 | +tenant_network_mask_bits = 24 |
3179 | + |
3180 | +# If tenant networks are reachable, connectivity checks will be |
3181 | +# performed directly against addresses on those networks. |
3182 | +tenant_networks_reachable = false |
3183 | + |
3184 | +# Id of the public network that provides external connectivity. |
3185 | +public_network_id = {{ neutron_ext_net_id }} |
3186 | + |
3187 | +# Id of a shared public router that provides external connectivity. |
3188 | +# A shared public router would commonly be used where IP namespaces |
3189 | +# were disabled. If namespaces are enabled, it would be preferable |
3190 | +# for each tenant to have their own router. |
3191 | +public_router_id = {{ neutron_ext_net_router_id }} |
3192 | + |
3193 | + |
3194 | +[volume] |
3195 | +# This section contains the configuration options used when executing tests |
3196 | +# against the OpenStack Block Storage API service |
3197 | + |
3198 | +# The type of endpoint for a Cinder or Block Storage API service. |
3199 | +# Unless you have a custom Keystone service catalog implementation, you |
3200 | +# probably want to leave this value as "volume" |
3201 | +catalog_type = volumev2 |
3202 | +# The name of a region for volume. If empty or commented-out, the value of |
3203 | +# identity.region is used instead. If no such region is found in the service |
3204 | +# catalog, the first found one is used. |
3205 | +#region = RegionOne |
3206 | +# The disk format to use when copying a volume to image |
3207 | +disk_format = raw |
3208 | +# Number of seconds to wait while looping to check the status of a |
3209 | +# volume that is being made available |
3210 | +build_interval = 10 |
3211 | +# Number of seconds to time out on waiting for a volume |
3212 | +# to be available or reach an expected status |
3213 | +build_timeout = 300 |
3214 | +# Runs Cinder multi-backend tests (requires 2 backends declared in cinder.conf) |
3215 | +# They must have different volume_backend_name (backend1_name and backend2_name |
3216 | +# have to be different) |
3217 | +multi_backend_enabled = false |
3218 | +backend1_name = BACKEND_1 |
3219 | +backend2_name = BACKEND_2 |
3220 | +# Protocol and vendor of volume backend to target when testing volume-types. |
3221 | +# You should update to reflect those exported by configured backend driver. |
3222 | +storage_protocol = {{ storage_protocol }} |
3223 | +vendor_name = Open Source |
3224 | + |
3225 | +[object-storage] |
3226 | +# This section contains configuration options used when executing tests |
3227 | +# against the OpenStack Object Storage API. |
3228 | + |
3229 | +# You can configure the credentials in the compute section |
3230 | + |
3231 | +# The type of endpoint for an Object Storage API service. Unless you have a |
3232 | +# custom Keystone service catalog implementation, you probably want to leave |
3233 | +# this value as "object-store" |
3234 | +catalog_type = object-store |
3235 | + |
3236 | +# The name of a region for object storage. If empty or commented-out, the |
3237 | +# value of identity.region is used instead. If no such region is found in |
3238 | +# the service catalog, the first found one is used. |
3239 | +#region = RegionOne |
3240 | + |
3241 | +# Number of seconds to time on waiting for a container to container |
3242 | +# synchronization complete |
3243 | +container_sync_timeout = 120 |
3244 | +# Number of seconds to wait while looping to check the status of a |
3245 | +# container to container synchronization |
3246 | +container_sync_interval = 5 |
3247 | +# Set to True if the Account Quota middleware is enabled |
3248 | +accounts_quotas_available = True |
3249 | +# Set to True if the Container Quota middleware is enabled |
3250 | +container_quotas_available = True |
3251 | + |
3252 | +# Set operator role for tests that require creating a container |
3253 | +operator_role = Member |
3254 | + |
3255 | +#jamespage |
3256 | +accounts_quotas_available = True |
3257 | +container_quotas_available = True |
3258 | + |
3259 | +[boto] |
3260 | +# This section contains configuration options used when executing tests |
3261 | +# with boto. |
3262 | + |
3263 | +# EC2 URL |
3264 | +ec2_url = http://{{ nova_host }}:8773/services/Cloud |
3265 | +# S3 URL |
3266 | +s3_url = http://{{ nova_host }}:3333 |
3267 | + |
3268 | +# Use keystone ec2-* command to get those values for your test user and tenant |
3269 | +aws_access = {{ test_tenant_1_ec2_access }} |
3270 | +aws_secret = {{ test_tenant_1_ec2_secret }} |
3271 | + |
3272 | +# Image materials for S3 upload |
3273 | +# ALL content of the specified directory will be uploaded to S3 |
3274 | +s3_materials_path = /opt/stack/devstack/files/images/s3-materials/cirros-0.3.1 |
3275 | + |
3276 | +# The manifest.xml files, must be in the s3_materials_path directory |
3277 | +# Subdirectories not allowed! |
3278 | +# The filenames will be used as a Keys in the S3 Buckets |
3279 | + |
3280 | +# ARI Ramdisk manifest. Must be in the above s3_materials_path |
3281 | +ari_manifest = cirros-0.3.1-x86_64-initrd.manifest.xml |
3282 | + |
3283 | +# AMI Machine Image manifest. Must be in the above s3_materials_path |
3284 | +ami_manifest = cirros-0.3.1-x86_64-blank.img.manifest.xml |
3285 | + |
3286 | +# AKI Kernel Image manifest, Must be in the above s3_materials_path |
3287 | +aki_manifest = cirros-0.3.1-x86_64-vmlinuz.manifest.xml |
3288 | + |
3289 | +# Instance type |
3290 | +instance_type = m1.tiny |
3291 | + |
3292 | +# TCP/IP connection timeout |
3293 | +http_socket_timeout = 5 |
3294 | + |
3295 | +# Number of retries actions on connection or 5xx error |
3296 | +num_retries = 1 |
3297 | + |
3298 | +# Status change wait timout |
3299 | +build_timeout = 120 |
3300 | + |
3301 | +# Status change wait interval |
3302 | +build_interval = 1 |
3303 | + |
3304 | +[orchestration] |
3305 | +# The type of endpoint for an Orchestration API service. Unless you have a |
3306 | +# custom Keystone service catalog implementation, you probably want to leave |
3307 | +# this value as "orchestration" |
3308 | +catalog_type = orchestration |
3309 | + |
3310 | +# The name of a region for orchestration. If empty or commented-out, the value |
3311 | +# of identity.region is used instead. If no such region is found in the service |
3312 | +# catalog, the first found one is used. |
3313 | +#region = RegionOne |
3314 | + |
3315 | +# Status change wait interval |
3316 | +build_interval = 1 |
3317 | + |
3318 | +# Status change wait timout. This may vary across environments as some some |
3319 | +# tests spawn full VMs, which could be slow if the test is already in a VM. |
3320 | +build_timeout = 300 |
3321 | + |
3322 | +# Instance type for tests. Needs to be big enough for a |
3323 | +# full OS plus the test workload |
3324 | +instance_type = m1.micro |
3325 | + |
3326 | +# Name of heat-cfntools enabled image to use when launching test instances |
3327 | +# If not specified, tests that spawn instances will not run |
3328 | +#image_ref = ubuntu-vm-heat-cfntools |
3329 | + |
3330 | +# Name of existing keypair to launch servers with. The default is not to specify |
3331 | +# any key, which will generate a keypair for each test class |
3332 | +#keypair_name = heat_key |
3333 | + |
3334 | +[dashboard] |
3335 | +# URL where to find the dashboard home page |
3336 | +dashboard_url = http://{{ horizon_host }}/horizon |
3337 | + |
3338 | +# URL where to submit the login form |
3339 | +login_url = http://{{ horizon_host }}/horizon/auth/login/ |
3340 | + |
3341 | +[scenario] |
3342 | +# Cirros from http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-uec.tar.gz |
3343 | +# Directory containing image files |
3344 | +img_dir = /var/lib/jenkins/images/ |
3345 | + |
3346 | +# AMI image file name |
3347 | +ami_img_file = cirros-0.3.1-x86_64-blank.img |
3348 | + |
3349 | +# ARI image file name |
3350 | +ari_img_file = cirros-0.3.1-x86_64-initrd |
3351 | + |
3352 | +# AKI image file name |
3353 | +aki_img_file = cirros-0.3.1-x86_64-vmlinuz |
3354 | + |
3355 | +# ssh username for the image file |
3356 | +ssh_user = cirros |
3357 | + |
3358 | +# specifies how many resources to request at once. Used for large operations |
3359 | +# testing." |
3360 | +large_ops_number = 3 |
3361 | + |
3362 | +[cli] |
3363 | +# Enable cli tests |
3364 | +enabled = True |
3365 | +# directory where python client binaries are located |
3366 | +cli_dir = /usr/bin |
3367 | +# Number of seconds to wait on a CLI timeout |
3368 | +timeout = 15 |
3369 | + |
3370 | +[service_available] |
3371 | +# Whether or not cinder is expected to be available |
3372 | +cinder = True |
3373 | +# Whether or not neutron is expected to be available |
3374 | +neutron = {{ neutron_available }} |
3375 | +# Whether or not glance is expected to be available |
3376 | +glance = True |
3377 | +# Whether or not swift is expected to be available |
3378 | +swift = {{ swift_available }} |
3379 | +# Whether or not nova is expected to be available |
3380 | +nova = True |
3381 | +# Whether or not Heat is expected to be available |
3382 | +heat = false |
3383 | +# Whether or not horizon is expected to be available |
3384 | +horizon = {{ horizon_available }} |
3385 | + |
3386 | +[stress] |
3387 | +# Maximum number of instances to create during test |
3388 | +max_instances = 32 |
3389 | +# Time (in seconds) between log file error checks |
3390 | +log_check_interval = 60 |
3391 | +# The default number of threads created while stress test |
3392 | +default_thread_number_per_action=4 |
3393 | + |
3394 | +[debug] |
3395 | +# Enable diagnostic commands |
3396 | +enable = False |
3397 | + |
3398 | +# adds from jamespage |
3399 | +[image-feature-enabled] |
3400 | +[input-scenario] |
3401 | +[network-feature-enabled] |
3402 | +[compute-feature-enabled] |
3403 | +api_v3=false |
3404 | +[object-storage-feature-enabled] |
3405 | +[volume-feature-enabled] |
3406 | +backup=false |
3407 | +api_v1=false |
3408 | |
3409 | === added file 'deprecated/templates/tempest/tempest.conf.template' |
3410 | --- deprecated/templates/tempest/tempest.conf.template 1970-01-01 00:00:00 +0000 |
3411 | +++ deprecated/templates/tempest/tempest.conf.template 2018-03-19 16:01:39 +0000 |
3412 | @@ -0,0 +1,94 @@ |
3413 | +[DEFAULT] |
3414 | +lock_path=/tmp |
3415 | +[baremetal] |
3416 | +[boto] |
3417 | +ec2_url = __PROTO__://__NCC__:8773/services/Cloud |
3418 | +s3_url = __PROTO__://__NCC__:3333 |
3419 | +aws_access = __ACCESS__ |
3420 | +aws_secret = __SECRET__ |
3421 | +[cli] |
3422 | +enabled=true |
3423 | +timeout=60 |
3424 | +cli_dir=/usr/local/bin |
3425 | +[compute] |
3426 | +flavor_ref=7 |
3427 | +flavor_ref_alt=8 |
3428 | +image_ssh_user=cirros |
3429 | +image_alt_ssh_user=ubuntu |
3430 | +image_ref=__IMAGE_ID__ |
3431 | +image_ref_alt=__IMAGE_ALT_ID__ |
3432 | +allow_tenant_isolation = true |
3433 | +allow_tenant_reuse = true |
3434 | +min_compute_nodes = 3 |
3435 | +[compute-admin] |
3436 | +[compute-feature-enabled] |
3437 | +api_v3=false |
3438 | +console_output=false |
3439 | +resize=true |
3440 | +live_migration=true |
3441 | +block_migration_for_live_migration=true |
3442 | +[dashboard] |
3443 | +dashboard_url=http://__DASHBOARD__/horizon |
3444 | +login_url=http://__DASHBOARD__/horizon/auth/login/ |
3445 | +[data_processing] |
3446 | +[debug] |
3447 | +[identity] |
3448 | +uri=__PROTO__://__KEYSTONE__:5000/v2.0 |
3449 | +uri_v3=__PROTO__://__KEYSTONE__:5000/v3 |
3450 | +admin_username=admin |
3451 | +admin_tenant_name=admin |
3452 | +admin_password=openstack |
3453 | +admin_domain_name=Default |
3454 | +username = demo |
3455 | +password = pass |
3456 | +tenant_name = demo |
3457 | +alt_username = alt_demo |
3458 | +alt_password = secret |
3459 | +alt_tenant_name = alt_demo |
3460 | +admin_role = Admin |
3461 | +[identity-feature-enabled] |
3462 | +[image] |
3463 | +http_image = http://__SWIFT__:80/swift/v1/images/cirros-0.3.4-x86_64-uec.tar.gz |
3464 | +[image-feature-enabled] |
3465 | +[input-scenario] |
3466 | +[network] |
3467 | +tenant_network_cidr=__CIDR_PRIV__ |
3468 | +public_network_id=__EXT_NET__ |
3469 | +dns_servers=__NAMESERVER__ |
3470 | +tenant_networks_reachable = false |
3471 | +[network-feature-enabled] |
3472 | +ipv6=false |
3473 | +[object-storage] |
3474 | +accounts_quotas_available = True |
3475 | +container_quotas_available = True |
3476 | +[object-storage-feature-enabled] |
3477 | +[orchestration] |
3478 | +instance_type = m1.small |
3479 | +keypair_name = testkey |
3480 | +stack_owner_role = Admin |
3481 | +[scenario] |
3482 | +img_dir=/home/ubuntu/images |
3483 | +ssh_user=cirros |
3484 | +[service_available] |
3485 | +ceilometer = true |
3486 | +cinder = true |
3487 | +glance = true |
3488 | +heat = true |
3489 | +horizon = true |
3490 | +ironic = false |
3491 | +neutron = true |
3492 | +nova = true |
3493 | +sahara = false |
3494 | +swift = true |
3495 | +trove = false |
3496 | +zaqar = false |
3497 | +[stress] |
3498 | +max_instances = 4 |
3499 | +[telemetry] |
3500 | +[volume] |
3501 | +storage_protocol=ceph |
3502 | +backend1_name=cinder-ceph |
3503 | +catalog_type = volumev2 |
3504 | +[volume-feature-enabled] |
3505 | +backup=false |
3506 | +api_v1=false |
3507 | |
3508 | === added file 'deprecated/templates/tempest/tempest.conf.template.basic' |
3509 | --- deprecated/templates/tempest/tempest.conf.template.basic 1970-01-01 00:00:00 +0000 |
3510 | +++ deprecated/templates/tempest/tempest.conf.template.basic 2018-03-19 16:01:39 +0000 |
3511 | @@ -0,0 +1,90 @@ |
3512 | +[DEFAULT] |
3513 | +lock_path=/tmp |
3514 | +[baremetal] |
3515 | +[boto] |
3516 | +ec2_url = __PROTO__://__NCC__:8773/services/Cloud |
3517 | +s3_url = __PROTO__://__NCC__:3333 |
3518 | +aws_access = __ACCESS__ |
3519 | +aws_secret = __SECRET__ |
3520 | +[cli] |
3521 | +enabled=true |
3522 | +timeout=60 |
3523 | +cli_dir=/usr/local/bin |
3524 | +[compute] |
3525 | +flavor_ref=7 |
3526 | +flavor_ref_alt=8 |
3527 | +image_ssh_user=cirros |
3528 | +image_alt_ssh_user=ubuntu |
3529 | +image_ref=__IMAGE_ID__ |
3530 | +image_ref_alt=__IMAGE_ALT_ID__ |
3531 | +allow_tenant_isolation = true |
3532 | +allow_tenant_reuse = true |
3533 | +[compute-admin] |
3534 | +[compute-feature-enabled] |
3535 | +api_v3=false |
3536 | +console_output=false |
3537 | +resize=true |
3538 | +[dashboard] |
3539 | +dashboard_url=http://__DASHBOARD__/horizon |
3540 | +login_url=http://__DASHBOARD__/horizon/auth/login/ |
3541 | +[data_processing] |
3542 | +[debug] |
3543 | +[identity] |
3544 | +uri=__PROTO__://__KEYSTONE__:5000/v2.0 |
3545 | +uri_v3=__PROTO__://__KEYSTONE__:5000/v3 |
3546 | +admin_username=admin |
3547 | +admin_tenant_name=admin |
3548 | +admin_password=openstack |
3549 | +admin_domain_name=Default |
3550 | +username = demo |
3551 | +password = pass |
3552 | +tenant_name = demo |
3553 | +alt_username = alt_demo |
3554 | +alt_password = secret |
3555 | +alt_tenant_name = alt_demo |
3556 | +admin_role = Admin |
3557 | +[identity-feature-enabled] |
3558 | +[image] |
3559 | +http_image = http://__SWIFT__:80/swift/v1/images/cirros-0.3.4-x86_64-uec.tar.gz |
3560 | +[image-feature-enabled] |
3561 | +[input-scenario] |
3562 | +[network] |
3563 | +tenant_network_cidr=__CIDR_PRIV__ |
3564 | +public_network_id=__EXT_NET__ |
3565 | +dns_servers=__NAMESERVER__ |
3566 | +tenant_networks_reachable = false |
3567 | +[network-feature-enabled] |
3568 | +ipv6=false |
3569 | +[object-storage] |
3570 | +accounts_quotas_available = True |
3571 | +container_quotas_available = True |
3572 | +[object-storage-feature-enabled] |
3573 | +[orchestration] |
3574 | +instance_type = m1.small |
3575 | +keypair_name = testkey |
3576 | +[scenario] |
3577 | +img_dir=/home/ubuntu/images |
3578 | +ssh_user=cirros |
3579 | +[service_available] |
3580 | +ceilometer = false |
3581 | +cinder = true |
3582 | +glance = true |
3583 | +heat = false |
3584 | +horizon = true |
3585 | +ironic = false |
3586 | +neutron = true |
3587 | +nova = true |
3588 | +sahara = false |
3589 | +swift = false |
3590 | +trove = false |
3591 | +zaqar = false |
3592 | +[stress] |
3593 | +max_instances = 4 |
3594 | +[telemetry] |
3595 | +[volume] |
3596 | +storage_protocol=ceph |
3597 | +backend1_name=cinder-ceph |
3598 | +catalog_type = volumev2 |
3599 | +[volume-feature-enabled] |
3600 | +backup=false |
3601 | +api_v1=false |
3602 | |
3603 | === added file 'deprecated/templates/tempest/tempest.conf.template.lxd' |
3604 | --- deprecated/templates/tempest/tempest.conf.template.lxd 1970-01-01 00:00:00 +0000 |
3605 | +++ deprecated/templates/tempest/tempest.conf.template.lxd 2018-03-19 16:01:39 +0000 |
3606 | @@ -0,0 +1,86 @@ |
3607 | +[DEFAULT] |
3608 | +lock_path=/tmp |
3609 | +[baremetal] |
3610 | +[boto] |
3611 | +ec2_url = __PROTO__://__NCC__:8773/services/Cloud |
3612 | +s3_url = __PROTO__://__NCC__:3333 |
3613 | +aws_access = __ACCESS__ |
3614 | +aws_secret = __SECRET__ |
3615 | +[cli] |
3616 | +enabled=true |
3617 | +timeout=60 |
3618 | +cli_dir=/usr/local/bin |
3619 | +[compute] |
3620 | +flavor_ref=7 |
3621 | +flavor_ref_alt=8 |
3622 | +image_ssh_user=cirros |
3623 | +image_alt_ssh_user=ubuntu |
3624 | +image_ref=__IMAGE_ID__ |
3625 | +image_ref_alt=__IMAGE_ALT_ID__ |
3626 | +allow_tenant_isolation = true |
3627 | +allow_tenant_reuse = true |
3628 | +[compute-admin] |
3629 | +[compute-feature-enabled] |
3630 | +api_v3=false |
3631 | +console_output=true |
3632 | +resize=false |
3633 | +[dashboard] |
3634 | +dashboard_url=http://__DASHBOARD__/horizon |
3635 | +login_url=http://__DASHBOARD__/horizon/auth/login/ |
3636 | +[data_processing] |
3637 | +[debug] |
3638 | +[identity] |
3639 | +uri=__PROTO__://__KEYSTONE__:5000/v2.0 |
3640 | +uri_v3=__PROTO__://__KEYSTONE__:5000/v3 |
3641 | +admin_username=admin |
3642 | +admin_tenant_name=admin |
3643 | +admin_password=openstack |
3644 | +admin_domain_name=Default |
3645 | +username = demo |
3646 | +password = pass |
3647 | +tenant_name = demo |
3648 | +alt_username = alt_demo |
3649 | +alt_password = secret |
3650 | +alt_tenant_name = alt_demo |
3651 | +admin_role = Admin |
3652 | +[identity-feature-enabled] |
3653 | +[image] |
3654 | +http_image = http://__SWIFT__:80/swift/v1/images/cirros-0.3.4-x86_64-uec.tar.gz |
3655 | +[image-feature-enabled] |
3656 | +[input-scenario] |
3657 | +[network] |
3658 | +tenant_network_cidr=__CIDR_PRIV__ |
3659 | +public_network_id=__EXT_NET__ |
3660 | +dns_servers=__NAMESERVER__ |
3661 | +tenant_networks_reachable = false |
3662 | +[network-feature-enabled] |
3663 | +ipv6=false |
3664 | +[object-storage] |
3665 | +accounts_quotas_available = True |
3666 | +container_quotas_available = True |
3667 | +[object-storage-feature-enabled] |
3668 | +[orchestration] |
3669 | +instance_type = m1.small |
3670 | +keypair_name = testkey |
3671 | +[scenario] |
3672 | +img_dir=/home/ubuntu/images |
3673 | +ssh_user=cirros |
3674 | +[service_available] |
3675 | +ceilometer = false |
3676 | +cinder = false |
3677 | +glance = true |
3678 | +heat = false |
3679 | +horizon = true |
3680 | +ironic = false |
3681 | +neutron = true |
3682 | +nova = true |
3683 | +sahara = false |
3684 | +swift = false |
3685 | +trove = false |
3686 | +zaqar = false |
3687 | +[stress] |
3688 | +max_instances = 4 |
3689 | +[telemetry] |
3690 | +[volume] |
3691 | +[volume-feature-enabled] |
3692 | +api_v1=false |
3693 | |
3694 | === added file 'deprecated/templates/tempest/tempest.refstack.template.conf' |
3695 | --- deprecated/templates/tempest/tempest.refstack.template.conf 1970-01-01 00:00:00 +0000 |
3696 | +++ deprecated/templates/tempest/tempest.refstack.template.conf 2018-03-19 16:01:39 +0000 |
3697 | @@ -0,0 +1,102 @@ |
3698 | +# From openstack-charm-testing |
3699 | +[DEFAULT] |
3700 | +debug=false |
3701 | +use_syslog=false |
3702 | +lock_path=/tmp |
3703 | +[auth] |
3704 | +#use_dynamic_credentials = false |
3705 | +admin_username=admin |
3706 | +admin_password=openstack |
3707 | +admin_project_name=admin |
3708 | +admin_tenant_name=admin |
3709 | +admin_domain_name=Default |
3710 | +[baremetal] |
3711 | +[boto] |
3712 | +ec2_url = __PROTO__://__NCC__:8773/services/Cloud |
3713 | +s3_url = __PROTO__://__NCC__:3333 |
3714 | +aws_access = __ACCESS__ |
3715 | +aws_secret = __SECRET__ |
3716 | +[cli] |
3717 | +enabled=true |
3718 | +timeout=60 |
3719 | +cli_dir=/usr/local/bin |
3720 | +[compute] |
3721 | +flavor_ref=1 |
3722 | +flavor_ref_alt=2 |
3723 | +image_alt_ssh_user=cirros |
3724 | +image_ssh_password="cubswin:)" |
3725 | +image_ref=__IMAGE_ID__ |
3726 | +image_ref_alt=__IMAGE_ALT_ID__ |
3727 | +# allow_tenant_isolation = true |
3728 | +# allow_tenant_reuse = true |
3729 | +[compute-admin] |
3730 | +[compute-feature-enabled] |
3731 | +api_v3=false |
3732 | +console_output=false |
3733 | +resize=true |
3734 | +[dashboard] |
3735 | +dashboard_url=http://__DASHBOARD__/horizon |
3736 | +login_url=http://__DASHBOARD__/horizon/auth/login/ |
3737 | +[data_processing] |
3738 | +[debug] |
3739 | +[identity] |
3740 | +uri=__PROTO__://__KEYSTONE__:5000/v2.0 |
3741 | +uri_v3=__PROTO__://__KEYSTONE__:5000/v3 |
3742 | +username = demo |
3743 | +password = demo |
3744 | +tenant_name = demo |
3745 | +alt_username = alt_demo |
3746 | +alt_password = secret |
3747 | +alt_tenant_name = alt_demo |
3748 | +admin_role = Admin |
3749 | +[identity-feature-enabled] |
3750 | +[image] |
3751 | +http_image = http://__SWIFT__:80/swift/v1/images/cirros-0.3.4-x86_64-uec.tar.gz |
3752 | +[image-feature-enabled] |
3753 | +[input-scenario] |
3754 | +[network] |
3755 | +tenant_network_cidr=__CIDR_PRIV__ |
3756 | +public_network_id=__EXT_NET__ |
3757 | +dns_servers=__NAMESERVER__ |
3758 | +tenant_networks_reachable = false |
3759 | +[network-feature-enabled] |
3760 | +ipv6=false |
3761 | +[object-storage] |
3762 | +operator_role = Admin |
3763 | +# accounts_quotas_available = True |
3764 | +# container_quotas_available = True |
3765 | +[object-storage-feature-enabled] |
3766 | +[orchestration] |
3767 | +instance_type = m1.small |
3768 | +keypair_name = testkey |
3769 | +stack_owner_role = Admin |
3770 | +[scenario] |
3771 | +# img_dir=/home/ubuntu/images |
3772 | +ssh_user=cirros |
3773 | +[service_available] |
3774 | +ceilometer = true |
3775 | +cinder = true |
3776 | +glance = true |
3777 | +heat = true |
3778 | +horizon = true |
3779 | +ironic = false |
3780 | +neutron = true |
3781 | +nova = true |
3782 | +sahara = false |
3783 | +swift = true |
3784 | +trove = false |
3785 | +zaqar = false |
3786 | +[stress] |
3787 | +max_instances = 4 |
3788 | +[telemetry] |
3789 | +[volume] |
3790 | +storage_protocol=ceph |
3791 | +backend1_name=cinder-ceph |
3792 | +catalog_type = volumev2 |
3793 | +[volume-feature-enabled] |
3794 | +backup=false |
3795 | +[validation] |
3796 | +run_validation=true |
3797 | +image_ssh_user=cirros |
3798 | +[oslo_concurrency] |
3799 | +lock_path=/tmp |
3800 | |
3801 | === added directory 'deprecated/tools' |
3802 | === added directory 'deprecated/tools/deprecated' |
3803 | === added file 'deprecated/tools/deprecated/ppc64el-post-deploy-patches.sh' |
3804 | --- deprecated/tools/deprecated/ppc64el-post-deploy-patches.sh 1970-01-01 00:00:00 +0000 |
3805 | +++ deprecated/tools/deprecated/ppc64el-post-deploy-patches.sh 2018-03-19 16:01:39 +0000 |
3806 | @@ -0,0 +1,80 @@ |
3807 | +#!/bin/bash -e |
3808 | +# NOTE(beisner): Contains workarounds for dealing with in-flight bugs |
3809 | +# related to libvirt and nova-compute on ppc64el. |
3810 | + |
3811 | +echo " + Create patch and script files..." |
3812 | + |
3813 | +# numa cell memory: |
3814 | +# https://bugs.launchpad.net/ubuntu/+source/nova/+bug/1418187 |
3815 | +# https://review.openstack.org/#/c/160904/ |
3816 | +# https://github.com/openstack/nova/commit/291c1a1db1ab3ceccfac7a3c8312b6fdce3aaa84 |
3817 | +patch_numa="$(mktemp)" |
3818 | +cat > "$patch_numa" << "--EOF1" |
3819 | +--- config.py.org 2015-03-25 15:07:17.087064000 +0000 |
3820 | ++++ config.py 2015-03-25 15:07:22.963063966 +0000 |
3821 | +@@ -152,7 +152,7 @@ |
3822 | + **kwargs) |
3823 | + |
3824 | + self.id = None |
3825 | +- self.memory = None |
3826 | ++ self.memory = 0 |
3827 | + self.mempages = [] |
3828 | + self.cpus = [] |
3829 | +--EOF1 |
3830 | + |
3831 | +# nova-compute host pass-through No bug yet, need to resolve via the nova-compute charm |
3832 | +patch_passthrough="$(mktemp)" |
3833 | +cat > "$patch_passthrough" << "--EOF2" |
3834 | +--- /etc/nova/nova-compute.conf.dist 2015-02-06 14:03:04.274769382 +0000 |
3835 | ++++ /etc/nova/nova-compute.conf 2015-02-06 14:03:05.938798786 +0000 |
3836 | +@@ -2,3 +2,4 @@ |
3837 | + compute_driver=libvirt.LibvirtDriver |
3838 | + [libvirt] |
3839 | + virt_type=kvm |
3840 | ++cpu_mode=host-passthrough |
3841 | +--EOF2 |
3842 | + |
3843 | +# disable smt: https://bugs.launchpad.net/cloud-archive/+bug/1419842 |
3844 | +script_smt="$(mktemp)" |
3845 | +cat > "$script_smt" << "--EOF3" |
3846 | +#!/bin/sh |
3847 | +fail() { echo "FAIL:" "$@" 1>&2; exit 1; } |
3848 | + |
3849 | +echo "smt:" |
3850 | +out=$(LANG=C ppc64_cpu --smt 2>&1) |
3851 | +if echo "$out" | grep -qi "is on"; then |
3852 | + out=$(ppc64_cpu --smt=off 2>&1) || fail "set smt off: $out" |
3853 | + echo " disabled: $out" |
3854 | +else |
3855 | + echo " not on: $out" |
3856 | +fi |
3857 | +--EOF3 |
3858 | + |
3859 | +# apply changes to nova-compute unit |
3860 | +echo " + Copy files into n-c unit..." |
3861 | +juju scp $patch_numa nova-compute/0:patch_numa |
3862 | +juju scp $patch_passthrough nova-compute/0:patch_passthrough |
3863 | +juju scp $script_smt nova-compute/0:script_smt.sh |
3864 | + |
3865 | +echo " + Script 1 (disable smt)..." |
3866 | +juju ssh nova-compute/0 "\ |
3867 | + sudo chmod +x /home/ubuntu/script_smt.sh &&\ |
3868 | + ls -alh /home/ubuntu &&\ |
3869 | + sudo /home/ubuntu/script_smt.sh" |
3870 | + |
3871 | +echo " + Patch 1 (libvirt numa cell memory)..." |
3872 | +juju ssh nova-compute/0 "\ |
3873 | + sudo patch -bN /usr/lib/python2.7/dist-packages/nova/virt/libvirt/config.py < /home/ubuntu/patch_numa" |
3874 | + |
3875 | +echo " + Patch 2 (nova compute libvirt cpu passthrough)..." |
3876 | +juju ssh nova-compute/0 "\ |
3877 | + sudo patch -bN /etc/nova/nova-compute.conf < /home/ubuntu/patch_passthrough" |
3878 | + |
3879 | +echo " + Restart libvirt-bin and nova-compute services..." |
3880 | +juju ssh nova-compute/0 "\ |
3881 | + sudo service libvirt-bin restart &&\ |
3882 | + sudo service nova-compute restart" |
3883 | + |
3884 | +rm -fv $patch_numa |
3885 | +rm -fv $patch_passthrough |
3886 | +rm -fv $script_smt1 |
3887 | |
3888 | === added file 'deprecated/tools/flavor_default.sh' |
3889 | --- deprecated/tools/flavor_default.sh 1970-01-01 00:00:00 +0000 |
3890 | +++ deprecated/tools/flavor_default.sh 2018-03-19 16:01:39 +0000 |
3891 | @@ -0,0 +1,5 @@ |
3892 | +#!/bin/bash -ex |
3893 | +# Create/replace default flavors |
3894 | + |
3895 | +. ./profiles/common |
3896 | +create_default_flavors |
3897 | |
3898 | === added file 'deprecated/tools/flavor_shrink.sh' |
3899 | --- deprecated/tools/flavor_shrink.sh 1970-01-01 00:00:00 +0000 |
3900 | +++ deprecated/tools/flavor_shrink.sh 2018-03-19 16:01:39 +0000 |
3901 | @@ -0,0 +1,5 @@ |
3902 | +#!/bin/bash -ex |
3903 | +# Shrink flavors for higher-density testing |
3904 | + |
3905 | +. ./profiles/common |
3906 | +shrink_flavors |
3907 | |
3908 | === added file 'deprecated/tools/float_all.sh' |
3909 | --- deprecated/tools/float_all.sh 1970-01-01 00:00:00 +0000 |
3910 | +++ deprecated/tools/float_all.sh 2018-03-19 16:01:39 +0000 |
3911 | @@ -0,0 +1,39 @@ |
3912 | +#!/bin/bash -ex |
3913 | +# Give all instances a floating IP address. |
3914 | +# Requires >= Newton openstack client |
3915 | + |
3916 | +echo " + Floating all instances." |
3917 | + |
3918 | +function get_ip_f() { |
3919 | + # Get first unallocated floating IP |
3920 | + openstack floating ip list | awk '/None/ { print $4 }' | head -n 1 |
3921 | +} |
3922 | + |
3923 | +fip_count=$(openstack floating ip list | awk '/None/ { print $4 }' | wc -l) |
3924 | +instances=$(openstack server list | grep ACTIVE | grep -v '\,' | awk '{ print $2 }') |
3925 | +inst_count=$(echo $instances | wc -w) |
3926 | + |
3927 | +if [[ -z "$instances" ]]; then |
3928 | + set +x |
3929 | + echo " . It appears that no instance needs a floating IP." |
3930 | + exit 0 |
3931 | +fi |
3932 | + |
3933 | +# Create floating IPs if necessary. |
3934 | +if (( $fip_count >= $inst_count)); then |
3935 | + echo " . Already enough floating IPs." |
3936 | +else |
3937 | + fip_diff=$(( $inst_count - $fip_count )) |
3938 | + echo " + Creating $fip_diff more floating IPs." |
3939 | + for m in $(seq 1 $fip_diff); do |
3940 | + openstack floating ip create ext_net |
3941 | + done |
3942 | +fi |
3943 | + |
3944 | +# Allocate floating IPs to instances. |
3945 | +for instance in $instances; do |
3946 | + ip_f=$(get_ip_f) |
3947 | + echo " + Associating floating IP $ip_f to instance $instance." |
3948 | + openstack server add floating ip $instance $ip_f |
3949 | +done |
3950 | + |
3951 | |
3952 | === added file 'deprecated/tools/float_all_new.sh' |
3953 | --- deprecated/tools/float_all_new.sh 1970-01-01 00:00:00 +0000 |
3954 | +++ deprecated/tools/float_all_new.sh 2018-03-19 16:01:39 +0000 |
3955 | @@ -0,0 +1,44 @@ |
3956 | +#!/bin/bash -ex |
3957 | +# Give all instances a floating IP address. |
3958 | +# Requires >= Newton openstack client |
3959 | + |
3960 | +# Fix for bug: https://bugs.launchpad.net/python-openstackclient/+bug/1747721 |
3961 | +# --sfeole 2.22.2018 |
3962 | + |
3963 | + |
3964 | +echo " + Floating all instances." |
3965 | + |
3966 | +function get_ip_f() { |
3967 | + # Get first unallocated floating IP |
3968 | + openstack floating ip list | awk '/None/ { print $4 }' | head -n 1 |
3969 | +} |
3970 | + |
3971 | +fip_count=$(openstack floating ip list | awk '/None/ { print $4 }' | wc -l) |
3972 | +instances=$(openstack server list | grep ACTIVE | grep -v '\,' | awk '{ print $2 }') |
3973 | +inst_count=$(echo $instances | wc -w) |
3974 | + |
3975 | +if [[ -z "$instances" ]]; then |
3976 | + set +x |
3977 | + echo " . It appears that no instance needs a floating IP." |
3978 | + exit 0 |
3979 | +fi |
3980 | + |
3981 | +# Create floating IPs if necessary. |
3982 | +if (( $fip_count >= $inst_count)); then |
3983 | + echo " . Already enough floating IPs." |
3984 | +else |
3985 | + fip_diff=$(( $inst_count - $fip_count )) |
3986 | + echo " + Creating $fip_diff more floating IPs." |
3987 | + for m in $(seq 1 $fip_diff); do |
3988 | + openstack floating ip create ext_net |
3989 | + done |
3990 | +fi |
3991 | + |
3992 | +# Allocate floating IPs to instances. |
3993 | +for instance in $instances; do |
3994 | + ip_f=$(get_ip_f) |
3995 | + echo " + Associating floating IP $ip_f to instance $instance." |
3996 | + tenant_ip=$(openstack server list | grep $instance | awk -F'private=' '{ print $2 }' | awk '{ print $1 }') |
3997 | + tenant_ip_portid=$(openstack port list -c ID -c fixed_ips | grep $tenant_ip | awk '{ print $2 }') |
3998 | + openstack floating ip set --port $tenant_ip_portid $ip_f |
3999 | +done |
4000 | |
4001 | === added directory 'deprecated/tools/hardening' |
4002 | === added file 'deprecated/tools/hardening/run-apache-tests' |
4003 | --- deprecated/tools/hardening/run-apache-tests 1970-01-01 00:00:00 +0000 |
4004 | +++ deprecated/tools/hardening/run-apache-tests 2018-03-19 16:01:39 +0000 |
4005 | @@ -0,0 +1,15 @@ |
4006 | +#!/bin/bash -eu |
4007 | +UNIT_TO_TEST=$1 |
4008 | +TESTER_UNIT=${2:-hardening-apache-tests/0} |
4009 | +TARGET_IP=`juju-deployer -f ${UNIT_TO_TEST%/*}` |
4010 | +juju scp $TESTER_UNIT:/home/ubuntu/.ssh/id_rsa.pub /tmp/id_rsa.pub |
4011 | +juju scp /tmp/id_rsa.pub $UNIT_TO_TEST:/tmp/ |
4012 | +juju run --unit $UNIT_TO_TEST "\ |
4013 | + useradd -m -s /bin/bash -d /home/hiotest hiotest; \ |
4014 | + install -m 700 -o hiotest -d /home/hiotest/.ssh; \ |
4015 | + install -m 640 -o hiotest /tmp/id_rsa.pub /home/hiotest/.ssh/authorized_keys; \ |
4016 | + echo 'hiotest ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/90-hiotest-user; \ |
4017 | + sudo chmod 440 /etc/sudoers.d/90-hiotest-user;" |
4018 | + |
4019 | +# Running apache test |
4020 | +juju action do hardening-apache-tests/0 run-test test-name=serverspec:default target-ip=$TARGET_IP |
4021 | |
4022 | === added file 'deprecated/tools/hardening/run-mysql-tests' |
4023 | --- deprecated/tools/hardening/run-mysql-tests 1970-01-01 00:00:00 +0000 |
4024 | +++ deprecated/tools/hardening/run-mysql-tests 2018-03-19 16:01:39 +0000 |
4025 | @@ -0,0 +1,15 @@ |
4026 | +#!/bin/bash -eu |
4027 | +UNIT_TO_TEST=$1 |
4028 | +TESTER_UNIT=${2:-hardening-mysql-tests/0} |
4029 | +TARGET_IP=`juju-deployer -f ${UNIT_TO_TEST%/*}` |
4030 | +juju scp $TESTER_UNIT:/home/ubuntu/.ssh/id_rsa.pub /tmp/id_rsa.pub |
4031 | +juju scp /tmp/id_rsa.pub $UNIT_TO_TEST:/tmp/ |
4032 | +juju run --unit $UNIT_TO_TEST "\ |
4033 | + useradd -m -s /bin/bash -d /home/hiotest hiotest; \ |
4034 | + install -m 700 -o hiotest -d /home/hiotest/.ssh; \ |
4035 | + install -m 640 -o hiotest /tmp/id_rsa.pub /home/hiotest/.ssh/authorized_keys; \ |
4036 | + echo 'hiotest ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/90-hiotest-user; \ |
4037 | + sudo chmod 440 /etc/sudoers.d/90-hiotest-user;" |
4038 | + |
4039 | +# Running mysql test |
4040 | +juju action do hardening-mysql-tests/0 run-test target-ip=$TARGET_IP |
4041 | |
4042 | === added file 'deprecated/tools/hardening/run-os-tests' |
4043 | --- deprecated/tools/hardening/run-os-tests 1970-01-01 00:00:00 +0000 |
4044 | +++ deprecated/tools/hardening/run-os-tests 2018-03-19 16:01:39 +0000 |
4045 | @@ -0,0 +1,4 @@ |
4046 | +#!/bin/bash -eu |
4047 | + |
4048 | +# Running os test |
4049 | +juju action do hardening-os-tests/0 run-test test=default |
4050 | |
4051 | === added file 'deprecated/tools/hardening/run-ssh-tests' |
4052 | --- deprecated/tools/hardening/run-ssh-tests 1970-01-01 00:00:00 +0000 |
4053 | +++ deprecated/tools/hardening/run-ssh-tests 2018-03-19 16:01:39 +0000 |
4054 | @@ -0,0 +1,16 @@ |
4055 | +#!/bin/bash -eu |
4056 | +UNIT_TO_TEST=$1 |
4057 | +TESTER_UNIT=${2:-hardening-ssh-tests/0} |
4058 | +TARGET_IP=`juju-deployer -f ${UNIT_TO_TEST%/*}` |
4059 | +juju scp $TESTER_UNIT:/home/ubuntu/.ssh/id_rsa.pub /tmp/id_rsa.pub |
4060 | +juju scp /tmp/id_rsa.pub $UNIT_TO_TEST:/tmp/ |
4061 | +juju run --unit $UNIT_TO_TEST "\ |
4062 | + useradd -m -s /bin/bash -d /home/hiotest hiotest; \ |
4063 | + install -m 700 -o hiotest -d /home/hiotest/.ssh; \ |
4064 | + install -m 640 -o hiotest /tmp/id_rsa.pub /home/hiotest/.ssh/authorized_keys; \ |
4065 | + echo 'hiotest ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/90-hiotest-user; \ |
4066 | + sudo chmod 440 /etc/sudoers.d/90-hiotest-user;" |
4067 | + |
4068 | +# Running ssh test |
4069 | +juju action do hardening-ssh-tests/0 run-test test-name=default/inspec/ target-ip=$TARGET_IP |
4070 | + |
4071 | |
4072 | === added file 'deprecated/tools/images_amd64.sh' |
4073 | --- deprecated/tools/images_amd64.sh 1970-01-01 00:00:00 +0000 |
4074 | +++ deprecated/tools/images_amd64.sh 2018-03-19 16:01:39 +0000 |
4075 | @@ -0,0 +1,39 @@ |
4076 | +#!/bin/bash -ex |
4077 | +# Download ppc64el images and add to glance. |
4078 | + |
4079 | +# Presumes cirros is available in a swift bucket |
4080 | +[[ -z "$SWIFT_IP" ]] && export SWIFT_IP="10.245.161.162" |
4081 | + |
4082 | +# Download images if not already present |
4083 | +mkdir -vp ~/images |
4084 | +[ -f ~/images/xenial-server-cloudimg-amd64-disk1.img ] || { |
4085 | + wget -O ~/images/xenial-server-cloudimg-amd64-disk1.img http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img |
4086 | +} |
4087 | +[ -f ~/images/trusty-server-cloudimg-amd64-disk1.img ] || { |
4088 | + wget -O ~/images/trusty-server-cloudimg-amd64-disk1.img http://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img |
4089 | +} |
4090 | +[ -f ~/images/precise-server-cloudimg-amd64-disk1.img ] || { |
4091 | + wget -O ~/images/precise-server-cloudimg-amd64-disk1.img http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.img |
4092 | +} |
4093 | +[ -f ~/images/cirros-0.3.4-x86_64-disk.img ] || { |
4094 | + wget -O ~/images/cirros-0.3.4-x86_64-disk.img http://$SWIFT_IP:80/swift/v1/images/cirros-0.3.4-x86_64-disk.img |
4095 | +} |
4096 | +[ -f ~/images/cirros-0.3.4-x86_64-uec.tar.gz ] || { |
4097 | + wget -O ~/images/cirros-0.3.4-x86_64-uec.tar.gz http://$SWIFT_IP:80/swift/v1/images/cirros-0.3.4-x86_64-uec.tar.gz |
4098 | + (cd ~/images && tar -xzf cirros-0.3.4-x86_64-uec.tar.gz) |
4099 | +} |
4100 | + |
4101 | +# Upload glance images to overcloud |
4102 | +glance --os-image-api-version 1 image-create --name="xenial" --is-public=true --progress \ |
4103 | + --container-format=bare --disk-format=qcow2 < ~/images/xenial-server-cloudimg-amd64-disk1.img |
4104 | +glance --os-image-api-version 1 image-create --name="trusty" --is-public=true --progress \ |
4105 | + --container-format=bare --disk-format=qcow2 < ~/images/trusty-server-cloudimg-amd64-disk1.img |
4106 | +glance --os-image-api-version 1 image-create --name="precise" --is-public=true --progress \ |
4107 | + --container-format=bare --disk-format=qcow2 < ~/images/precise-server-cloudimg-amd64-disk1.img |
4108 | +glance --os-image-api-version 1 image-create --name="cirros" --is-public=true --progress \ |
4109 | + --container-format=bare --disk-format=qcow2 < ~/images/cirros-0.3.4-x86_64-disk.img |
4110 | + |
4111 | +glance --os-image-api-version 1 image-update --property architecture=x86_64 xenial |
4112 | +glance --os-image-api-version 1 image-update --property architecture=x86_64 trusty |
4113 | +glance --os-image-api-version 1 image-update --property architecture=x86_64 precise |
4114 | +glance --os-image-api-version 1 image-update --property architecture=x86_64 cirros |
4115 | |
4116 | === added file 'deprecated/tools/images_arm64.sh' |
4117 | --- deprecated/tools/images_arm64.sh 1970-01-01 00:00:00 +0000 |
4118 | +++ deprecated/tools/images_arm64.sh 2018-03-19 16:01:39 +0000 |
4119 | @@ -0,0 +1,13 @@ |
4120 | +#!/bin/bash -ex |
4121 | +# Download images and add to glance. |
4122 | + |
4123 | +: ${TEST_IMAGE_URL_XENIAL:="http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-arm64-uefi1.img"} |
4124 | + |
4125 | +mkdir -vp ~/images |
4126 | +[ -f ~/images/xenial-server-cloudimg-arm64-uefi1.img ] || { |
4127 | + wget -O ~/images/xenial-server-cloudimg-arm64-uefi1.img $TEST_IMAGE_URL_XENIAL |
4128 | +} |
4129 | + |
4130 | +# Create glance image |
4131 | +openstack image show xenial-uefi ||\ |
4132 | + openstack image create --container-format bare --disk-format qcow2 --property hw_firmware_type=uefi --file ~/images/xenial-server-cloudimg-arm64-uefi1.img xenial-uefi |
4133 | |
4134 | === added file 'deprecated/tools/images_lxd.sh' |
4135 | --- deprecated/tools/images_lxd.sh 1970-01-01 00:00:00 +0000 |
4136 | +++ deprecated/tools/images_lxd.sh 2018-03-19 16:01:39 +0000 |
4137 | @@ -0,0 +1,19 @@ |
4138 | +#!/bin/bash -ex |
4139 | +# Download LXD images and add to glance |
4140 | + |
4141 | +mkdir -vp ~/images |
4142 | +[ -f ~/images/trusty-server-cloudimg-amd64-root.tar.xz ] || { |
4143 | + wget -O ~/images/trusty-server-cloudimg-amd64-root.tar.xz http://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-root.tar.xz |
4144 | +} |
4145 | +[ -f ~/images/xenial-server-cloudimg-amd64-root.tar.xz ] || { |
4146 | + wget -O ~/images/xenial-server-cloudimg-amd64-root.tar.xz http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-root.tar.xz |
4147 | +} |
4148 | + |
4149 | +# Upload glance images to overcloud |
4150 | +glance --os-image-api-version 1 image-create --name="trusty-lxd" --is-public=true --progress \ |
4151 | + --container-format=bare --disk-format=raw --property hypervisor_type=lxc \ |
4152 | + --property architecture=x86_64 < ~/images/trusty-server-cloudimg-amd64-root.tar.xz |
4153 | + |
4154 | +glance --os-image-api-version 1 image-create --name="xenial-lxd" --is-public=true --progress \ |
4155 | + --container-format=bare --disk-format=raw --property hypervisor_type=lxc \ |
4156 | + --property architecture=x86_64 < ~/images/xenial-server-cloudimg-amd64-root.tar.xz |
4157 | |
4158 | === added file 'deprecated/tools/images_lxd_convert.sh' |
4159 | --- deprecated/tools/images_lxd_convert.sh 1970-01-01 00:00:00 +0000 |
4160 | +++ deprecated/tools/images_lxd_convert.sh 2018-03-19 16:01:39 +0000 |
4161 | @@ -0,0 +1,221 @@ |
4162 | +#!/bin/bash |
4163 | + |
4164 | +VERBOSITY=0 |
4165 | +TEMP_D="" |
4166 | +UC_PREP="/usr/share/lxc/hooks/ubuntu-cloud-prep" |
4167 | + |
4168 | +error() { echo "$@" 1>&2; } |
4169 | +fail() { [ $# -eq 0 ] || error "$@"; exit 1; } |
4170 | + |
4171 | +Usage() { |
4172 | + cat <<EOF |
4173 | +Usage: ${0##*/} [ options ] input-tar output-tarball |
4174 | + |
4175 | + convert cloud-image-root.tar.gz into lxd compatible format, |
4176 | + and stuff nocloud seed in on the way. |
4177 | + |
4178 | + options: |
4179 | + -h|--help this help |
4180 | + -v|--verbose |
4181 | + --metadata file to include as metadata.yaml |
4182 | + -u|--userdata U user-data for seed. |
4183 | + -S|--auth-key P pubkey to insert |
4184 | + -C|--cloud C do not seed instance |
4185 | + --zip Z compress with tar option Z (default 'J') |
4186 | +EOF |
4187 | +} |
4188 | + |
4189 | +bad_Usage() { Usage 1>&2; [ $# -eq 0 ] || error "$@"; return 1; } |
4190 | +cleanup() { |
4191 | + [ -z "${TEMP_D}" -o ! -d "${TEMP_D}" ] || rm -Rf "${TEMP_D}" |
4192 | +} |
4193 | + |
4194 | +debug() { |
4195 | + local level=${1}; shift; |
4196 | + [ "${level}" -gt "${VERBOSITY}" ] && return |
4197 | + error "${@}" |
4198 | +} |
4199 | + |
4200 | +default_mdyaml() { |
4201 | +cat <<EOF |
4202 | +architecture: "$(uname -m)" |
4203 | +creation_date: $(date "+%s") |
4204 | +name: "$1" |
4205 | +properties: |
4206 | + description: Ubuntu 14.04 LTS Intel 64bit |
4207 | + os: Ubuntu |
4208 | +EOF |
4209 | +} |
4210 | + |
4211 | +default_userdata() { |
4212 | + cat <<EOF |
4213 | +#cloud-config |
4214 | +manage_etc_hosts: localhost |
4215 | +password: ubuntu |
4216 | +chpasswd: { expire: false; } |
4217 | + |
4218 | +# pollinate hangs without socket timeout if it can't reach network |
4219 | +random_seed: |
4220 | + command: null |
4221 | + |
4222 | +# growpart and resize_rootfs dont make sense, and should dtrt, but be sure. |
4223 | +growpart: |
4224 | + mode: off |
4225 | +resize_rootfs: null |
4226 | +EOF |
4227 | +} |
4228 | + |
4229 | +main() { |
4230 | + local short_opts="Chu:S:v" |
4231 | + local long_opts="auth-key:,cloud,help,metadata:,userdata:,verbose,zip:" |
4232 | + local getopt_out="" |
4233 | + local pt="" |
4234 | + getopt_out=$(getopt --name "${0##*/}" \ |
4235 | + --options "${short_opts}" --long "${long_opts}" -- "$@") && |
4236 | + eval set -- "${getopt_out}" || |
4237 | + { bad_Usage; return; } |
4238 | + |
4239 | + local cur="" next="" input="" output="" authkey="" z_opt="J" vflags="" |
4240 | + local ud="" |
4241 | + pt=( ) |
4242 | + |
4243 | + while [ $# -ne 0 ]; do |
4244 | + cur="$1"; next="$2"; |
4245 | + case "$cur" in |
4246 | + -h|--help) Usage ; exit 0;; |
4247 | + -v|--verbose) VERBOSITY=$((${VERBOSITY}+1)) |
4248 | + vflags="${vflags}v";; |
4249 | + --metadata) mdyaml="$next";; |
4250 | + -u|--userdata) |
4251 | + ud="$next"; pt[${#pt[@]}]="--userdata=$next"; shift;; |
4252 | + -S|--auth-key) pt[${#pt[@]}]="--auth-key=$next"; shift;; |
4253 | + -C|--cloud) pt[${#pt[@]}]="--cloud=$next"; shift;; |
4254 | + --zip) z_opt=$next; shift;; |
4255 | + --) shift; break;; |
4256 | + esac |
4257 | + shift; |
4258 | + done |
4259 | + [ -z "$vflags" ] || vflags="-$vflags" |
4260 | + |
4261 | + [ $# -ne 0 ] || { bad_Usage "must provide arguments"; return; } |
4262 | + [ $# -eq 2 ] || |
4263 | + { bad_Usage "confused by args. got $# expected 2 [$*]"; return; } |
4264 | + |
4265 | + input=$1 |
4266 | + output=$2 |
4267 | + |
4268 | + TEMP_D=$(mktemp -d "${TMPDIR:-/tmp}/${0##*/}.XXXXXX") || |
4269 | + fail "failed to make tempdir" |
4270 | + trap cleanup EXIT |
4271 | + |
4272 | + [ "$(id -u)" = "0" ] || { error "you're not root"; return 1; } |
4273 | + command -v "$UC_PREP" >/dev/null 2>&1 || |
4274 | + { error "$UC_PREP not available"; return 1; } |
4275 | + [ "$input" = "-" -o -f "$input" ] || |
4276 | + { error "$input: not a file or -"; return 1; } |
4277 | + [ -n "$output" ] || { error "$output: not a file or -"; return 1; } |
4278 | + [ -z "$mdyaml" -o -f "$mdyaml" ] || |
4279 | + { error "$mdyaml: not a file"; return 1; } |
4280 | + |
4281 | + if [ -z "$ud" ]; then |
4282 | + ud="$TEMP_D/user-data" |
4283 | + default_userdata > "$ud" |
4284 | + pt[${#pt[@]}]="--userdata=$ud" |
4285 | + fi |
4286 | + |
4287 | + local extract create ucprep |
4288 | + mkdir -p "${TEMP_D}/rootfs" || { error "failed to make rootfs"; return 1; } |
4289 | + extract=( |
4290 | + tar -C "${TEMP_D}/rootfs" |
4291 | + --xattrs "--xattrs-include=*" |
4292 | + --anchored "--exclude=dev/*" |
4293 | + --numeric-owner -Sxpf "$input" ) |
4294 | + |
4295 | + create=( |
4296 | + tar -C "${TEMP_D}/" |
4297 | + --xattrs "--xattrs-include=*" |
4298 | + -cp${z_opt}f "$output" metadata.yaml rootfs ) |
4299 | + create_pxz=( |
4300 | + bash -c 'set -o pipefail; |
4301 | + tar -C "$1" --xattrs "--xattrs-include=*" \ |
4302 | + -cpf - metadata.yaml rootfs | |
4303 | + pxz -cv - > "$2"' -- "${TEMP_D}" "$output" |
4304 | + ) |
4305 | + command -v pxz >/dev/null 2>&1 && create=( "${create_pxz[@]}" ) |
4306 | + |
4307 | + ucprep=( |
4308 | + "${UC_PREP}" $vflags "${pt[@]}" "${TEMP_D}/rootfs" ) |
4309 | + |
4310 | + if [ -n "$metadata" ]; then |
4311 | + cp "$metadata" "${TEMP_D}/metadata.yaml" || |
4312 | + { error "failed cp '$metadata' metadata.yaml"; return 1; } |
4313 | + debug 1 "copied metadata.yaml from '$metadata'" |
4314 | + else |
4315 | + local tname="" |
4316 | + tname=${input%.gz}; |
4317 | + tname=${tname%.tar}; |
4318 | + [ "$input" = "-" ] && tname="unknown name" |
4319 | + default_mdyaml "$tname" > "${TEMP_D}/metadata.yaml" || |
4320 | + { error "failed write metadata.yaml"; return 1; } |
4321 | + debug 1 "wrote questionable metadata.yaml file" |
4322 | + fi |
4323 | + |
4324 | + debug 1 "extracting tar to tempdir" |
4325 | + debug 2 "cmd: ${extract[*]}" |
4326 | + "${extract[@]}" || { error "failed extraction"; return 1; } |
4327 | + |
4328 | + debug 1 "hacking/fixing for lxd" |
4329 | + debug 2 "gettys just dont make sense, and upstart restarts" |
4330 | + ( cd "${TEMP_D}/rootfs" && |
4331 | + for f in etc/init/tty*.conf; do |
4332 | + [ -f "$f" ] || continue |
4333 | + #[ "${f##*/}" = "tty1.conf" ] || continue |
4334 | + o=${f%.conf}.override |
4335 | + debug 3 "manual > $o" |
4336 | + echo "manual" > "$o" |
4337 | + done |
4338 | + ) |
4339 | + |
4340 | + debug 2 "update-motd runs from mounted-run.conf on mounted tmpfs" |
4341 | + # this is too late to fix via bootcmd |
4342 | + nox=" |
4343 | + etc/update-motd.d/90-updates-available |
4344 | + etc/update-motd.d/91-release-upgrade |
4345 | + usr/lib/ubuntu-release-upgrader/release-upgrade-motd |
4346 | + usr/lib/update-notifier/apt-check |
4347 | + usr/lib/update-notifier/update-motd-updates-available |
4348 | + " |
4349 | + ( cd "${TEMP_D}/rootfs" && |
4350 | + for f in $nox; do [ -e "$f" ] && |
4351 | + debug 3 "chmod -x '$f'" && chmod -x "$f"; done ) |
4352 | + |
4353 | + debug 2 "pollinate is heavy, disabling" |
4354 | + ( cd "${TEMP_D}/rootfs" |
4355 | + f=etc/init/pollinate.conf |
4356 | + c=${f%.conf}.override |
4357 | + [ -f "$f" ] && debug 3 "manual > $c" && echo "manual" > "$c" |
4358 | + ) |
4359 | + |
4360 | + debug 2 "mot.d is annoying here (LP: #1426023)" |
4361 | + # this affects ssh in time. as mot.d is run on ssh login |
4362 | + ( cd "$TEMP_D/rootfs" && |
4363 | + sudo sed -i '/^[^#].*pam_motd/s/^/#/' etc/pam.d/sshd ) |
4364 | + |
4365 | + debug 2 "disabling irqbalance (LP: #1454273)" |
4366 | + ( cd "$TEMP_D/rootfs" && |
4367 | + f=etc/init/irqbalance.conf |
4368 | + c=${f%.conf}.override |
4369 | + [ -f "$f" ] && debug 3 "manual > $c" && echo "manual" > "$c" ) |
4370 | + |
4371 | + debug 1 "running ucprep: ${ucprep[*]}" |
4372 | + "${ucprep[@]}" || |
4373 | + { error "failed to run ${ucprep[*]}"; return 1; } |
4374 | + |
4375 | + debug 1 "writing tar to $out: ${create[*]}" |
4376 | + debug 2 "cmd: ${create[*]}" |
4377 | + "${create[@]}" || fail "failed writing tar to $out" |
4378 | + debug 1 "finished [${SECONDS}]" |
4379 | +} |
4380 | + |
4381 | +main "$@" |
4382 | +# vi: ts=4 noexpandtab |
4383 | |
4384 | === added file 'deprecated/tools/images_ppc64el.sh' |
4385 | --- deprecated/tools/images_ppc64el.sh 1970-01-01 00:00:00 +0000 |
4386 | +++ deprecated/tools/images_ppc64el.sh 2018-03-19 16:01:39 +0000 |
4387 | @@ -0,0 +1,24 @@ |
4388 | +#!/bin/bash -ex |
4389 | +# Download ppc64el images and add to glance. |
4390 | + |
4391 | +# Download images if not already present |
4392 | +: ${TEST_IMAGE_URL_XENIAL:="http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-ppc64el-disk1.img"} |
4393 | +: ${TEST_IMAGE2_URL_XENIAL:="http://download.cirros-cloud.net/daily/20150923/cirros-d150923-ppc64le-disk.img"} |
4394 | + |
4395 | +mkdir -p ~/images |
4396 | +[ -f ~/images/xenial-server-cloudimg-ppc64el-disk1.img ] || { |
4397 | + wget -O ~/images/xenial-server-cloudimg-ppc64el-disk1.img $TEST_IMAGE_URL_XENIAL |
4398 | +} |
4399 | +[ -f ~/images/cirros-d150923-ppc64le-disk.img ] || { |
4400 | + wget -O ~/images/cirros-d150923-ppc64le-disk.img $TEST_IMAGE2_URL_XENIAL |
4401 | +} |
4402 | + |
4403 | +# Upload glance images to overcloud |
4404 | +glance --os-image-api-version 1 image-create --name="xenial-ppc64el" --is-public=true --progress \ |
4405 | + --container-format=bare --disk-format=qcow2 < ~/images/xenial-server-cloudimg-ppc64el-disk1.img |
4406 | +glance --os-image-api-version 1 image-create --name="cirros-ppc64el" --is-public=true --progress \ |
4407 | + --container-format=bare --disk-format=qcow2 < ~/images/cirros-d150923-ppc64le-disk.img |
4408 | + |
4409 | +# Set image architecture properties |
4410 | +glance --os-image-api-version 1 image-update --property architecture=ppc64 xenial-ppc64el |
4411 | +glance --os-image-api-version 1 image-update --property architecture=ppc64 cirros-ppc64el |
4412 | |
4413 | === added file 'deprecated/tools/inject_kernel_ppa.sh' |
4414 | --- deprecated/tools/inject_kernel_ppa.sh 1970-01-01 00:00:00 +0000 |
4415 | +++ deprecated/tools/inject_kernel_ppa.sh 2018-03-19 16:01:39 +0000 |
4416 | @@ -0,0 +1,24 @@ |
4417 | +#!/bin/sh |
4418 | + |
4419 | +p_ppa=$1 |
4420 | +p_hwe=$2 |
4421 | +if [ -z "$p_ppa" ]; then |
4422 | + echo "Inject kernel via PPA" |
4423 | + echo "Usage: $0 <public PPA> <hwe series>" |
4424 | + echo "Ex: $0 ppa:canonical-kernel-team/ppa" |
4425 | + echo " $0 ppa:canonical-kernel-team/ppa lts-vivid" |
4426 | + exit 1 |
4427 | +fi |
4428 | + |
4429 | +juju run --all " |
4430 | + # if not in a container inject kernel |
4431 | + if ! cat /proc/1/cgroup | grep -q lxc; then |
4432 | + sudo apt-add-repository $p_ppa -y |
4433 | + sudo apt-get update -yq |
4434 | + if [ -n "$p_hwe" ]; then |
4435 | + sudo apt-get install -yq linux-generic-$p_hwe |
4436 | + fi |
4437 | + sudo apt-get dist-upgrade -yq |
4438 | + sudo reboot |
4439 | + fi |
4440 | +" |
4441 | |
4442 | === added file 'deprecated/tools/install_rally.sh' |
4443 | --- deprecated/tools/install_rally.sh 1970-01-01 00:00:00 +0000 |
4444 | +++ deprecated/tools/install_rally.sh 2018-03-19 16:01:39 +0000 |
4445 | @@ -0,0 +1,45 @@ |
4446 | +#!/bin/bash |
4447 | +# Install and configure rally |
4448 | + |
4449 | +#set -ex |
4450 | + |
4451 | +if [ -z $1 ]; then |
4452 | + image="cirros" |
4453 | +else |
4454 | + image=$1 |
4455 | +fi |
4456 | + |
4457 | +source novarc admin admin |
4458 | +# Gather vars for tempest template |
4459 | +image_name=$(glance image-list | grep $image | awk '{ print $4 }') |
4460 | + |
4461 | +# Git rally, place the rendered rally template |
4462 | +[ -d rally ] || git clone https://github.com/openstack/rally |
4463 | +[ -d rally_scenarios ] || mkdir -p rally_scenarios |
4464 | + |
4465 | +# Install rally |
4466 | +rally/install_rally.sh -y -d ~/rally |
4467 | + |
4468 | +# Insert the image to use |
4469 | +for i in templates/rally/*.yaml; do |
4470 | + file=`echo $i | sed s:^templates/rally/::` |
4471 | + sed -e s:__IMAGE__:$image_name:g $i > rally_scenarios/$file |
4472 | +done |
4473 | + |
4474 | +# Installing rally database |
4475 | +source ~/rally/bin/activate |
4476 | +rally-manage db recreate |
4477 | + |
4478 | +# Creating environment |
4479 | +rally deployment create --fromenv --name=existing |
4480 | + |
4481 | + |
4482 | +echo |
4483 | +echo "Finished installing rally" |
4484 | +echo |
4485 | +echo "To run a task run the following command (for example): " |
4486 | +echo "source ~/rally/bin/activate" |
4487 | +echo "rally task start rally_scenarios/boot.yaml" |
4488 | + |
4489 | + |
4490 | + |
4491 | |
4492 | === added file 'deprecated/tools/instance_delete_all.sh' |
4493 | --- deprecated/tools/instance_delete_all.sh 1970-01-01 00:00:00 +0000 |
4494 | +++ deprecated/tools/instance_delete_all.sh 2018-03-19 16:01:39 +0000 |
4495 | @@ -0,0 +1,11 @@ |
4496 | +#!/bin/bash -ex |
4497 | +if [[ -z "$WORKSPACE" ]]; then |
4498 | + set +x |
4499 | + echo -e "\n/!\ This script will delete all nova instances it can find, which is dangerous. It is intended |
4500 | + to be used from Jenkins test automation. If you really wish to use it, set a WORKSPACE env var |
4501 | + to allow it to run." |
4502 | + exit 1 |
4503 | +fi |
4504 | + |
4505 | +for i in $(openstack server list | awk '/=/{ print $2 }');do openstack server delete $i --wait; done |
4506 | + |
4507 | |
4508 | === added file 'deprecated/tools/instance_flavor_show.sh' |
4509 | --- deprecated/tools/instance_flavor_show.sh 1970-01-01 00:00:00 +0000 |
4510 | +++ deprecated/tools/instance_flavor_show.sh 2018-03-19 16:01:39 +0000 |
4511 | @@ -0,0 +1,8 @@ |
4512 | +#!/bin/bash -e |
4513 | + |
4514 | +openstack flavor list |
4515 | + |
4516 | +for i in $(openstack server list | grep = | awk '{ print $2 }'); do |
4517 | + hv="$(openstack server show $i | grep flavor | awk '{ print $4 }'; )" |
4518 | + echo "${i} ${hv}" |
4519 | +done |
4520 | |
4521 | === added file 'deprecated/tools/instance_hypervisor_show.sh' |
4522 | --- deprecated/tools/instance_hypervisor_show.sh 1970-01-01 00:00:00 +0000 |
4523 | +++ deprecated/tools/instance_hypervisor_show.sh 2018-03-19 16:01:39 +0000 |
4524 | @@ -0,0 +1,8 @@ |
4525 | +#!/bin/bash |
4526 | + |
4527 | +echo " + Attempting to show hypervisor for each instance (admin required)." |
4528 | + |
4529 | +for i in $(nova list | grep = | awk '{ print $2 }'); do |
4530 | + hv="$(nova show $i | grep hyper | awk '{ print $4 }'; )" |
4531 | + echo "${i} ${hv}" |
4532 | +done |
4533 | |
4534 | === added file 'deprecated/tools/instance_launch.sh' |
4535 | --- deprecated/tools/instance_launch.sh 1970-01-01 00:00:00 +0000 |
4536 | +++ deprecated/tools/instance_launch.sh 2018-03-19 16:01:39 +0000 |
4537 | @@ -0,0 +1,37 @@ |
4538 | +#!/bin/bash -ex |
4539 | +# Launch N quantity of XYZ instances |
4540 | +# Presumes glance images exist and have been imported using the |
4541 | +# accompanying configure script. |
4542 | + |
4543 | +instance_qty=$1 |
4544 | +image_name=$2 |
4545 | +if [ -z "$instance_qty" ] || [ -z "$image_name" ]; then |
4546 | + set +x |
4547 | + echo "Launches N quantity of XYZ instances. |
4548 | +Usage: <this script> <qty of instances> <glance image name> |
4549 | + ex: ./instance_launch.sh 10 xenial-ppc64el |
4550 | + Cirros images will use m1.cirros flavor. |
4551 | + All others will use m1.small flavor." |
4552 | + exit 1 |
4553 | +fi |
4554 | + |
4555 | +# Key nova and ~/testkey.pem |
4556 | +openstack keypair show testkey ||\ |
4557 | + { openstack keypair create testkey > ~/testkey.pem; chmod 600 ~/testkey.pem; } |
4558 | + |
4559 | +# Grab private network ID |
4560 | +net_id=$(openstack network list | awk '/private/ {print $2}') |
4561 | + |
4562 | +# Determining flavor to use |
4563 | +if [[ "${image_name}" == *cirros* ]]; then |
4564 | + flavor="m1.cirros" |
4565 | +else |
4566 | + flavor="m1.small" |
4567 | +fi |
4568 | + |
4569 | +# Create instances |
4570 | +server_name="${image_name}-$(date +'%H%M%S')" |
4571 | +openstack server create --wait --image $image_name --flavor $flavor --key-name testkey --nic net-id=${net_id} --min $instance_qty --max $instance_qty $server_name |
4572 | + |
4573 | +# Hint: use ssh -i ~/testkey.pem ubuntu@<ip> to access new instances (may also need a floating IP). |
4574 | + |
4575 | |
4576 | === added file 'deprecated/tools/instance_ssh_ping_all.sh' |
4577 | --- deprecated/tools/instance_ssh_ping_all.sh 1970-01-01 00:00:00 +0000 |
4578 | +++ deprecated/tools/instance_ssh_ping_all.sh 2018-03-19 16:01:39 +0000 |
4579 | @@ -0,0 +1,6 @@ |
4580 | +#!/bin/bash -ex |
4581 | +# Known good with client: openstack 3.7.0 |
4582 | +for i in $(openstack server list | awk '/ACTIVE/{ print $9 }'); do |
4583 | + nc -vzw 2 $i 22 |
4584 | + ping -c 2 $i |
4585 | +done |
4586 | |
4587 | === added file 'deprecated/tools/instance_start_all.sh' |
4588 | --- deprecated/tools/instance_start_all.sh 1970-01-01 00:00:00 +0000 |
4589 | +++ deprecated/tools/instance_start_all.sh 2018-03-19 16:01:39 +0000 |
4590 | @@ -0,0 +1,2 @@ |
4591 | +#!/bin/bash -ex |
4592 | +for i in $(openstack server list | awk '/SHUTOFF/{ print $2 }');do openstack server start $i; done |
4593 | |
4594 | === added file 'deprecated/tools/instance_stop_all.sh' |
4595 | --- deprecated/tools/instance_stop_all.sh 1970-01-01 00:00:00 +0000 |
4596 | +++ deprecated/tools/instance_stop_all.sh 2018-03-19 16:01:39 +0000 |
4597 | @@ -0,0 +1,3 @@ |
4598 | +#!/bin/bash -ex |
4599 | +for i in $(openstack server list | awk '/ACTIVE/{ print $2 }');do openstack server stop $i; done |
4600 | + |
4601 | |
4602 | === added file 'deprecated/tools/instance_wait.sh' |
4603 | --- deprecated/tools/instance_wait.sh 1970-01-01 00:00:00 +0000 |
4604 | +++ deprecated/tools/instance_wait.sh 2018-03-19 16:01:39 +0000 |
4605 | @@ -0,0 +1,29 @@ |
4606 | +#!/bin/bash -ex |
4607 | +# Wait for all instances to become ACTIVE |
4608 | +# |
4609 | +# Even when using --wait with `openstack server create`, that command |
4610 | +# has been shown to return 0 before instances are in an ACTIVE state. |
4611 | +# |
4612 | +# One should still use --wait when creating instances in automation |
4613 | +# but additional wait logic is necessary to avoid races (as of Ocata). |
4614 | + |
4615 | +retry_command_expect_fail() { |
4616 | + command=$@ |
4617 | + i=0 |
4618 | + attempts=3 |
4619 | + while [ $i -lt $attempts ]; do |
4620 | + $command || break |
4621 | + let "i+=1" |
4622 | + sleep 10 |
4623 | + done |
4624 | + if [ $i -ge $attempts ]; then |
4625 | + exit 1 |
4626 | + fi |
4627 | +} |
4628 | + |
4629 | + |
4630 | +show_non_active_instances() { |
4631 | + openstack server list | grep -v ACTIVE | grep private |
4632 | +} |
4633 | + |
4634 | +retry_command_expect_fail show_non_active_instances |
4635 | |
4636 | === added directory 'deprecated/tools/ipv6' |
4637 | === added file 'deprecated/tools/ipv6/check-cluster-status.sh' |
4638 | --- deprecated/tools/ipv6/check-cluster-status.sh 1970-01-01 00:00:00 +0000 |
4639 | +++ deprecated/tools/ipv6/check-cluster-status.sh 2018-03-19 16:01:39 +0000 |
4640 | @@ -0,0 +1,25 @@ |
4641 | +#!/bin/bash -eu |
4642 | +services=( |
4643 | + openstack-dashboard |
4644 | + keystone |
4645 | + glance |
4646 | + nova-cloud-controller |
4647 | + neutron-api |
4648 | + cinder |
4649 | + swift-proxy |
4650 | + mysql |
4651 | +) |
4652 | + |
4653 | +echo "== PERCONA ==" |
4654 | +juju ssh mysql/0 "mysql -uroot -pubuntu -e \"show status like 'wsrep_cluster%';\"" |
4655 | + |
4656 | +echo "== CEPH ==" |
4657 | +juju ssh ceph/0 sudo ceph -s |
4658 | + |
4659 | +echo "== HACLUSTERS ==" |
4660 | +echo "Checking ${services[@]}" |
4661 | +for service in ${services[@]}; do |
4662 | + echo -e "\n== $service ==" |
4663 | + juju ssh $service/0 sudo crm status 2>/dev/null |
4664 | +done |
4665 | + |
4666 | |
4667 | === added file 'deprecated/tools/ipv6/check-db-grants.sh' |
4668 | --- deprecated/tools/ipv6/check-db-grants.sh 1970-01-01 00:00:00 +0000 |
4669 | +++ deprecated/tools/ipv6/check-db-grants.sh 2018-03-19 16:01:39 +0000 |
4670 | @@ -0,0 +1,17 @@ |
4671 | +#!/bin/bash -eu |
4672 | +cat <<- EOF | xargs -l juju ssh mysql/0 |
4673 | +set -x; dpkg -S percona-toolkit &>/dev/null && exit 0; \\ |
4674 | +echo "Installing percona-toolkit"; \\ |
4675 | +sudo apt-get update; \\ |
4676 | +sudo apt-get install percona-toolkit --yes 2>/dev/null |
4677 | +EOF |
4678 | + |
4679 | +services=( cinder neutron glance nova keystone ) |
4680 | +if (($# > 0)); then services=( $1 ); fi |
4681 | + |
4682 | +echo "Checking grants" |
4683 | +for db in ${services[@]}; do |
4684 | + echo -e "\n== $db ==" |
4685 | + juju ssh mysql/0 pt-show-grants -uroot -pubuntu 2>/dev/null| grep $db |
4686 | + ((${#services[@]} > 1)) && echo "" && read -p "Next? [ENTER] " |
4687 | +done |
4688 | |
4689 | === added file 'deprecated/tools/ipv6/novarc' |
4690 | --- deprecated/tools/ipv6/novarc 1970-01-01 00:00:00 +0000 |
4691 | +++ deprecated/tools/ipv6/novarc 2018-03-19 16:01:39 +0000 |
4692 | @@ -0,0 +1,6 @@ |
4693 | +#!/bin/bash |
4694 | +export OS_USERNAME=admin |
4695 | +export OS_PASSWORD=openstack |
4696 | +export OS_TENANT_NAME=admin |
4697 | +export OS_REGION_NAME=RegionOne |
4698 | +export OS_AUTH_URL=${OS_AUTH_PROTOCOL:-http}://[2001:db8:0:1:d0cf:528c:23eb:5001]:5000/v2.0 |
4699 | |
4700 | === added file 'deprecated/tools/ipv6/post-deploy-test.sh' |
4701 | --- deprecated/tools/ipv6/post-deploy-test.sh 1970-01-01 00:00:00 +0000 |
4702 | +++ deprecated/tools/ipv6/post-deploy-test.sh 2018-03-19 16:01:39 +0000 |
4703 | @@ -0,0 +1,19 @@ |
4704 | +#!/bin/bash -eu |
4705 | +source novarc |
4706 | +./configure.sh |
4707 | +set -x |
4708 | +keystone endpoint-list |
4709 | +glance image-list |
4710 | +nova list |
4711 | +cinder create --display-name vol1 1 |
4712 | +cinder list |
4713 | +swift stat |
4714 | + |
4715 | +neutron net-create private-vlan --provider:network_type vlan --provider:physical_network physnet1 --provider:segmentation_id 1000 |
4716 | +neutron subnet-create --ip-version 6 private 2003:1803:ffe3:fa11::/64 private-vlan-subnet |
4717 | +nova boot --image cirros --flavor 1 --nic net-id=`neutron net-list| grep private| awk '{print $2}'` vm0 --poll |
4718 | +nova list |
4719 | +nova volume-attach `nova list| grep vm0| awk '{print $2}'` `cinder list| grep vol1| awk '{print $2}'` |
4720 | +cinder list |
4721 | + |
4722 | + |
4723 | |
4724 | === added file 'deprecated/tools/keystone_ca.sh' |
4725 | --- deprecated/tools/keystone_ca.sh 1970-01-01 00:00:00 +0000 |
4726 | +++ deprecated/tools/keystone_ca.sh 2018-03-19 16:01:39 +0000 |
4727 | @@ -0,0 +1,9 @@ |
4728 | +#!/bin/bash |
4729 | + |
4730 | +set -ex |
4731 | + |
4732 | +juju scp keystone/0:/usr/local/share/ca-certificates/keystone_juju_ca_cert.crt . |
4733 | + |
4734 | +sudo mkdir -p /usr/local/share/ca-certificates |
4735 | +sudo cp keystone_juju_ca_cert.crt /usr/local/share/ca-certificates |
4736 | +sudo update-ca-certificates --fresh |
4737 | |
4738 | === added file 'deprecated/tools/quota_high.sh' |
4739 | --- deprecated/tools/quota_high.sh 1970-01-01 00:00:00 +0000 |
4740 | +++ deprecated/tools/quota_high.sh 2018-03-19 16:01:39 +0000 |
4741 | @@ -0,0 +1,25 @@ |
4742 | +#!/bin/bash -ex |
4743 | +# Set quotas to a high level for admin tenant for testing. |
4744 | + |
4745 | +TENANT_ID="$(openstack project show admin | awk '/ id /{ print $4 }')" |
4746 | + |
4747 | +openstack quota set\ |
4748 | + --instances 300\ |
4749 | + --cores 1200\ |
4750 | + --ram 2048000\ |
4751 | + --routers 300 \ |
4752 | + --ports 300\ |
4753 | + --networks 300\ |
4754 | + --subnetpools 300\ |
4755 | + --floating-ips 300\ |
4756 | + --fixed-ips 300 \ |
4757 | + --secgroups 300\ |
4758 | + --secgroup-rules 300\ |
4759 | + --key-pairs 300\ |
4760 | + admin |
4761 | + |
4762 | +juju set nova-cloud-controller ram-allocation-ratio=100 &> /dev/null || |
4763 | + juju config nova-cloud-controller ram-allocation-ratio=100 &> /dev/null |
4764 | + |
4765 | +juju set nova-cloud-controller cpu-allocation-ratio=100 &> /dev/null || |
4766 | + juju config nova-cloud-controller cpu-allocation-ratio=100 &> /dev/null |
4767 | |
4768 | === added file 'deprecated/tools/quota_million.sh' |
4769 | --- deprecated/tools/quota_million.sh 1970-01-01 00:00:00 +0000 |
4770 | +++ deprecated/tools/quota_million.sh 2018-03-19 16:01:39 +0000 |
4771 | @@ -0,0 +1,25 @@ |
4772 | +#!/bin/bash -ex |
4773 | +# Set quotas to a ridiculous level for admin tenant for testing. |
4774 | + |
4775 | +TENANT_ID="$(openstack project show admin | awk '/ id /{ print $4 }')" |
4776 | + |
4777 | +openstack quota set\ |
4778 | + --instances 999999\ |
4779 | + --cores 999999\ |
4780 | + --ram 9999999\ |
4781 | + --routers 999999 \ |
4782 | + --ports 999999\ |
4783 | + --networks 999999\ |
4784 | + --subnetpools 999999\ |
4785 | + --floating-ips 999999\ |
4786 | + --fixed-ips 999999 \ |
4787 | + --secgroups 999999\ |
4788 | + --secgroup-rules 999999\ |
4789 | + --key-pairs 999999\ |
4790 | + admin |
4791 | + |
4792 | +juju set nova-cloud-controller ram-allocation-ratio=999999 &> /dev/null || |
4793 | + juju config nova-cloud-controller ram-allocation-ratio=999999 &> /dev/null |
4794 | + |
4795 | +juju set nova-cloud-controller cpu-allocation-ratio=999999 &> /dev/null || |
4796 | + juju config nova-cloud-controller cpu-allocation-ratio=999999 &> /dev/null |
4797 | |
4798 | === added file 'deprecated/tools/sec_groups.sh' |
4799 | --- deprecated/tools/sec_groups.sh 1970-01-01 00:00:00 +0000 |
4800 | +++ deprecated/tools/sec_groups.sh 2018-03-19 16:01:39 +0000 |
4801 | @@ -0,0 +1,8 @@ |
4802 | +#!/bin/bash -ex |
4803 | +# Add sec groups for basic access |
4804 | +secgroup=${1:-`openstack security group list --project admin| grep default| awk '{print $2}'`} |
4805 | +for port in 22 53 80 443; do |
4806 | + openstack security group rule create $secgroup --protocol tcp --remote-ip 0.0.0.0/0 --dst-port $port --project admin ||: |
4807 | +done |
4808 | + |
4809 | +openstack security group rule create $secgroup --protocol icmp --remote-ip 0.0.0.0/0 --project admin ||: |
4810 | |
4811 | === added file 'deprecated/tox.ini' |
4812 | --- deprecated/tox.ini 1970-01-01 00:00:00 +0000 |
4813 | +++ deprecated/tox.ini 2018-03-19 16:01:39 +0000 |
4814 | @@ -0,0 +1,35 @@ |
4815 | +[tox] |
4816 | +envlist = openstack-client |
4817 | +skipsdist = True |
4818 | + |
4819 | +[testenv] |
4820 | +setenv = VIRTUAL_ENV={envdir} |
4821 | + PYTHONHASHSEED=0 |
4822 | +passenv = HOME TERM |
4823 | +basepython = python2.7 |
4824 | +deps = -r{toxinidir}/requirements.txt |
4825 | +install_command = |
4826 | + pip install --allow-unverified python-apt {opts} {packages} |
4827 | + |
4828 | +[testenv:openstack-client] |
4829 | +commands = openstack --version |
4830 | + |
4831 | +[testenv:configure] |
4832 | +commands = ./configure default |
4833 | + |
4834 | +[testenv:configure-arm64] |
4835 | +commands = ./configure arm64 |
4836 | + |
4837 | +[testenv:configure-dellstack] |
4838 | +commands = ./configure dellstack |
4839 | + |
4840 | +[testenv:configure-lxd] |
4841 | +commands = ./configure lxd |
4842 | + |
4843 | +[testenv:configure-multihv] |
4844 | +commands = ./configure multihv |
4845 | + |
4846 | +[testenv:configure-ppc64el] |
4847 | +commands = ./configure ppc64el |
4848 | + |
4849 | + |
4850 | |
4851 | === added file 'deprecated/tune-and-launch' |
4852 | --- deprecated/tune-and-launch 1970-01-01 00:00:00 +0000 |
4853 | +++ deprecated/tune-and-launch 2018-03-19 16:01:39 +0000 |
4854 | @@ -0,0 +1,9 @@ |
4855 | +#!/bin/bash |
4856 | +# A common combo of post-deployment routines in test environments |
4857 | +. novarc |
4858 | +./tools/flavor_shrink.sh |
4859 | +./tools/quota_million.sh |
4860 | +./tools/sec_groups.sh |
4861 | +./tools/instance_launch.sh 3 xenial |
4862 | +./tools/float_all.sh |
4863 | +openstack server list |
4864 | |
4865 | === removed symlink 'next.yaml' |
4866 | === target was u'bundles/sparse/next.yaml' |
4867 | === removed file 'novarc' |
4868 | --- novarc 2018-02-21 18:00:01 +0000 |
4869 | +++ novarc 1970-01-01 00:00:00 +0000 |
4870 | @@ -1,11 +0,0 @@ |
4871 | -_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
4872 | -for param in $_OS_PARAMS; do |
4873 | - unset $param |
4874 | -done |
4875 | -unset _OS_PARAMS |
4876 | -export OS_USERNAME=admin |
4877 | -export OS_PASSWORD=openstack |
4878 | -export OS_TENANT_NAME=admin |
4879 | -export OS_REGION_NAME=RegionOne |
4880 | -export OS_AUTH_URL=${OS_AUTH_PROTOCOL:-http}://`juju-deployer -f keystone`:5000/v2.0 |
4881 | -export OS_AUTH_TYPE=password |
4882 | |
4883 | === removed file 'novarc_unset_all' |
4884 | --- novarc_unset_all 2016-04-06 20:30:36 +0000 |
4885 | +++ novarc_unset_all 1970-01-01 00:00:00 +0000 |
4886 | @@ -1,5 +0,0 @@ |
4887 | -_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
4888 | -for param in $_OS_PARAMS; do |
4889 | - unset $param |
4890 | -done |
4891 | -unset _OS_PARAMS |
4892 | |
4893 | === removed file 'novarcv3_domain' |
4894 | --- novarcv3_domain 2018-02-21 18:00:01 +0000 |
4895 | +++ novarcv3_domain 1970-01-01 00:00:00 +0000 |
4896 | @@ -1,16 +0,0 @@ |
4897 | -_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
4898 | -for param in $_OS_PARAMS; do |
4899 | - unset $param |
4900 | -done |
4901 | -unset _OS_PARAMS |
4902 | -export OS_AUTH_URL=${OS_AUTH_PROTOCOL:-http}://`juju-deployer -f keystone`:5000/v3 |
4903 | -export OS_USERNAME=admin |
4904 | -export OS_PASSWORD=openstack |
4905 | -export OS_REGION_NAME=RegionOne |
4906 | -export OS_DOMAIN_NAME=admin_domain |
4907 | -export OS_USER_DOMAIN_NAME=admin_domain |
4908 | -export OS_IDENTITY_API_VERSION=3 |
4909 | -# Swift needs this: |
4910 | -export OS_AUTH_VERSION=3 |
4911 | -# Gnocchi needs this: |
4912 | -export OS_AUTH_TYPE=password |
4913 | |
4914 | === removed file 'novarcv3_project' |
4915 | --- novarcv3_project 2018-02-21 18:00:01 +0000 |
4916 | +++ novarcv3_project 1970-01-01 00:00:00 +0000 |
4917 | @@ -1,17 +0,0 @@ |
4918 | -_OS_PARAMS=$(env | awk 'BEGIN {FS="="} /^OS_/ {print $1;}' | paste -sd ' ') |
4919 | -for param in $_OS_PARAMS; do |
4920 | - unset $param |
4921 | -done |
4922 | -unset _OS_PARAMS |
4923 | -export OS_AUTH_URL=${OS_AUTH_PROTOCOL:-http}://`juju-deployer -f keystone`:5000/v3 |
4924 | -export OS_USERNAME=admin |
4925 | -export OS_PASSWORD=openstack |
4926 | -export OS_USER_DOMAIN_NAME=admin_domain |
4927 | -export OS_PROJECT_DOMAIN_NAME=admin_domain |
4928 | -export OS_PROJECT_NAME=admin |
4929 | -export OS_REGION_NAME=RegionOne |
4930 | -export OS_IDENTITY_API_VERSION=3 |
4931 | -# Swift needs this: |
4932 | -export OS_AUTH_VERSION=3 |
4933 | -# Gnocchi needs this |
4934 | -export OS_AUTH_TYPE=password |
4935 | |
4936 | === removed directory 'profiles' |
4937 | === removed file 'profiles/arm64' |
4938 | --- profiles/arm64 2017-09-08 19:24:02 +0000 |
4939 | +++ profiles/arm64 1970-01-01 00:00:00 +0000 |
4940 | @@ -1,39 +0,0 @@ |
4941 | -#!/bin/bash -ex |
4942 | -# An experimental configuration script for configuring a ppc64el OpenStack test cloud. |
4943 | -# Useful in manual deployment testing. |
4944 | - |
4945 | -. ./profiles/common |
4946 | - |
4947 | -[[ -z "$GATEWAY" ]] && export GATEWAY="10.245.168.1" |
4948 | -[[ -z "$CIDR_EXT" ]] && export CIDR_EXT="10.245.168.0/21" |
4949 | -[[ -z "$FIP_RANGE" ]] && export FIP_RANGE="10.245.172.0:10.245.172.255" |
4950 | -[[ -z "$NAMESERVER" ]] && export NAMESERVER="10.245.168.6" |
4951 | -[[ -z "$CIDR_PRIV" ]] && export CIDR_PRIV="172.16.0.0/22" |
4952 | - |
4953 | -export BARE_METAL="True" |
4954 | - |
4955 | -# Accept network type as first parameter, assume gre if unspecified |
4956 | -net_type=${1:-"gre"} |
4957 | - |
4958 | -# Configure neutron networking on overcloud |
4959 | -source novarc |
4960 | -./bin/neutron-ext-net --network-type flat -g $GATEWAY -c $CIDR_EXT -f $FIP_RANGE ext_net |
4961 | -./bin/neutron-tenant-net --network-type $net_type -t admin -r provider-router -N $NAMESERVER private $CIDR_PRIV |
4962 | - |
4963 | -juju_config_neutron_mtu |
4964 | -create_tempest_users |
4965 | -create_tempest_flavors |
4966 | -create_default_flavors |
4967 | - |
4968 | -# Install monitoring, probing and troubleshooting tools on all units |
4969 | -juju run --all "sudo apt-get install htop atop nload iptraf nmap multitail iperf pastebinit stress sysstat -y" |
4970 | - |
4971 | -# Load images into glance |
4972 | -tools/images_arm64.sh |
4973 | - |
4974 | -# Set security groups and rules |
4975 | -tools/sec_groups.sh |
4976 | - |
4977 | -# Tune for higher-density testing |
4978 | -tools/flavor_shrink.sh |
4979 | -tools/quota_million.sh |
4980 | |
4981 | === removed file 'profiles/common' |
4982 | --- profiles/common 2017-05-06 18:30:26 +0000 |
4983 | +++ profiles/common 1970-01-01 00:00:00 +0000 |
4984 | @@ -1,85 +0,0 @@ |
4985 | -#!/bin/bash |
4986 | - |
4987 | -function upload_image { |
4988 | - src=$1 |
4989 | - image_name=$2 |
4990 | - image_file=$3 |
4991 | - image_format=${4:-"qcow2"} |
4992 | - image_hv_type=${5:-"qemu"} |
4993 | - image_arch=${6:-"x86_64"} |
4994 | - |
4995 | - case "$src" in |
4996 | - swift) http_root="http://$SWIFT_IP:80/swift/v1/images";; |
4997 | - cloudimages) http_root="http://cloud-images.ubuntu.com/${image_name}/current";; |
4998 | - esac |
4999 | - |
5000 | - mkdir -vp ~/images |
The diff has been truncated for viewing.
One small nit, but for clarity, can you name the directory "deprecated" ? Thank you.