Commit Graph

78 Commits

Author SHA1 Message Date
Derek Higgins 4c3c83029c Remove support for legacy rh1
We no longer need to support the legacy rh1 system, rh1 is now
ovb.

Change-Id: I8c8de7c829d5c94f4d18a56618c7ab737855655b
2016-09-19 14:25:29 +01:00
Derek Higgins 212b8f191e Remove stray ";" from purge env command
This shouldn't be here, copy/paste error.

Change-Id: I961909ff8dd6b608ccc7a121fb3c7196da577531
2016-06-13 10:59:24 +01:00
Derek Higgins f3cfc3d93f Add a new purge_env command to Test env hosts
Running this at the end of each CI job will ensure
disk space used by the CI tests is released. Also creating a new
qcow image for overcloud nodes for each test run should ensure that
this disks internal sparseness is restored.

Change-Id: I0bef4f0a6fa334f894d69616829196fe8fc4d768
2016-06-08 15:13:49 +01:00
Derek Higgins 7769929e77 Update 60-setup-testenvs to match what we use
This updates the entire file to match exactly what is being used on
the testenvs. In particular the number of test envs is hard coded to
3 and some logic is added to use the recently installed SSD's.

Change-Id: Ie91a9615181193183a06eae5e40997faacf4f4e5
2016-05-18 09:49:13 +01:00
Derek Higgins 3e7049bad9 Reset the ovs nightly
Gracefully stop each testenv on a TE host then reset the ovs
config. The purpose here is to work around a ovs bug that is
now more prominent in our testenvs since increasing the number
of nicsa per testenv.

Change-Id: Ib437c0bf4c5eb716e812e654c8f223ced8564a2f
2016-03-14 17:27:51 +00:00
Derek Higgins b5848ce7bb Add new ironic virsh commands
As of I62a5b292891a44e3f4b82edd90b6e4402c50fabf,
Ironic has updated the commands they run over ssh we need to
now allow both the old and the new commands.

Change-Id: I389d9e9ad3ad571e148b730654a7f8e6fb644bbd
2016-03-14 11:19:10 +00:00
Derek Higgins 4016d9d598 Switch TE host VM to amd64
Switch to testing a 64 bit arch, also bump RAM to 4G to allow for the
extra usage.

Change-Id: I1478241094876071f97b7a519f9e2f8d3b4f931b
2015-02-02 17:07:18 +00:00
Jenkins 60ee97a799 Merge "Calculate CIDR for test envs rather than assuming" 2014-10-13 10:41:39 +00:00
Robert Collins eea2688c26 Calculate CIDR for test envs rather than assuming
Since we're now using non-/24 this matters :).

Change-Id: I636a96b4514d0ca826f61f1c158800cd4b214401
2014-10-13 08:17:52 +11:00
Lucas Alvares Gomes 53b005500a Update virsh ssh commands to support setting the locale
The patch https://review.openstack.org/#/c/124061 in Ironic is changing
the SSH commands to force the commands to use their default language
(whatever language the strings in the application was written in, for
virsh that's english) for output by passing LC_ALL=C as part of the
command line. This is needed because as we do some pattern matchings
with the output of some commands and if the system is configured with
a non-english locale setting the matching is going to fail.

This patch makes the locale variable optional when checking the virsh
commands so it would work with the old and new commands.

Change-Id: I7b6bf0c93c88888231d260036c765228e57b848f
2014-09-25 15:29:51 +01:00
Chris Krelle c8a9d16366 Update virsh dumpxml ssh command
This patch adds a new regex for an updated virsh dumpxml ssh command.
Once Nova BM is removed we will put up patch that removes the current
dumpxml regex, but until then we will need both.

Change-Id: I10b49751d55946b8977eed3998612362c740b104
2014-09-11 10:46:37 -07:00
Jenkins 76b274d05a Merge "Allow new virsh commands from ironic" 2014-08-14 00:37:20 +00:00
Jenkins 8d287d6634 Merge "Explicitly set NODE_ARCH to i386" 2014-08-14 00:37:05 +00:00
Jenkins f0c689ad25 Merge "Source set-os-type" 2014-08-12 18:57:18 +00:00
Derek Higgins 80c920b646 Allow new virsh commands from ironic
As of I36b704e4d9daa902393b3f79405bf288d9ee0872 ironic has added
2 new commands to the ssh driver.

Change-Id: I5d67cb28ffa6fc1a50f043993428daf3efc22f1e
2014-07-29 23:51:29 +01:00
Dan Prince b78ca24eb6 Configure NTP on the testenv-workers
Update the testenv-element to require the NTP element.

Also updates the testenv-workers.yaml heat template to
configure an NTP server for the testenv-worker nodes.

Change-Id: I5f3b4e5aa1bb8d4065fe27c883a5d89a1862dc0b
2014-07-23 14:46:30 -04:00
Jenkins 688822d41c Merge "Use an ovs port on the overcloud test network" 2014-07-23 13:17:34 +00:00
Jenkins 315a9edb7a Merge "export HOSTIP" 2014-07-16 08:37:43 +00:00
Derek Higgins c61606a975 Use an ovs port on the overcloud test network
Use an ovs internal port on the overcloud network, the dummy device
doesn't work.

Change-Id: I721c7a77ed1a1eeea644d973292caa6f055931cf
2014-07-11 16:01:15 +01:00
Derek Higgins 24a8406e67 export HOSTIP
devtest_testenv.sh is now expecting this to be set, the default
works on local devtest runs but now CI.

Change-Id: I0180e40bce2d96e9119403332970af96006afe5b
2014-07-11 15:58:06 +01:00
Derek Higgins 7c84e2f939 Explicitly set NODE_ARCH to i386
This should cause us to require slightly less memory
on CI instances.

Change-Id: I9e6474867aafb6d50605833f5e92b9ef229d4d8b
2014-07-11 13:16:37 +01:00
Derek Higgins c78acd2871 Source set-os-type
Some of the incubator scripts are expecting
TRIPLEO_OS_FAMILY to be set.

Change-Id: I6fbd295bbc93b85c92e8e5d4dfd439e3d6db768b
2014-07-11 12:45:23 +01:00
Derek Higgins ea509dd33a Remove extra comma in json
The JSON doesn't parse with it.

Change-Id: I423c77f4436cd50784a6ebd51c77850bf218a45d
2014-07-11 12:44:13 +01:00
Jenkins 1640e536eb Merge "Remove support for legacy testenv-client" 2014-07-09 20:17:12 +00:00
Steve Kowalik 7dd5f4f02a Use -s for devtest_testenv
devtest_testenv has grown a -s option for injecting the private ssh
key in the JSON datafile, we should make use of it.

Change-Id: Ie9c6220b8245f1af8987141172b58d7c9cbd4b3d
2014-06-26 10:00:29 +10:00
Jenkins 4cb4be077c Merge "Create a dummy device on TE hosts" 2014-06-09 12:53:06 +00:00
Derek Higgins 89b9f2dc31 Remove support for legacy testenv-client
Our testenv's no longer need to support this.

Change-Id: I86d3635d38d8eb0afd3df4ca0912c72f11fda0cd
2014-06-03 15:37:40 +01:00
Jenkins 57f4e9028b Merge "Add bin/testenv-ctl stop_jobs/start_jobs script" 2014-06-03 11:21:33 +00:00
Jenkins 47ec2a992c Merge "testenv-worker: use signals to enable/disable jobs" 2014-06-03 11:18:17 +00:00
Jenkins 31740b5dab Merge "Use devtest_testenv default when building CI TE" 2014-05-27 17:39:00 +00:00
Jenkins 01ba0c98f5 Merge "Install psmisc on TE hosts" 2014-05-27 08:56:11 +00:00
Dan Prince 487a35beba Add bin/testenv-ctl stop_jobs/start_jobs script
Adds a new bin/testenv-ctl script to help stop/start job processing
for all test-env workers on a node.

Running 'testenv-ctl stop_jobs' sends a SIGUSR2 to all testenv-worker
processes so that they stop processing any new jobs (current
jobs will finish).

Running 'testenv-ctl start_jobs' sends a SIGUSR1 to all testenv-worker
processes so that they resume job processing again.

This should allow us to upgrade testenv-worker nodes for the CI
overcloud without disrupting the job queue.

Change-Id: I8535e13c2fdd1a305feaa1ce0bfe3ef3eb5db685
2014-05-15 10:28:49 -04:00
Dan Prince 75a4942cc5 testenv-worker: use signals to enable/disable jobs
Updates the testenv-worker script to handle signals so that
we can stop/start the processing of new jobs without
killing the existing testenv-worker process. This is
important in that it will give us better control of
testenv-worker node upgrades without disrupting the
job queue.

The following signal handling is now supported:

 USR1: Enable job processing.
 USR2: Disable job processing. The current job will finish processing
       and no new jobs will be accepted. The testenv-worker process
       will however stay running.
 INT:  Exit after any currently running job finishes. The testenv-worker
       process must be restarted after this signal is received in
       order to process new jobs.

Change-Id: I465f34393627f6b6fd6584824531d01287b523d7
2014-05-15 10:25:10 -04:00
Derek Higgins 48c51e9783 Use devtest_testenv default when building CI TE
Resources allocated to our CI testenvs should match the current
default that developers are using. So use the same defaults when
building a testenv. This will result in the testenv defining nodes
with 2G of memory instead of 4G.

Also export NODE_ARCH, without doing this it would be ignored.

Change-Id: I1ee2a9ce661822cfca24c407607fa82f479efc16
2014-05-07 00:38:22 +01:00
Derek Higgins 902b5aba8e Create a dummy device on TE hosts
To avoid registering the same MAC address on 2 seperate DHCP servers,
we create a dummy device to be used on the overcloud test network. This
isn't persisted across reboots but TE Hosts don't survive reboots anyway
so the overall situation is getting better.

Change-Id: I34df201a4beced1bb53ef2c1a3e19888eb989ed2
Related-Bug: #1272803
2014-05-06 20:15:17 +01:00
Derek Higgins b4acfdfb03 Install psmisc on TE hosts
We're using killall in 60-setup-testenvs so lets have it installed.

Change-Id: I080768e54e2638b3217432f22531419cbfdc24bf
2014-05-01 10:41:39 +01:00
Derek Higgins 0f231647b3 Move the testenv json file to /etc
We should keep this somewhere a little more permanent, so it doesn't vanish.

Change-Id: Ia650fdd4b94e5d2b5986cf3d854e22302a28da2b
2014-04-22 09:34:44 +01:00
Derek Higgins d428c5d210 Fix up ensure-test-env
this was changed recently to use devtest_testenv.sh
e600f9ebfd
but needs a couple of things fixed up to work.

Change-Id: I8ff159bc7ffe793261bda4c6b1a1801dc51f43bf
2014-04-22 09:33:56 +01:00
Steve Kowalik e600f9ebfd ensure-test-env now uses devtest_testenv
Remove the code duplication by having the testenv-worker element
leverage devtest_testenv to create the nodes and set up the network
and so on.

Change-Id: I40435cb41df3787ee9792dddeb48f77123985c07
2014-04-07 13:20:49 +10:00
Chris Krelle 532d56eac6 Allow ironic to use ssh commands
Due to minor differences in the ssh command syntax between Nova-Baremetal
and Ironic, the regex on allowed commands failed for ironic. This patch
modifies the regex to allow for these differences.

Change-Id: I160e4202952b7551b855dc7d91784d6a184cb0ed
Closes-Bug: #1298731
2014-03-28 14:38:00 -07:00
Derek Higgins e1280a5d42 Add hostname of Test env to json
This will help us better identify which test environments are giving
trouble.

Change-Id: I1023b82905e35466c59066fc2b38aaee410d3664
2014-03-24 09:52:40 +00:00
Jenkins 214827488e Merge "Change how the JSON is updated for readability" 2014-03-24 03:47:32 +00:00
Jenkins c29a687d60 Merge "We should use baremetal." 2014-03-21 19:47:38 +00:00
Robert Collins f12cfcb27a We should use baremetal.
Otherwise we get dib deprecation warnings and complaints, or worse,
use a prior kernel :).

Change-Id: Ic9d5f22c1aa50e94ab3e26bb3b3ca29bc7972546
2014-03-20 14:15:45 +13:00
Jenkins 370f4f7f15 Merge "Install jq on Test Environment hosts" 2014-03-19 12:12:14 +00:00
Jenkins 8044d03987 Merge "Allow the testenv client to dictate the worker timeout" 2014-03-19 12:11:05 +00:00
Steve Kowalik 77e7b2d8d1 Change how the JSON is updated for readability
A massive one-liner to add a bunch more variables to the JSON
datafile isn't fun any more. Shift to using a heredoc which should
make the options we are setting more readable, as well as easier to
change in future.

Change-Id: I3cf779326d682f0afe5f5399e37a8b34e62ac54c
2014-03-19 15:46:12 +11:00
Steve Kowalik 0e1b8e43cd Switch to nodes list in the JSON
Rather than using a list of MAC addresses to identify nodes, shift to
the same behavior that devtest_testenv is using, which stores the
details of the nodes directly in the JSON.

Change-Id: I6551fdebfcc2224822f5e972d5757e1ce559ad11
2014-03-14 16:01:41 +11:00
Derek Higgins 083e15f566 Install jq on Test Environment hosts
create-nodes now uses jq.

Change-Id: I82b352a59b347ab0da12ad91435ca59c3920224e
2014-03-11 16:18:40 +00:00
Derek Higgins 4e8c663ab1 Allow the testenv client to dictate the worker timeout
The testenv client is privileged to information about jobs that the
worker is not aware of, so allow the client to send us the appropriate
timeout.

This also changes the format of the the data sent to us from the client
to a json representation of a python dict.

Change-Id: If3f082c04d937f0d5baa09cf002aef797eebcbe5
2014-03-11 00:20:02 +00:00