This new config option obviously defaults to 'true' in order to not only
maintain compatibility, but because it makes sense.
Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
This task configures and starts a Hadoop cluster.
It does not run any jobs, that must be done after
this task runs.
Can run on either Ceph or HDFS.
Signed-off-by: Joe Buck <jbbuck@gmail.com>
This generates a new keypair, pushes it to all nodes
in the context and adds all hosts to all other hosts
.ssh/authorized_keys file.
Cleans up all keys and authorized_keys entries
afterwards.
Signed-off-by: Joe Buck <jbbuck@gmail.com>
Reviewed-by: Sam Lang <sam.lang@inktank.com>
xfstests itself still seems to have some global dependencies that
make it hard to run more than one instance per node, so keep
the one client per node restriction.
Name the image after the client using it, and only run the
nested context managers once, so this task can work with
more than one client.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Tests scenario where merge_old_entry encounters a divergent
entry where the prior_version is prior to log_tail. This
is a problem since it will go into the missing set, but won't
be re-added to the missing set during read_log() if the node
restarts prior to recovering the object.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Removing the scratchdir in the remote run command
at the end of the script invocation will do the remove
once the first script finishes. With possibly a shared
scratch dir across workunit clients, we want to wait to
remove the scratch dir once all the workunit scripts have
completed.
Signed-off-by: Sam Lang <sam.lang@inktank.com>
Thrasher can now with configurable frequency test min_size by
taking down all but one osd, waiting, killing that osd and bringing
back the others, and verifying that the cluster goes clean.
Signed-off-by: Samuel Just <sam.just@inktank.com>
This adds the ability to use the new repeat count argument to the
run_xfstests.sh script. By default, the test suite will be run
once, but if a count is specified the script will execute the suite
that many times, but will only perform the setup (building the
tests, etc.) once.
Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
Ability to specify options
By default only export to current hosts
Fixes: 3245
Signed-off-by: David Zafman <david.zafman@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
teuthology-[schedule|suite] get a parameter to specify the branch,
to put the job in a branch-specific queue. Workers running that
branch of teuthology can pull jobs from that queue.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Exception objects don't contain the traceback of where they were
raised from (to avoid cyclic data structures wrecking gc and causing
mem leaks), so the singular "raise obj" form creates a new traceback
from the current execution location, thus losing the original location
of the error.
Gevent explicitly wants to throw away the traceback, to release any
objects the greenlet may still be referring to, closing files,
releasing locks etc. In this case, we think it's safe, so stash the
exception info away in a holder object, and resurrect it on the other
side of the results queue.
http://stackoverflow.com/questions/9268916/how-to-capture-a-traceback-in-gevent
This can be reproduced easily with
from teuthology.parallel import parallel
def f():
raise RuntimeError("bork")
with parallel() as p:
p.spawn(f)
and looking at the resulting traceback with and without this change.
This adds the ability to specify the rbd image format to use for the
scratch and test devices for the rbd.xfstests task.
Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
This adds the ability to specify an rbd image format (either 1 or 2)
for an rbd image.
Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
This task allows ceph to signal to teuth that it should die immediately
by touching a file under /tmp/cephtest
Signed-off-by: Mike Ryan <mike.ryan@inktank.com>
Especially on older hosts, we keep triggering errors::
ServerNotFoundError: Unable to find the server at
teuthology.front.sepia.ceph.com: [Errno 3] name does not exist
That comes from libevent's evdns via gevent.dns and httplib2. The rate
of these errors is low enough that they seem to be perhaps timeouts,
or more arbitrary. Busy looping on DNS resolution calls has never
triggered them, so far.
With ``monkey.patch_all(dns=False)``, the teuthology process will
block as a whole whenever doing DNS resolution. This will hopefully be
rare enough that it won't matter.
The only real "fix" seems to be upgrading libraries and hoping for the
best; this commit can be reverted after that is done.
This lets you specify a path to an existing kernel deb
to be pushed and installed on the remote node.
Limitations:
- We don't build the deb for you. figuring out what
filename 'make deb-pkg' is building is annoying.
- We need to be able to figure out the sha1 from the provided
path. It shouldn't be a problem, given the way make deb-pkg
names the debs.