|
Packit |
bbb0ff |
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# Name: beakerlib.sh - part of the BeakerLib project
|
|
Packit |
bbb0ff |
# Description: The main BeakerLib script
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# Author: Petr Muller <pmuller@redhat.com>
|
|
Packit |
bbb0ff |
# Author: Ondrej Hudlicky <ohudlick@redhat.com>
|
|
Packit |
bbb0ff |
# Author: Jan Hutar <jhutar@redhat.com>
|
|
Packit |
bbb0ff |
# Author: Petr Splichal <psplicha@redhat.com>
|
|
Packit |
bbb0ff |
# Author: Ales Zelinka <azelinka@redhat.com>
|
|
Packit |
bbb0ff |
# Author: Dalibor Pospisil <dapospis@redhat.com>
|
|
Packit |
bbb0ff |
# Author: Martin Kyral <mkyral@redhat.com>
|
|
Packit |
bbb0ff |
# Author: Jakub Prokes <jprokes@redhat.com>
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# Copyright (c) 2008-2012 Red Hat, Inc. All rights reserved.
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# This copyrighted material is made available to anyone wishing
|
|
Packit |
bbb0ff |
# to use, modify, copy, or redistribute it subject to the terms
|
|
Packit |
bbb0ff |
# and conditions of the GNU General Public License version 2.
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# This program is distributed in the hope that it will be
|
|
Packit |
bbb0ff |
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
Packit |
bbb0ff |
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
Packit |
bbb0ff |
# PURPOSE. See the GNU General Public License for more details.
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# You should have received a copy of the GNU General Public
|
|
Packit |
bbb0ff |
# License along with this program; if not, write to the Free
|
|
Packit |
bbb0ff |
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
Packit |
bbb0ff |
# Boston, MA 02110-1301, USA.
|
|
Packit |
bbb0ff |
#
|
|
Packit |
bbb0ff |
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
: <<'=cut'
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=pod
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=for comment beakerlib-manual-header
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head1 NAME
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
BeakerLib - a shell-level integration testing library
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head1 DESCRIPTION
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
BeakerLib is a shell-level integration testing library, providing
|
|
Packit |
bbb0ff |
convenience functions which simplify writing, running and analysis of
|
|
Packit |
bbb0ff |
integration and blackbox tests.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
The essential features include:
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=over
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
B<Journal> - uniform logging mechanism (logs & results saved in flexible XML
|
|
Packit |
bbb0ff |
format, easy to compare results & generate reports)
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
B<Phases> - logical grouping of test actions, clear separation of setup / test
|
|
Packit |
bbb0ff |
/ cleanup (preventing false fails)
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
B<Asserts> - common checks affecting the overall results of the individual
|
|
Packit |
bbb0ff |
phases (checking for exit codes, file existence & content...)
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
B<Helpers> - convenience functions for common operations such as managing
|
|
Packit |
bbb0ff |
services, backup & restore
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=back
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
The main script sets the C<BEAKERLIB> variable and sources other scripts where
|
|
Packit |
bbb0ff |
the actual functions are defined. You should source it at the beginning of your
|
|
Packit |
bbb0ff |
test with:
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
. /usr/share/beakerlib/beakerlib.sh
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
See the EXAMPLES section for quick start inspiration.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
See the BKRDOC section for more information about Automated documentation generator for BeakerLib tests.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=cut
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Packit |
bbb0ff |
# beakerlib-manual-include
|
|
Packit |
bbb0ff |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
:<<'=cut'
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=pod
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=for comment beakerlib-manual-footer
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head1 EXAMPLES
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head2 Simple
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
A minimal BeakerLib test can look like this:
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
. /usr/share/beakerlib/beakerlib.sh
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
rlJournalStart
|
|
Packit |
bbb0ff |
rlPhaseStartTest
|
|
Packit |
bbb0ff |
rlAssertRpm "setup"
|
|
Packit |
bbb0ff |
rlAssertExists "/etc/passwd"
|
|
Packit |
bbb0ff |
rlAssertGrep "root" "/etc/passwd"
|
|
Packit |
bbb0ff |
rlPhaseEnd
|
|
Packit |
bbb0ff |
rlJournalEnd
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head2 Phases
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Here comes a bit more interesting example of a test which sets all
|
|
Packit |
bbb0ff |
the recommended variables and makes use of the phases:
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
# Include the BeakerLib environment
|
|
Packit |
bbb0ff |
. /usr/share/beakerlib/beakerlib.sh
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
# Set the full test name
|
|
Packit |
bbb0ff |
TEST="/examples/beakerlib/Sanity/phases"
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
# Package being tested
|
|
Packit |
bbb0ff |
PACKAGE="coreutils"
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
rlJournalStart
|
|
Packit |
bbb0ff |
# Setup phase: Prepare test directory
|
|
Packit |
bbb0ff |
rlPhaseStartSetup
|
|
Packit |
bbb0ff |
rlAssertRpm $PACKAGE
|
|
Packit |
bbb0ff |
rlRun 'TmpDir=$(mktemp -d)' 0 'Creating tmp directory' # no-reboot
|
|
Packit |
bbb0ff |
rlRun "pushd $TmpDir"
|
|
Packit |
bbb0ff |
rlPhaseEnd
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
# Test phase: Testing touch, ls and rm commands
|
|
Packit |
bbb0ff |
rlPhaseStartTest
|
|
Packit |
bbb0ff |
rlRun "touch foo" 0 "Creating the foo test file"
|
|
Packit |
bbb0ff |
rlAssertExists "foo"
|
|
Packit |
bbb0ff |
rlRun "ls -l foo" 0 "Listing the foo test file"
|
|
Packit |
bbb0ff |
rlRun "rm foo" 0 "Removing the foo test file"
|
|
Packit |
bbb0ff |
rlAssertNotExists "foo"
|
|
Packit |
bbb0ff |
rlRun "ls -l foo" 2 "Listing foo should now report an error"
|
|
Packit |
bbb0ff |
rlPhaseEnd
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
# Cleanup phase: Remove test directory
|
|
Packit |
bbb0ff |
rlPhaseStartCleanup
|
|
Packit |
bbb0ff |
rlRun "popd"
|
|
Packit |
bbb0ff |
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
|
Packit |
bbb0ff |
rlPhaseEnd
|
|
Packit |
bbb0ff |
rlJournalEnd
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
# Print the test report
|
|
Packit |
bbb0ff |
rlJournalPrintText
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
The ouput of the rlJournalPrintText command would produce an
|
|
Packit |
bbb0ff |
output similar to the following:
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
:: [ LOG ] :: TEST PROTOCOL
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Test run ID : debugging
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Package : coreutils
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Installed: : coreutils-7.6-9.fc12.i686
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Test started : 2010-02-08 14:55:44
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Test finished : 2010-02-08 14:55:50
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Test name : /examples/beakerlib/Sanity/phases
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Distro: : Fedora release 12 (Constantine)
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Hostname : localhost
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Architecture : i686
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Test description
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
PURPOSE of /examples/beakerlib/Sanity/phases
|
|
Packit |
bbb0ff |
Description: Testing BeakerLib phases
|
|
Packit |
bbb0ff |
Author: Petr Splichal <psplicha@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
This example shows how the phases work in the BeakerLib on a
|
|
Packit |
bbb0ff |
trivial smoke test for the "touch", "ls" and "rm" commands from
|
|
Packit |
bbb0ff |
the coreutils package.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Setup
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Checking for the presence of coreutils rpm
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Creating tmp directory
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Running 'pushd /tmp/tmp.IcluQu5GVS' # no-reboot
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Duration: 0s
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Assertions: 3 good, 0 bad
|
|
Packit |
bbb0ff |
:: [ PASS ] :: RESULT: Setup
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Test
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Creating the foo test file
|
|
Packit |
bbb0ff |
:: [ PASS ] :: File foo should exist
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Listing the foo test file
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Removing the foo test file
|
|
Packit |
bbb0ff |
:: [ PASS ] :: File foo should not exist
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Listing foo should now report an error
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Duration: 1s
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Assertions: 6 good, 0 bad
|
|
Packit |
bbb0ff |
:: [ PASS ] :: RESULT: Test
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Cleanup
|
|
Packit |
bbb0ff |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Running 'popd'
|
|
Packit |
bbb0ff |
:: [ PASS ] :: Removing tmp directory
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Duration: 1s
|
|
Packit |
bbb0ff |
:: [ LOG ] :: Assertions: 2 good, 0 bad
|
|
Packit |
bbb0ff |
:: [ PASS ] :: RESULT: Cleanup
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Note that the detailed test description is read from a separate
|
|
Packit |
bbb0ff |
file PURPOSE placed in the same directory as the test itself.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
A lot of useful debugging information is reported on the DEBUG level.
|
|
Packit |
bbb0ff |
You can run your test with C<DEBUG=1 make run> to get them.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Verbosity of the test logging may be altered also by setting the LOG_LEVEL
|
|
Packit |
bbb0ff |
variable. Possible values are "ERROR", "WARNING", "INFO" and "DEBUG". You will
|
|
Packit |
bbb0ff |
see messages like the ones below.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
:: [ WARNING ] :: rlGetArch: Update test to use rlGetPrimaryArch/rlGetSecondaryArch
|
|
Packit |
bbb0ff |
:: [ DEBUG ] :: rlGetArch: This is architecture 'x86_64'
|
|
Packit |
bbb0ff |
:: [ ERROR ] :: this function was dropped as its development is completely moved to the beaker library
|
|
Packit |
bbb0ff |
:: [ INFO ] :: if you realy on this function and you really need to have it present in core beakerlib, file a RFE, please
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Setting LOG_LEVEL="DEBUG" is equivalent to DEBUG=1.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head1 BKRDOC
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=over
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item Description
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Bkrdoc is a documentation generator from tests written using BeakerLib
|
|
Packit |
bbb0ff |
library. This generator makes documentation from test code with and also
|
|
Packit |
bbb0ff |
without any documentation markup.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item What it's good for
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
For fast, brief and reliable documentation creation. It`s good for
|
|
Packit |
bbb0ff |
quick start with unknown BeakerLib test. Created documentations provides
|
|
Packit |
bbb0ff |
information about the documentation credibility. Also created documentations
|
|
Packit |
bbb0ff |
shows environmental variables and helps reader to run test script from
|
|
Packit |
bbb0ff |
which was documentation created.
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item Bkrdoc project page
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
https://github.com/rh-lab-q/bkrdoc
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=back
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head1 LINKS
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=over
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item Project Page
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
https://github.com/beakerlib/beakerlib
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item Manual
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
https://github.com/beakerlib/beakerlib/wiki/man
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item Issues list
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
https://github.com/beakerlib/beakerlib/issues
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item Reporting issues
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
https://github.com/beakerlib/beakerlib/issues/new
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=back
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=head1 AUTHORS
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=over
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Petr Muller <pmuller@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Ondrej Hudlicky <ohudlick@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Jan Hutar <jhutar@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Petr Splichal <psplicha@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Ales Zelinka <azelinka@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Dalibor Pospisil <dapospis@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Martin Kyral <mkyral@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Jakub Prokes <jprokes@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=item *
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
Jakub Heger <jheger@redhat.com>
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=back
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
=cut
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
if set -o | grep posix | grep on ; then
|
|
Packit |
bbb0ff |
set +o posix
|
|
Packit |
bbb0ff |
export POSIXFIXED="YES"
|
|
Packit |
bbb0ff |
else
|
|
Packit |
bbb0ff |
export POSIXFIXED="NO"
|
|
Packit |
bbb0ff |
fi
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
export __INTERNAL_PERSISTENT_TMP=/var/tmp
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
# export COBBLER_SERVER for the usage in tests
|
|
Packit |
bbb0ff |
test -f /etc/profile.d/cobbler.sh && . /etc/profile.d/cobbler.sh
|
|
Packit |
bbb0ff |
|
|
Packit |
bbb0ff |
set -e
|
|
Packit |
bbb0ff |
export BEAKERLIB=${BEAKERLIB:-"/usr/share/beakerlib"}
|
|
Packit |
bbb0ff |
. $BEAKERLIB/storage.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/infrastructure.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/journal.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/libraries.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/logging.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/rpms.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/testing.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/analyze.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/performance.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/virtualX.sh
|
|
Packit |
bbb0ff |
. $BEAKERLIB/synchronisation.sh
|
|
Packit |
bbb0ff |
if [ -d $BEAKERLIB/plugins/ ] ; then
|
|
Packit |
bbb0ff |
for __INTERNAL_beakerlib_source_plugin in $BEAKERLIB/plugins/*.sh ; do
|
|
Packit |
bbb0ff |
. $__INTERNAL_beakerlib_source_plugin
|
|
Packit |
bbb0ff |
done
|
|
Packit |
bbb0ff |
fi
|
|
Packit |
bbb0ff |
set +e
|