Add a couple unit tests for teuthology.parallel

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Add a unit test simulating simultaneous checkouts

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Allow testing with online repos

It is not the default.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
document create_pool erasure_code_profile_name argument

Signed-off-by: Loic Dachary <loic@dachary.org>
fix create_pool_with_unique_name call to use profile name

The hardcoded arguments are deprecated for the profile name. Create a
profile that matches the previous default arguments. Read the config to
allow the caller to override the defaults from the yaml file.

Signed-off-by: Loic Dachary <loic@dachary.org>
Add another unit test

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Optionally, don't remove a repo when errors occur

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Don't remove the teuthology repo if errors occur

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Allow setting results_email in teuthology.yaml

(Instead of passing --email to teuthology-suite)

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Remove default results_server

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Relocate teuthology checkouts to ~/src/

Also use an underscore instead of a dash between 'teuthology' and the
branch name.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Don't mess with ~/src/teuthology by default

Setting 'automated_scheduling: True' in ~/.teuthology.yaml enables it.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
Merge pull request #281 from dachary/wip-lost-unfound

fix create_pool_with_unique_name call to use profile name

Reviewed-by: Sage Weil <sage@redhat.com>
ceph.conf: drop min pg per osd warning

With only the rbd pool getting created this needs to be dropped

Signed-off-by: Sage Weil <sage@inktank.com>
task: move Filesystem class to shared location

...in preparation for tests other than mds_journal_migration
to use it.

Signed-off-by: John Spray <john.spray@redhat.com>
task: create FuseMount class from ceph_fuse

This is for use by other tasks that need filesystem
mounts under their own control.

Signed-off-by: John Spray <john.spray@redhat.com>
task: refactor kclient into KernelMount

Additionally make both kclient and ceph_fuse
tasks yield a collection of CephFSMount
objects so that subsequent tasks can
retrieve them.

Signed-off-by: John Spray <john.spray@redhat.com>
task/ceph_manager: generalize admin_socket calls

This is so that tasks can access the admin sockets
of other service types such as the MDS.

Signed-off-by: John Spray <john.spray@redhat.com>
task/mds_journal_migration: only mount my client

Pass explicit client ID list to ceph_fuse context so
that it doesn't try to mount all clients in the config,
in case there are other clients.

Also allow configuration to specific which client
this task should use.

Signed-off-by: John Spray <john.spray@redhat.com>
run_tasks: catch malformed task case

If you do something like this:

- foo:
- bar:
- baz

Then catching AttributeError is necessary for giving a somewhat
friendlier error on the 'baz' where we have a string instead
of a dict.

Signed-off-by: John Spray <john.spray@redhat.com>