avocado.plugins: Fix bug 'Namespace' object has no attribute

Fix problem when running Avocado with subcommand other than run:

$ avocado plugins
Could not activate plugin 'run_vm': 'Namespace' object has no attribute 'vm'
Could not activate plugin 'json': 'Namespace' object has no attribute 'json_output'
Could not activate plugin 'xunit': 'Namespace' object has no attribute 'xunit_output'
Could not activate plugin 'journal': 'Namespace' object has no attribute 'journal'
Plugins loaded:
    datadir      - Implements the avocado 'datadir' subcommand (Enabled)
    json         - JSON output (Enabled)
    journal      - Test journal (Enabled)
    multiplexer  - Implements the avocado 'multiplex' subcommand. (Enabled)
    plugins_list - Implements the avocado 'plugins' subcommand (Enabled)
    run_vm       - Run tests on a Virtual Machine (Enabled)
    sysinfo      - Collect system information (Enabled)
    test_lister  - Implements the avocado 'list' subcommand (Enabled)
    test_runner  - Implements the avocado 'run' subcommand (Enabled)
    xunit        - xUnit output. (Enabled)

Signed-off-by: Ruda Moura <rmoura@redhat.com>
manpage: update based on recent command line and plugin changes

This syncs the manpage with the latest changes of command line options
and plugins (for example, the new multiplex).

Signed-off-by: Cleber Rosa <crosa@redhat.com>
Merge pull request #176 from ruda/plugins_object_has_no_attribute

avocado.plugins: Fix bug 'Namespace' object has no attribute
Merge pull request #177 from clebergnu/manpage_update

manpage: update based on recent command line and plugin changes
avocado/utils/network.py: introduce unused ports related utilities

Signed-off-by: Cleber Rosa <crosa@redhat.com>
GDB: introduce external libraries

This instroduces external libraries that are used by the avocado GDB
handling library. The two libraries are:

1) the spark parser, used as part of cPython builds, but not available
   a pip'able package or distro level packages;
2) the GDB MI parser from the pygdb project. Project seems to be be dead
   but the parser is really useful and fits well with avocado's needs.
   Also not pip'able or available from a distro package.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
GDB: add GNU Debugger handling library

This library is supposed to be useful both to test writers and to avocado itself.

Test writers may want to explicitly interact with the GNU debugger, run their
applications both in out outside it, generate core dumps, etc.

Avocado itself uses that library to implement the GDB plugin, that allows test
runners to run binaries inside the debugger transparently.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
gdbtest: introduce new test

This test fires a GDB instance, sends both valid and invalid commands,
runs a couple of binaries, setting breakpoints, catching signals and
generating core dumps.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
avocado/runtime.py: add runtime configuration module

Simple namespace for storing configurations that will affect
the avocado runtime, including the test runner and standard
API behavior.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
GDB plugin: enables GNU Debugger features

Such as the ability to run any number of applications inside the
debugger transparently.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
job runtime: set the currently running test

So that other parts of the framework may act upon it if necessary.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
GDB: add transparent support to avocado/utils/process.py

So that any code using our process API can be run through a debugger.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
GDB: add paused and paused_msg to the test state and job main loop

paused is a boolean that indicates if the test is paused, and paused_msg
may contain a message to give to the user running the test.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
gdbtest: add interactive test

Signed-off-by: Cleber Rosa <crosa@redhat.com>
GDB plugin: move option from global to run command option

Signed-off-by: Cleber Rosa <crosa@redhat.com>
GDB support: quit GDB server when process exits

Signed-off-by: Cleber Rosa <crosa@redhat.com>