Commit Graph

43 Commits

Author SHA1 Message Date
Zack Cerza
b4205caedf Iterate more sensibly over processes
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-03-08 07:58:13 -06:00
Zack Cerza
7604a1b670 Update safe_while users to reflect new defaults
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-03-07 13:36:35 -06:00
Zack Cerza
081a5c4bf9 Look for ready() in the right place
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-03-07 13:03:58 -06:00
Zack Cerza
0be5f1f015 Introduce a timeout to radosbench's join phase
Set to 15min right now.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-03-07 11:21:31 -06:00
Zack Cerza
5411613599 Add debug output for reconnect() failures
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-21 10:18:41 -06:00
Zack Cerza
aecd98d763 Fix incorrect exception name in docstring
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:09 -06:00
Zack Cerza
1a0be5a0ab Tweaks to is_online and reconnect()
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:07 -06:00
Zack Cerza
297096b560 Add Remote.reconnect()
Also rename Remote._connect() to Remote.connect() and change its
semantics to match Remote.reconnect()

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:07 -06:00
Zack Cerza
8dfac4381c Make Remote.is_online more accurate
To really know if the connection is active, we need to read something
from the remote host.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:07 -06:00
Zack Cerza
71b4bfe226 Remote instances can now establish SSH connections
Previously, they required an active ssh connection object to be passed
to them. That behavior is still functional.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:07 -06:00
Zack Cerza
1c71558e53 Add Remote.is_online property
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:07 -06:00
Zack Cerza
a2a5aed49f Add Remote.hostname property
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:07 -06:00
Zack Cerza
ed512568f0 Fix linter errors.
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-02-20 17:46:05 -06:00
Warren Usui
f3ac7870ea Fix syntax error in first docstring added. 2014-02-19 13:37:06 -08:00
Warren Usui
e0ed09cfa9 Add docstrings to the orchestra code. Also fix minor formatting issues
(mostly column start locations).

Fixes: 7003
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2014-02-14 12:57:54 -08:00
John Spray
b80e510257 Make libvirt import optional (OS X) 2014-01-31 20:53:45 +00:00
John Spray
f3ce07c65f Respect .ssh/config when opening SSH connections
This handles that case where your private key is
in a non-default location that you're pointing
to in ~/.ssh/config.
2013-12-11 13:41:36 -08:00
Zack Cerza
4135960eb6 Fix test
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2013-10-01 09:07:50 -05:00
Zack Cerza
69ea83904f Add test for skipping host key verification
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2013-10-01 09:07:48 -05:00
Zack Cerza
589560e6c9 Port from nosetests to py.test
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2013-10-01 09:07:45 -05:00
Alfredo Deza
80dcab7fe4 only use host_key if it is not None
Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
2013-09-25 09:25:35 -04:00
Zack Cerza
3955666e8e Add config option 'verify_host_keys'
Defaults to True, meaning no change in behavior. If False, don't have
paramiko verify ssh host keys.
2013-09-24 15:04:39 -05:00
Zack Cerza
eeb78b6b04 Update test_connect() to reflect API changes
Looks like paramiko changed a bit internally. All unit tests pass now!
2013-09-20 08:39:36 -05:00
Zack Cerza
b993ecac9b Update many unit tests to reflect 2yrs of changes
These tests hadn't been updated in over two years. Only one is left
failing.
2013-09-19 19:29:06 -05:00
Zack Cerza
6d1ed573f3 Let execute() accept a string for args. 2013-09-05 16:55:38 -05:00
Zack Cerza
6406a1ecc8 Add Cluster.write_file() 2013-09-05 16:55:37 -05:00
Josh Durgin
232e3d32bc Fix undefined symbol errors
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-08-27 15:58:14 -07:00
Zack Cerza
2a7a61cd17 Add Remote.system_type property. Also, clean up whitespace. 2013-08-09 13:28:38 -05:00
Sandon Van Ness
4dbef128d7 List IP address in orchestra.run output.
Figuring out which machines output is coming from when things
are being executed on multiple machines can be a huge pain.
This prints the IP in the logs so you can easily see where one
machine stops and another begins.

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
2013-07-12 20:10:36 -07:00
Warren Usui
778d930d08 Fix to ignore ssh-key checking if running on virtual machines or
if a line that reads 'sshkey: ignore' is in the yaml file.

Fix #5364
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2013-06-19 11:12:09 -07:00
Warren Usui
1441707222 Make reset of ssh key code conditional on being a virtual machine.
Add and use is_vm to determine if we are running on a virtual machine.

Fix #5364
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2013-06-19 11:12:05 -07:00
Warren Usui
a4994e3bde Support added for running scheduled tasks on virtual machines.
This included:
    A). changes made so that full path names on some files were used
        (scheduled tasks started in different home directories).
    B.) Changes to insure tasks come up on the beanstalkc queue properly,
    C.) Finding and inserting the libvirt eqivalent code for vm machines
        in order to simulate ipmi actions,
    D.) Fix host key code, report valgrind issue more clearly.
    E.) Some message and downburst call changes.

    Fix #4988
    Fix #5122
    Signed-off-by: Warren Usui <warren.usui@inktank.com>
2013-06-07 19:32:15 -07:00
Sandon Van Ness
98cc648ca2 Increase IPMI attempts to try to get around Flakey IPMI.
Signed-off-by: Sandon Van Ness <sandon@inktank.com>
Reviewed-by: Sam Lang <sam.lang@inktank.com>
2013-04-23 10:35:37 -07:00
Sam Lang
6fe1deadbf task/restart: Restart task for testing daemon kill
The ceph daemons support being killed at a specific code point
with a config option.  In some cases, we want to test a kill point
only once for a given daemon run (such as replay that only occurs
during daemon startup).  This task allows running a script or executable
and (when the script sends a command to the task) restarting it with
a temporary config that has the appropriate kill point set.  Once
the daemon asserts and gets restarted, the original config is used.

Adds a specific restart_with_args() method to the DaemonState in the
ceph task.

Right now this task follows the workunit task closely, but uses stdout/stdin
to specify when to restart a daemon.

Signed-off-by: Sam Lang <sam.lang@inktank.com>
2013-03-18 11:16:01 -05:00
Sander Pool
c525e1061b Install ceph debs and use installed debs
The ceph task installs ceph using the debian
packages now, and all invocations of binaries installed
in {tmpdir}/binary/usr/local/bin/ are replace with
the use of the binaries installed in standard locations
by the debs.

Author:    Sander Pool <sander.pool@inktank.com>
Signed-off-by: Sam Lang <sam.lang@inktank.com>
2013-02-18 13:39:03 -08:00
Sam Lang
46d3ff94f5 run.py: Add target name to logging info
Signed-off-by: Sam Lang <sam.lang@inktank.com>
2013-02-03 11:09:04 -06:00
Sam Lang
58111595d4 Support power cycling osds/nodes through ipmi
This patch defines a RemoteConsole class associated
with each Remote class instance, allowing
power cycling a target through ipmi.

Fixes/Implements #3782.
Signed-off-by: Sam Lang <sam.lang@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2013-01-31 08:23:37 -06:00
Dan Mick
120ce3f8a7 Pass up unmodified exceptions from connection.connect()
This allows useful errors to be reported from things like
mismatched hostkeys, etc.
2012-06-05 18:41:45 -07:00
Sage Weil
1a01ccaafb Pull from new gitbuilder.ceph.com locations.
Simplifies the flavor stuff into a tuple of

<package,type,flavor,dist,arch>

where package is ceph, kenrel, etc.
type is tarball, deb
flavor is basic, gcov, notcmalloc
arch is x86_64, i686 (uname -m)
dist is oneiric, etc. (lsb_release -s -c)
2012-03-13 10:02:26 -07:00
Tommi Virtanen
0dd4d69ffe Fix unit tests for SSH keep-alive setting.
Commit 6e3e0d7cdc failed to pass
unit tests.
2011-12-05 10:02:30 -08:00
Josh Durgin
006a0dd423 Remove unused imports and variable. 2011-11-08 16:09:21 -08:00
Josh Durgin
6e3e0d7cdc connection: allow the caller to specify whether keep-alive should be used 2011-11-03 13:07:21 -07:00
Tommi Virtanen
a2372fce12 Move orchestra to teuthology.orchestra so there's just one top-level package. 2011-09-13 14:53:02 -07:00