Building Test via buildtest (buildtest build)

This guide will get you familiar with buildtest command line interface. Once you complete this section, you can proceed to writing buildspecs section where we will cover how to write buildspecs.

Once you install buildtest, you should find the buildtest command in your $PATH. You can check the path to buildtest command by running:

$ which buildtest

If you don’t see buildtest go back and install buildtest.

When you clone buildtest, you also get a set of buildspecs that you can run on your system. The buildtest build command is used for building and running tests. Buildtest will read one or more buildspecs file that adheres to one of the buildtest schemas. For a complete list of build options please run buildtest build --help.

Note

buildtest bd is an alias for buildtest build command.

Build Usage

$ buildtest build --help
usage: buildtest [options] [COMMANDS] build [-h] [-b BUILDSPEC] [-x EXCLUDE]
                                            [-e EXECUTOR] [-t TAGS]
                                            [-f FILTER] [--helpfilter]
                                            [--account ACCOUNT]
                                            [--disable-executor-check] [-k]
                                            [--maxpendtime MAXPENDTIME]
                                            [--pollinterval POLLINTERVAL]
                                            [--rebuild REBUILD] [-r REPORT]
                                            [--retry RETRY] [-s {parse,build}]
                                            [--testdir TESTDIR]
                                            [--procs PROCS [PROCS ...]]
                                            [--nodes NODES [NODES ...]]

optional arguments:
  -h, --help            show this help message and exit

discover:
  select buildspecs

  -b BUILDSPEC, --buildspec BUILDSPEC
                        Specify a buildspec (file or directory) to build. A
                        buildspec must end in '.yml' extension.
  -x EXCLUDE, --exclude EXCLUDE
                        Exclude one or more buildspecs (file or directory)
                        from processing. A buildspec must end in '.yml'
                        extension.
  -e EXECUTOR, --executor EXECUTOR
                        Discover buildspecs by executor name found in
                        buildspec cache
  -t TAGS, --tags TAGS  Discover buildspecs by tags found in buildspec cache

filter:
  Filter tests

  -f FILTER, --filter FILTER
                        Filter buildspec based on tags, type, or maintainers.
                        Usage: --filter key1=val1,key2=val2
  --helpfilter          Show available filter fields used with --filter option

extra:
  All extra options

  --account ACCOUNT     Specify project account used to charge batch jobs
                        (applicable for batch jobs only)
  --disable-executor-check
                        Disable executor check during configuration check. By
                        default these checks are enforced for Local, Slurm,
                        PBS, LSF, and Cobalt Executor.
  -k, --keep-stage-dir  Keep stage directory after job completion.
  --maxpendtime MAXPENDTIME
                        Specify Maximum Pending Time (sec) for job before
                        cancelling job. This only applies for batch job
                        submission.
  --pollinterval POLLINTERVAL
                        Specify Poll Interval (sec) for polling batch jobs
  --rebuild REBUILD     Rebuild test X number of times. Must be a positive
                        number between [1-50]
  -r REPORT, --report REPORT
                        Specify a report file where tests will be written.
  --retry RETRY         Retry failed jobs
  -s {parse,build}, --stage {parse,build}
                        control behavior of buildtest build
  --testdir TESTDIR     Specify a custom test directory where to write tests.
                        This overrides configuration file and default
                        location.
  --procs PROCS [PROCS ...]
                        Specify number of processes to run tests (only
                        applicable with batch jobs). Multiple values can be
                        specified comma separated.
  --nodes NODES [NODES ...]
                        Specify number of nodes to run tests (only applicable
                        with batch jobs). Multiple values can be specified
                        comma separated.

Building a Test

To build a test, we use the --buildspec or short option -b to specify the path to buildspec file. Let’s see some examples, first we specify a full path to buildspec file. In this example, buildtest will discover buildspecs followed by parsing the test with appropriate schema and generate a shell script that is run by buildtest. You can learn more about build and test process.

$ buildtest build -b $BUILDTEST_ROOT/tutorials/vars.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:19:40                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b /home/docs/checkouts/readthedocs.o │
│ rg/user_builds/buildtest/checkouts/devel/tutorials/vars.yml                  │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/vars.yml: VALID
Total builder objects created: 1
Total compiler builder: 0
Total script builder: 1
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/3f │ generic.local.bas │ Declare shell    │ /home/docs/checko │
│ 523fb6            │ h                 │ variables in     │ uts/readthedocs.o │
│                   │                   │ bash             │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ vars.yml          │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/3f523fb6: Creating test directory: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/v
ariables_bash/3f523fb6
variables_bash/3f523fb6: Creating the stage directory: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/v
ars/variables_bash/3f523fb6/stage
variables_bash/3f523fb6: Writing build script: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/vari
ables_bash/3f523fb6/variables_bash_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: variables_bash/3f523fb6
variables_bash/3f523fb6: Running Test via command: bash --norc --noprofile -eo 
pipefail variables_bash_build.sh
variables_bash/3f523fb6: Test completed with returncode: 0
variables_bash/3f523fb6: Test completed in 0.013659 seconds
variables_bash/3f523fb6: Writing output file -  /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/var
iables_bash/3f523fb6/variables_bash.out
variables_bash/3f523fb6: Writing error file - /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/varia
bles_bash/3f523fb6/variables_bash.err
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ variables_ba │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.013659 │
│ sh/3f523fb6  │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%


Adding 1 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_9sh6erdm.log

Note

buildtest will only read buildspecs with .yml extension, if you specify a .yaml it will be ignored by buildtest.

The --buildspec option can be used to specify a file or directory path. If you want to build multiple buildspecs in a directory you can specify the directory path and buildtest will recursively search for all .yml files. In the next example, we build all tests in directory general_tests/configuration.

$ buildtest build -b general_tests/configuration/
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:15                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b general_tests/configuration/       │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  4
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  4
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 4
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/disk_usage.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/kernel_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/systemd-default-target.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/ulimits.yml: VALID
Total builder objects created: 9
Total compiler builder: 0
Total script builder: 9
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ root_disk_usage/a │ generic.local.bas │ Check root disk  │ /home/docs/checko │
│ 8d6260c           │ h                 │ usage and report │ uts/readthedocs.o │
│                   │                   │ if it exceeds    │ rg/user_builds/bu │
│                   │                   │ threshold        │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /disk_usage.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ kernel_swapusage/ │ generic.local.bas │ Retrieve Kernel  │ /home/docs/checko │
│ f5282190          │ h                 │ Swap Usage       │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /kernel_state.yml │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ systemd_default_t │ generic.local.bas │ check if default │ /home/docs/checko │
│ arget/26912c84    │ h                 │ target is multi- │ uts/readthedocs.o │
│                   │                   │ user.target      │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /systemd-default- │
│                   │                   │                  │ target.yml        │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_filelock_u │ generic.local.bas │ Check if file    │ /home/docs/checko │
│ nlimited/de3b7321 │ h                 │ lock is set to   │ uts/readthedocs.o │
│                   │                   │ unlimited in     │ rg/user_builds/bu │
│                   │                   │ ulimits          │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_cputime_un │ generic.local.bas │ Check if cputime │ /home/docs/checko │
│ limited/9ae3a87f  │ h                 │ is set to        │ uts/readthedocs.o │
│                   │                   │ unlimited in     │ rg/user_builds/bu │
│                   │                   │ ulimits          │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_stacksize_ │ generic.local.bas │ Check if stack   │ /home/docs/checko │
│ unlimited/6cf4fbf │ h                 │ size is set to   │ uts/readthedocs.o │
│ 7                 │                   │ unlimited in     │ rg/user_builds/bu │
│                   │                   │ ulimits          │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_vmsize_unl │ generic.local.bas │ Check virtual    │ /home/docs/checko │
│ imited/771db672   │ h                 │ memory size and  │ uts/readthedocs.o │
│                   │                   │ check if its set │ rg/user_builds/bu │
│                   │                   │ to unlimited     │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_filedescri │ generic.local.bas │ Check if open    │ /home/docs/checko │
│ ptor_4096/6ce3d48 │ h                 │ file descriptors │ uts/readthedocs.o │
│ c                 │                   │ limit is set to  │ rg/user_builds/bu │
│                   │                   │ 4096             │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_max_user_p │ generic.local.bas │ Check max number │ /home/docs/checko │
│ rocess_2048/ebf31 │ h                 │ of user process  │ uts/readthedocs.o │
│ 668               │                   │ limit is set to  │ rg/user_builds/bu │
│                   │                   │ 2048             │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
root_disk_usage/a8d6260c: Creating test directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_
usage/root_disk_usage/a8d6260c
root_disk_usage/a8d6260c: Creating the stage directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
disk_usage/root_disk_usage/a8d6260c/stage
root_disk_usage/a8d6260c: Writing build script: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_usa
ge/root_disk_usage/a8d6260c/root_disk_usage_build.sh
kernel_swapusage/f5282190: Creating test directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kern
el_state/kernel_swapusage/f5282190
kernel_swapusage/f5282190: Creating the stage directory: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/kernel_state/kernel_swapusage/f5282190/stage
kernel_swapusage/f5282190: Writing build script: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel_
state/kernel_swapusage/f5282190/kernel_swapusage_build.sh
systemd_default_target/26912c84: Creating test directory: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/systemd-default-target/systemd_default_target/26912c84
systemd_default_target/26912c84: Creating the stage directory: /home/docs/checko
uts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loca
l.bash/systemd-default-target/systemd_default_target/26912c84/stage
systemd_default_target/26912c84: Writing build script: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/s
ystemd-default-target/systemd_default_target/26912c84/systemd_default_target_bui
ld.sh
ulimit_filelock_unlimited/de3b7321: Creating test directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/ulimits/ulimit_filelock_unlimited/de3b7321
ulimit_filelock_unlimited/de3b7321: Creating the stage directory: /home/docs/che
ckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.l
ocal.bash/ulimits/ulimit_filelock_unlimited/de3b7321/stage
ulimit_filelock_unlimited/de3b7321: Writing build script: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_filelock_unlimited/de3b7321/ulimit_filelock_unlimited_build.sh
ulimit_cputime_unlimited/9ae3a87f: Creating test directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_cputime_unlimited/9ae3a87f
ulimit_cputime_unlimited/9ae3a87f: Creating the stage directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.bash/ulimits/ulimit_cputime_unlimited/9ae3a87f/stage
ulimit_cputime_unlimited/9ae3a87f: Writing build script: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/ulimits/ulimit_cputime_unlimited/9ae3a87f/ulimit_cputime_unlimited_build.sh
ulimit_stacksize_unlimited/6cf4fbf7: Creating test directory: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.bash/ulimits/ulimit_stacksize_unlimited/6cf4fbf7
ulimit_stacksize_unlimited/6cf4fbf7: Creating the stage directory: /home/docs/ch
eckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.
local.bash/ulimits/ulimit_stacksize_unlimited/6cf4fbf7/stage
ulimit_stacksize_unlimited/6cf4fbf7: Writing build script: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_stacksize_unlimited/6cf4fbf7/ulimit_stacksize_unlimited_build.
sh
ulimit_vmsize_unlimited/771db672: Creating test directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_vmsize_unlimited/771db672
ulimit_vmsize_unlimited/771db672: Creating the stage directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.bash/ulimits/ulimit_vmsize_unlimited/771db672/stage
ulimit_vmsize_unlimited/771db672: Writing build script: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
ulimits/ulimit_vmsize_unlimited/771db672/ulimit_vmsize_unlimited_build.sh
ulimit_filedescriptor_4096/6ce3d48c: Creating test directory: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.bash/ulimits/ulimit_filedescriptor_4096/6ce3d48c
ulimit_filedescriptor_4096/6ce3d48c: Creating the stage directory: /home/docs/ch
eckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.
local.bash/ulimits/ulimit_filedescriptor_4096/6ce3d48c/stage
ulimit_filedescriptor_4096/6ce3d48c: Writing build script: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_filedescriptor_4096/6ce3d48c/ulimit_filedescriptor_4096_build.
sh
ulimit_max_user_process_2048/ebf31668: Creating test directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.bash/ulimits/ulimit_max_user_process_2048/ebf31668
ulimit_max_user_process_2048/ebf31668: Creating the stage directory: /home/docs/
checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generi
c.local.bash/ulimits/ulimit_max_user_process_2048/ebf31668/stage
ulimit_max_user_process_2048/ebf31668: Writing build script: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/ulimits/ulimit_max_user_process_2048/ebf31668/ulimit_max_user_process_2048_
build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: root_disk_usage/a8d6260c
______________________________
Launching test: kernel_swapusage/f5282190
______________________________
Launching test: systemd_default_target/26912c84
______________________________
Launching test: ulimit_filelock_unlimited/de3b7321
______________________________
Launching test: ulimit_cputime_unlimited/9ae3a87f
______________________________
Launching test: ulimit_stacksize_unlimited/6cf4fbf7
______________________________
Launching test: ulimit_vmsize_unlimited/771db672
______________________________
Launching test: ulimit_filedescriptor_4096/6ce3d48c
root_disk_usage/a8d6260c: Running Test via command: bash --norc --noprofile -eo 
pipefail root_disk_usage_build.sh
______________________________
Launching test: ulimit_max_user_process_2048/ebf31668
kernel_swapusage/f5282190: Running Test via command: bash --norc --noprofile -eo
pipefail kernel_swapusage_build.sh
kernel_swapusage/f5282190: Test completed with returncode: 255
kernel_swapusage/f5282190: Test completed in 0.031033 seconds
kernel_swapusage/f5282190: Writing output file -  /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel
_state/kernel_swapusage/f5282190/kernel_swapusage.out
kernel_swapusage/f5282190: Writing error file - /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel_s
tate/kernel_swapusage/f5282190/kernel_swapusage.err
root_disk_usage/a8d6260c: Test completed with returncode: 0
root_disk_usage/a8d6260c: Test completed in 0.044917 seconds
systemd_default_target/26912c84: Running Test via command: bash --norc 
--noprofile -eo pipefail systemd_default_target_build.sh
root_disk_usage/a8d6260c: Writing output file -  /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_us
age/root_disk_usage/a8d6260c/root_disk_usage.out
root_disk_usage/a8d6260c: Writing error file - /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_usag
e/root_disk_usage/a8d6260c/root_disk_usage.err
ulimit_filelock_unlimited/de3b7321: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_filelock_unlimited_build.sh
systemd_default_target/26912c84: Test completed with returncode: 1
ulimit_filelock_unlimited/de3b7321: Test completed with returncode: 0
ulimit_filelock_unlimited/de3b7321: Test completed in 0.032986 seconds
systemd_default_target/26912c84: Test completed in 0.040625 seconds
ulimit_filelock_unlimited/de3b7321: Writing output file -  /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_filelock_unlimited/de3b7321/ulimit_filelock_unlimited.out
systemd_default_target/26912c84: Writing output file -  /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
systemd-default-target/systemd_default_target/26912c84/systemd_default_target.ou
t
ulimit_filelock_unlimited/de3b7321: Writing error file - /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/ulimits/ulimit_filelock_unlimited/de3b7321/ulimit_filelock_unlimited.err
systemd_default_target/26912c84: Writing error file - /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sy
stemd-default-target/systemd_default_target/26912c84/systemd_default_target.err
ulimit_filelock_unlimited/de3b7321: performing regular expression - 
'^unlimited$' on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtes
t/checkouts/devel/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited
/de3b7321/ulimit_filelock_unlimited.out
ulimit_filelock_unlimited/de3b7321: Regular Expression Match - Success!
ulimit_cputime_unlimited/9ae3a87f: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_cputime_unlimited_build.sh
ulimit_stacksize_unlimited/6cf4fbf7: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_stacksize_unlimited_build.sh
ulimit_cputime_unlimited/9ae3a87f: Test completed with returncode: 0
ulimit_stacksize_unlimited/6cf4fbf7: Test completed with returncode: 0
ulimit_stacksize_unlimited/6cf4fbf7: Test completed in 0.020983 seconds
ulimit_cputime_unlimited/9ae3a87f: Test completed in 0.026812 seconds
ulimit_stacksize_unlimited/6cf4fbf7: Writing output file -  /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_stacksize_unlimited/6cf4fbf7/ulimit_stacksize_unlimited.out
ulimit_cputime_unlimited/9ae3a87f: Writing output file -  /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_cputime_unlimited/9ae3a87f/ulimit_cputime_unlimited.out
ulimit_stacksize_unlimited/6cf4fbf7: Writing error file - /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_stacksize_unlimited/6cf4fbf7/ulimit_stacksize_unlimited.err
ulimit_cputime_unlimited/9ae3a87f: Writing error file - /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
ulimits/ulimit_cputime_unlimited/9ae3a87f/ulimit_cputime_unlimited.err
ulimit_stacksize_unlimited/6cf4fbf7: performing regular expression - 
'^unlimited$' on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtes
t/checkouts/devel/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimite
d/6cf4fbf7/ulimit_stacksize_unlimited.out
ulimit_cputime_unlimited/9ae3a87f: performing regular expression - '^unlimited$'
on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/de
vel/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/9ae3a87f/ulimi
t_cputime_unlimited.out
ulimit_stacksize_unlimited/6cf4fbf7: Regular Expression Match - Failed!
ulimit_cputime_unlimited/9ae3a87f: Regular Expression Match - Success!
ulimit_vmsize_unlimited/771db672: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_vmsize_unlimited_build.sh
ulimit_filedescriptor_4096/6ce3d48c: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_filedescriptor_4096_build.sh
ulimit_filedescriptor_4096/6ce3d48c: Test completed with returncode: 0
ulimit_filedescriptor_4096/6ce3d48c: Test completed in 0.026282 seconds
ulimit_vmsize_unlimited/771db672: Test completed with returncode: 0
ulimit_vmsize_unlimited/771db672: Test completed in 0.031907 seconds
ulimit_filedescriptor_4096/6ce3d48c: Writing output file -  /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_filedescriptor_4096/6ce3d48c/ulimit_filedescriptor_4096.out
ulimit_vmsize_unlimited/771db672: Writing output file -  /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/ulimits/ulimit_vmsize_unlimited/771db672/ulimit_vmsize_unlimited.out
ulimit_filedescriptor_4096/6ce3d48c: Writing error file - /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_filedescriptor_4096/6ce3d48c/ulimit_filedescriptor_4096.err
ulimit_vmsize_unlimited/771db672: Writing error file - /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/u
limits/ulimit_vmsize_unlimited/771db672/ulimit_vmsize_unlimited.err
ulimit_filedescriptor_4096/6ce3d48c: performing regular expression - '^4096$' on
file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel
/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/6ce3d48c/ulimit
_filedescriptor_4096.out
ulimit_vmsize_unlimited/771db672: performing regular expression - '^unlimited$' 
on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/de
vel/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/771db672/ulimit
_vmsize_unlimited.out
ulimit_filedescriptor_4096/6ce3d48c: Regular Expression Match - Failed!
ulimit_vmsize_unlimited/771db672: Regular Expression Match - Success!
ulimit_max_user_process_2048/ebf31668: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_max_user_process_2048_build.sh
ulimit_max_user_process_2048/ebf31668: Test completed with returncode: 0
ulimit_max_user_process_2048/ebf31668: Test completed in 0.007603 seconds
ulimit_max_user_process_2048/ebf31668: Writing output file -  /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.bash/ulimits/ulimit_max_user_process_2048/ebf31668/ulimit_max_user_process_2048
.out
ulimit_max_user_process_2048/ebf31668: Writing error file - /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_max_user_process_2048/ebf31668/ulimit_max_user_process_2048.e
rr
ulimit_max_user_process_2048/ebf31668: performing regular expression - '^2048$' 
on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/de
vel/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/ebf31668/u
limit_max_user_process_2048.out
ulimit_max_user_process_2048/ebf31668: Regular Expression Match - Failed!
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ root_disk_us │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.044917 │
│ age/a8d6260c │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ kernel_swapu │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 255        │ 0.031033 │
│ sage/f528219 │              │        │               │            │          │
│ 0            │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ systemd_defa │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 0.040625 │
│ ult_target/2 │              │        │               │            │          │
│ 6912c84      │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_filel │ generic.loc… │ PASS   │ False True    │ 0          │ 0.032986 │
│ ock_unlimite │              │        │ False         │            │          │
│ d/de3b7321   │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_cputi │ generic.loc… │ PASS   │ False True    │ 0          │ 0.026812 │
│ me_unlimited │              │        │ False         │            │          │
│ /9ae3a87f    │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_stack │ generic.loc… │ FAIL   │ False False   │ 0          │ 0.020983 │
│ size_unlimit │              │        │ False         │            │          │
│ ed/6cf4fbf7  │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_vmsiz │ generic.loc… │ PASS   │ False True    │ 0          │ 0.031907 │
│ e_unlimited/ │              │        │ False         │            │          │
│ 771db672     │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_filed │ generic.loc… │ FAIL   │ False False   │ 0          │ 0.026282 │
│ escriptor_40 │              │        │ False         │            │          │
│ 96/6ce3d48c  │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_max_u │ generic.loc… │ FAIL   │ False False   │ 0          │ 0.007603 │
│ ser_process_ │              │        │ False         │            │          │
│ 2048/ebf3166 │              │        │               │            │          │
│ 8            │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 4/9 Percentage: 44.444%
Failed Tests: 5/9 Percentage: 55.556%


Adding 9 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_4_283ii1.log

Building Multiple Buildspecs

You can append -b option to build multiple buildspecs in the same command. Buildtest will discover buildspecs for every argument (-b) and accumulate a list of buildspecs to run. In this example, we instruct buildtest to build a buildspec file and all buildspecs in a directory path.

$ buildtest build -b general_tests/configuration/ -b tutorials/vars.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:16                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b general_tests/configuration/ -b    │
│ tutorials/vars.yml                                                           │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  5
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  5
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 5
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/kernel_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/disk_usage.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/vars.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/systemd-default-target.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/ulimits.yml: VALID
Total builder objects created: 10
Total compiler builder: 0
Total script builder: 10
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ kernel_swapusage/ │ generic.local.bas │ Retrieve Kernel  │ /home/docs/checko │
│ 46d7bde8          │ h                 │ Swap Usage       │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /kernel_state.yml │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ root_disk_usage/7 │ generic.local.bas │ Check root disk  │ /home/docs/checko │
│ e67f36d           │ h                 │ usage and report │ uts/readthedocs.o │
│                   │                   │ if it exceeds    │ rg/user_builds/bu │
│                   │                   │ threshold        │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /disk_usage.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ variables_bash/07 │ generic.local.bas │ Declare shell    │ /home/docs/checko │
│ ae87c1            │ h                 │ variables in     │ uts/readthedocs.o │
│                   │                   │ bash             │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ vars.yml          │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ systemd_default_t │ generic.local.bas │ check if default │ /home/docs/checko │
│ arget/bf3cdbae    │ h                 │ target is multi- │ uts/readthedocs.o │
│                   │                   │ user.target      │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /systemd-default- │
│                   │                   │                  │ target.yml        │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_filelock_u │ generic.local.bas │ Check if file    │ /home/docs/checko │
│ nlimited/fa414a18 │ h                 │ lock is set to   │ uts/readthedocs.o │
│                   │                   │ unlimited in     │ rg/user_builds/bu │
│                   │                   │ ulimits          │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_cputime_un │ generic.local.bas │ Check if cputime │ /home/docs/checko │
│ limited/e6a86c62  │ h                 │ is set to        │ uts/readthedocs.o │
│                   │                   │ unlimited in     │ rg/user_builds/bu │
│                   │                   │ ulimits          │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_stacksize_ │ generic.local.bas │ Check if stack   │ /home/docs/checko │
│ unlimited/a202fcb │ h                 │ size is set to   │ uts/readthedocs.o │
│ 5                 │                   │ unlimited in     │ rg/user_builds/bu │
│                   │                   │ ulimits          │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_vmsize_unl │ generic.local.bas │ Check virtual    │ /home/docs/checko │
│ imited/ccbe4861   │ h                 │ memory size and  │ uts/readthedocs.o │
│                   │                   │ check if its set │ rg/user_builds/bu │
│                   │                   │ to unlimited     │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_filedescri │ generic.local.bas │ Check if open    │ /home/docs/checko │
│ ptor_4096/9551e12 │ h                 │ file descriptors │ uts/readthedocs.o │
│ b                 │                   │ limit is set to  │ rg/user_builds/bu │
│                   │                   │ 4096             │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ ulimit_max_user_p │ generic.local.bas │ Check max number │ /home/docs/checko │
│ rocess_2048/8d1d9 │ h                 │ of user process  │ uts/readthedocs.o │
│ 7f8               │                   │ limit is set to  │ rg/user_builds/bu │
│                   │                   │ 2048             │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /ulimits.yml      │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
kernel_swapusage/46d7bde8: Creating test directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kern
el_state/kernel_swapusage/46d7bde8
kernel_swapusage/46d7bde8: Creating the stage directory: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/kernel_state/kernel_swapusage/46d7bde8/stage
kernel_swapusage/46d7bde8: Writing build script: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel_
state/kernel_swapusage/46d7bde8/kernel_swapusage_build.sh
root_disk_usage/7e67f36d: Creating test directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_
usage/root_disk_usage/7e67f36d
root_disk_usage/7e67f36d: Creating the stage directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
disk_usage/root_disk_usage/7e67f36d/stage
root_disk_usage/7e67f36d: Writing build script: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_usa
ge/root_disk_usage/7e67f36d/root_disk_usage_build.sh
variables_bash/07ae87c1: Creating test directory: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/v
ariables_bash/07ae87c1
variables_bash/07ae87c1: Creating the stage directory: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/v
ars/variables_bash/07ae87c1/stage
variables_bash/07ae87c1: Writing build script: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/vari
ables_bash/07ae87c1/variables_bash_build.sh
systemd_default_target/bf3cdbae: Creating test directory: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/systemd-default-target/systemd_default_target/bf3cdbae
systemd_default_target/bf3cdbae: Creating the stage directory: /home/docs/checko
uts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loca
l.bash/systemd-default-target/systemd_default_target/bf3cdbae/stage
systemd_default_target/bf3cdbae: Writing build script: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/s
ystemd-default-target/systemd_default_target/bf3cdbae/systemd_default_target_bui
ld.sh
ulimit_filelock_unlimited/fa414a18: Creating test directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/ulimits/ulimit_filelock_unlimited/fa414a18
ulimit_filelock_unlimited/fa414a18: Creating the stage directory: /home/docs/che
ckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.l
ocal.bash/ulimits/ulimit_filelock_unlimited/fa414a18/stage
ulimit_filelock_unlimited/fa414a18: Writing build script: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_filelock_unlimited/fa414a18/ulimit_filelock_unlimited_build.sh
ulimit_cputime_unlimited/e6a86c62: Creating test directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_cputime_unlimited/e6a86c62
ulimit_cputime_unlimited/e6a86c62: Creating the stage directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.bash/ulimits/ulimit_cputime_unlimited/e6a86c62/stage
ulimit_cputime_unlimited/e6a86c62: Writing build script: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/ulimits/ulimit_cputime_unlimited/e6a86c62/ulimit_cputime_unlimited_build.sh
ulimit_stacksize_unlimited/a202fcb5: Creating test directory: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.bash/ulimits/ulimit_stacksize_unlimited/a202fcb5
ulimit_stacksize_unlimited/a202fcb5: Creating the stage directory: /home/docs/ch
eckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.
local.bash/ulimits/ulimit_stacksize_unlimited/a202fcb5/stage
ulimit_stacksize_unlimited/a202fcb5: Writing build script: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_stacksize_unlimited/a202fcb5/ulimit_stacksize_unlimited_build.
sh
ulimit_vmsize_unlimited/ccbe4861: Creating test directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_vmsize_unlimited/ccbe4861
ulimit_vmsize_unlimited/ccbe4861: Creating the stage directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.bash/ulimits/ulimit_vmsize_unlimited/ccbe4861/stage
ulimit_vmsize_unlimited/ccbe4861: Writing build script: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
ulimits/ulimit_vmsize_unlimited/ccbe4861/ulimit_vmsize_unlimited_build.sh
ulimit_filedescriptor_4096/9551e12b: Creating test directory: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.bash/ulimits/ulimit_filedescriptor_4096/9551e12b
ulimit_filedescriptor_4096/9551e12b: Creating the stage directory: /home/docs/ch
eckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.
local.bash/ulimits/ulimit_filedescriptor_4096/9551e12b/stage
ulimit_filedescriptor_4096/9551e12b: Writing build script: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_filedescriptor_4096/9551e12b/ulimit_filedescriptor_4096_build.
sh
ulimit_max_user_process_2048/8d1d97f8: Creating test directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.bash/ulimits/ulimit_max_user_process_2048/8d1d97f8
ulimit_max_user_process_2048/8d1d97f8: Creating the stage directory: /home/docs/
checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generi
c.local.bash/ulimits/ulimit_max_user_process_2048/8d1d97f8/stage
ulimit_max_user_process_2048/8d1d97f8: Writing build script: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/ulimits/ulimit_max_user_process_2048/8d1d97f8/ulimit_max_user_process_2048_
build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: kernel_swapusage/46d7bde8
______________________________
Launching test: root_disk_usage/7e67f36d
______________________________
Launching test: variables_bash/07ae87c1
______________________________
Launching test: systemd_default_target/bf3cdbae
______________________________
Launching test: ulimit_filelock_unlimited/fa414a18
______________________________
Launching test: ulimit_cputime_unlimited/e6a86c62
______________________________
Launching test: ulimit_stacksize_unlimited/a202fcb5
kernel_swapusage/46d7bde8: Running Test via command: bash --norc --noprofile -eo
pipefail kernel_swapusage_build.sh
______________________________
Launching test: ulimit_vmsize_unlimited/ccbe4861
______________________________
Launching test: ulimit_filedescriptor_4096/9551e12b
______________________________
Launching test: ulimit_max_user_process_2048/8d1d97f8
root_disk_usage/7e67f36d: Running Test via command: bash --norc --noprofile -eo 
pipefail root_disk_usage_build.sh
kernel_swapusage/46d7bde8: Test completed with returncode: 255
kernel_swapusage/46d7bde8: Test completed in 0.033598 seconds
kernel_swapusage/46d7bde8: Writing output file -  /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel
_state/kernel_swapusage/46d7bde8/kernel_swapusage.out
kernel_swapusage/46d7bde8: Writing error file - /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel_s
tate/kernel_swapusage/46d7bde8/kernel_swapusage.err
variables_bash/07ae87c1: Running Test via command: bash --norc --noprofile -eo 
pipefail variables_bash_build.sh
root_disk_usage/7e67f36d: Test completed with returncode: 0
root_disk_usage/7e67f36d: Test completed in 0.044782 seconds
root_disk_usage/7e67f36d: Writing output file -  /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_us
age/root_disk_usage/7e67f36d/root_disk_usage.out
root_disk_usage/7e67f36d: Writing error file - /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_usag
e/root_disk_usage/7e67f36d/root_disk_usage.err
systemd_default_target/bf3cdbae: Running Test via command: bash --norc 
--noprofile -eo pipefail systemd_default_target_build.sh
systemd_default_target/bf3cdbae: Test completed with returncode: 1
systemd_default_target/bf3cdbae: Test completed in 0.034522 seconds
systemd_default_target/bf3cdbae: Writing output file -  /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
systemd-default-target/systemd_default_target/bf3cdbae/systemd_default_target.ou
t
systemd_default_target/bf3cdbae: Writing error file - /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sy
stemd-default-target/systemd_default_target/bf3cdbae/systemd_default_target.err
variables_bash/07ae87c1: Test completed with returncode: 0
variables_bash/07ae87c1: Test completed in 0.054541 seconds
ulimit_filelock_unlimited/fa414a18: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_filelock_unlimited_build.sh
variables_bash/07ae87c1: Writing output file -  /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/var
iables_bash/07ae87c1/variables_bash.out
variables_bash/07ae87c1: Writing error file - /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/varia
bles_bash/07ae87c1/variables_bash.err
ulimit_cputime_unlimited/e6a86c62: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_cputime_unlimited_build.sh
ulimit_filelock_unlimited/fa414a18: Test completed with returncode: 0
ulimit_filelock_unlimited/fa414a18: Test completed in 0.024047 seconds
ulimit_filelock_unlimited/fa414a18: Writing output file -  /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/ulimits/ulimit_filelock_unlimited/fa414a18/ulimit_filelock_unlimited.out
ulimit_filelock_unlimited/fa414a18: Writing error file - /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/ulimits/ulimit_filelock_unlimited/fa414a18/ulimit_filelock_unlimited.err
ulimit_filelock_unlimited/fa414a18: performing regular expression - 
'^unlimited$' on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtes
t/checkouts/devel/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited
/fa414a18/ulimit_filelock_unlimited.out
ulimit_filelock_unlimited/fa414a18: Regular Expression Match - Success!
ulimit_cputime_unlimited/e6a86c62: Test completed with returncode: 0
ulimit_cputime_unlimited/e6a86c62: Test completed in 0.027567 seconds
ulimit_cputime_unlimited/e6a86c62: Writing output file -  /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_cputime_unlimited/e6a86c62/ulimit_cputime_unlimited.out
ulimit_cputime_unlimited/e6a86c62: Writing error file - /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
ulimits/ulimit_cputime_unlimited/e6a86c62/ulimit_cputime_unlimited.err
ulimit_stacksize_unlimited/a202fcb5: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_stacksize_unlimited_build.sh
ulimit_cputime_unlimited/e6a86c62: performing regular expression - '^unlimited$'
on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/de
vel/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/e6a86c62/ulimi
t_cputime_unlimited.out
ulimit_cputime_unlimited/e6a86c62: Regular Expression Match - Success!
ulimit_vmsize_unlimited/ccbe4861: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_vmsize_unlimited_build.sh
ulimit_stacksize_unlimited/a202fcb5: Test completed with returncode: 0
ulimit_stacksize_unlimited/a202fcb5: Test completed in 0.01887 seconds
ulimit_vmsize_unlimited/ccbe4861: Test completed with returncode: 0
ulimit_vmsize_unlimited/ccbe4861: Test completed in 0.010286 seconds
ulimit_stacksize_unlimited/a202fcb5: Writing output file -  /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_stacksize_unlimited/a202fcb5/ulimit_stacksize_unlimited.out
ulimit_stacksize_unlimited/a202fcb5: Writing error file - /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_stacksize_unlimited/a202fcb5/ulimit_stacksize_unlimited.err
ulimit_vmsize_unlimited/ccbe4861: Writing output file -  /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/ulimits/ulimit_vmsize_unlimited/ccbe4861/ulimit_vmsize_unlimited.out
ulimit_stacksize_unlimited/a202fcb5: performing regular expression - 
'^unlimited$' on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtes
t/checkouts/devel/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimite
d/a202fcb5/ulimit_stacksize_unlimited.out
ulimit_vmsize_unlimited/ccbe4861: Writing error file - /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/u
limits/ulimit_vmsize_unlimited/ccbe4861/ulimit_vmsize_unlimited.err
ulimit_stacksize_unlimited/a202fcb5: Regular Expression Match - Failed!
ulimit_vmsize_unlimited/ccbe4861: performing regular expression - '^unlimited$' 
on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/de
vel/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/ccbe4861/ulimit
_vmsize_unlimited.out
ulimit_vmsize_unlimited/ccbe4861: Regular Expression Match - Success!
ulimit_filedescriptor_4096/9551e12b: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_filedescriptor_4096_build.sh
ulimit_max_user_process_2048/8d1d97f8: Running Test via command: bash --norc 
--noprofile -eo pipefail ulimit_max_user_process_2048_build.sh
ulimit_filedescriptor_4096/9551e12b: Test completed with returncode: 0
ulimit_filedescriptor_4096/9551e12b: Test completed in 0.023537 seconds
ulimit_filedescriptor_4096/9551e12b: Writing output file -  /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_filedescriptor_4096/9551e12b/ulimit_filedescriptor_4096.out
ulimit_filedescriptor_4096/9551e12b: Writing error file - /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/ulimits/ulimit_filedescriptor_4096/9551e12b/ulimit_filedescriptor_4096.err
ulimit_max_user_process_2048/8d1d97f8: Test completed with returncode: 0
ulimit_filedescriptor_4096/9551e12b: performing regular expression - '^4096$' on
file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel
/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/9551e12b/ulimit
_filedescriptor_4096.out
ulimit_max_user_process_2048/8d1d97f8: Test completed in 0.022809 seconds
ulimit_filedescriptor_4096/9551e12b: Regular Expression Match - Failed!
ulimit_max_user_process_2048/8d1d97f8: Writing output file -  /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.bash/ulimits/ulimit_max_user_process_2048/8d1d97f8/ulimit_max_user_process_2048
.out
ulimit_max_user_process_2048/8d1d97f8: Writing error file - /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/ulimits/ulimit_max_user_process_2048/8d1d97f8/ulimit_max_user_process_2048.e
rr
ulimit_max_user_process_2048/8d1d97f8: performing regular expression - '^2048$' 
on file: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/de
vel/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/8d1d97f8/u
limit_max_user_process_2048.out
ulimit_max_user_process_2048/8d1d97f8: Regular Expression Match - Failed!
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ kernel_swapu │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 255        │ 0.033598 │
│ sage/46d7bde │              │        │               │            │          │
│ 8            │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ root_disk_us │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.044782 │
│ age/7e67f36d │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ variables_ba │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.054541 │
│ sh/07ae87c1  │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ systemd_defa │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 0.034522 │
│ ult_target/b │              │        │               │            │          │
│ f3cdbae      │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_filel │ generic.loc… │ PASS   │ False True    │ 0          │ 0.024047 │
│ ock_unlimite │              │        │ False         │            │          │
│ d/fa414a18   │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_cputi │ generic.loc… │ PASS   │ False True    │ 0          │ 0.027567 │
│ me_unlimited │              │        │ False         │            │          │
│ /e6a86c62    │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_stack │ generic.loc… │ FAIL   │ False False   │ 0          │ 0.01887  │
│ size_unlimit │              │        │ False         │            │          │
│ ed/a202fcb5  │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_vmsiz │ generic.loc… │ PASS   │ False True    │ 0          │ 0.010286 │
│ e_unlimited/ │              │        │ False         │            │          │
│ ccbe4861     │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_filed │ generic.loc… │ FAIL   │ False False   │ 0          │ 0.023537 │
│ escriptor_40 │              │        │ False         │            │          │
│ 96/9551e12b  │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ ulimit_max_u │ generic.loc… │ FAIL   │ False False   │ 0          │ 0.022809 │
│ ser_process_ │              │        │ False         │            │          │
│ 2048/8d1d97f │              │        │               │            │          │
│ 8            │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 5/10 Percentage: 50.000%
Failed Tests: 5/10 Percentage: 50.000%


Adding 10 test results to /home/docs/checkouts/readthedocs.org/user_builds/build
test/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_1yezy45f.log

Excluding Buildspecs

So far we learned how to build buildspecs by file and directory path using the -b option. Next, we will discuss how one may exclude buildspecs which behaves similar to -b option. You can exclude buildspecs via --exclude or short option -x which can be useful when you want to exclude certain files or sub directory.

For example we can build all buildspecs in tutorials but exclude file tutorials/vars.yml by running:

$ buildtest build -b tutorials -x tutorials/vars.yml

buildtest will discover all buildspecs and then exclude any buildspecs specified by -x option. You can specify -x multiple times just like -b option.

For example, we can undo discovery by passing same option to -b and -x as follows

$ buildtest bd -b tutorials/ -x tutorials/
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:17                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest bd -b tutorials/ -x tutorials/              │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
There are no Buildspec files to process.

Buildtest will stop immediately if there are no Buildspecs to process, this is true if you were to specify files instead of directory.

In this example, we build all buildspecs in a directory but exclude a file. Buildtest will report the excluded buildspecs in the output and -x option can be appended multiple times. The -x can be a file or a directory and behaves similar to -b option.

$ buildtest bd -b general_tests/configuration/ -x general_tests/configuration/ulimits.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:18                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest bd -b general_tests/configuration/ -x       │
│ general_tests/configuration/ulimits.yml                                      │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  4
Excluded Buildspecs:  1
Detected Buildspecs after exclusion:  3
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                              Excluded buildspecs                               
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 3
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/kernel_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/disk_usage.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/gener
al_tests/configuration/systemd-default-target.yml: VALID
Total builder objects created: 3
Total compiler builder: 0
Total script builder: 3
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ kernel_swapusage/ │ generic.local.bas │ Retrieve Kernel  │ /home/docs/checko │
│ beb275be          │ h                 │ Swap Usage       │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /kernel_state.yml │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ root_disk_usage/1 │ generic.local.bas │ Check root disk  │ /home/docs/checko │
│ 2aaaf73           │ h                 │ usage and report │ uts/readthedocs.o │
│                   │                   │ if it exceeds    │ rg/user_builds/bu │
│                   │                   │ threshold        │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /disk_usage.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ systemd_default_t │ generic.local.bas │ check if default │ /home/docs/checko │
│ arget/7c4de20e    │ h                 │ target is multi- │ uts/readthedocs.o │
│                   │                   │ user.target      │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/general_te │
│                   │                   │                  │ sts/configuration │
│                   │                   │                  │ /systemd-default- │
│                   │                   │                  │ target.yml        │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
kernel_swapusage/beb275be: Creating test directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kern
el_state/kernel_swapusage/beb275be
kernel_swapusage/beb275be: Creating the stage directory: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/kernel_state/kernel_swapusage/beb275be/stage
kernel_swapusage/beb275be: Writing build script: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel_
state/kernel_swapusage/beb275be/kernel_swapusage_build.sh
root_disk_usage/12aaaf73: Creating test directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_
usage/root_disk_usage/12aaaf73
root_disk_usage/12aaaf73: Creating the stage directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
disk_usage/root_disk_usage/12aaaf73/stage
root_disk_usage/12aaaf73: Writing build script: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_usa
ge/root_disk_usage/12aaaf73/root_disk_usage_build.sh
systemd_default_target/7c4de20e: Creating test directory: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/systemd-default-target/systemd_default_target/7c4de20e
systemd_default_target/7c4de20e: Creating the stage directory: /home/docs/checko
uts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loca
l.bash/systemd-default-target/systemd_default_target/7c4de20e/stage
systemd_default_target/7c4de20e: Writing build script: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/s
ystemd-default-target/systemd_default_target/7c4de20e/systemd_default_target_bui
ld.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: kernel_swapusage/beb275be
______________________________
Launching test: root_disk_usage/12aaaf73
______________________________
Launching test: systemd_default_target/7c4de20e
root_disk_usage/12aaaf73: Running Test via command: bash --norc --noprofile -eo 
pipefail root_disk_usage_build.sh
kernel_swapusage/beb275be: Running Test via command: bash --norc --noprofile -eo
pipefail kernel_swapusage_build.sh
kernel_swapusage/beb275be: Test completed with returncode: 255
root_disk_usage/12aaaf73: Test completed with returncode: 0
root_disk_usage/12aaaf73: Test completed in 0.039551 seconds
kernel_swapusage/beb275be: Test completed in 0.039575 seconds
root_disk_usage/12aaaf73: Writing output file -  /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_us
age/root_disk_usage/12aaaf73/root_disk_usage.out
kernel_swapusage/beb275be: Writing output file -  /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel
_state/kernel_swapusage/beb275be/kernel_swapusage.out
kernel_swapusage/beb275be: Writing error file - /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/kernel_s
tate/kernel_swapusage/beb275be/kernel_swapusage.err
root_disk_usage/12aaaf73: Writing error file - /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/disk_usag
e/root_disk_usage/12aaaf73/root_disk_usage.err
systemd_default_target/7c4de20e: Running Test via command: bash --norc 
--noprofile -eo pipefail systemd_default_target_build.sh
systemd_default_target/7c4de20e: Test completed with returncode: 1
systemd_default_target/7c4de20e: Test completed in 0.010703 seconds
systemd_default_target/7c4de20e: Writing output file -  /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
systemd-default-target/systemd_default_target/7c4de20e/systemd_default_target.ou
t
systemd_default_target/7c4de20e: Writing error file - /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sy
stemd-default-target/systemd_default_target/7c4de20e/systemd_default_target.err
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ kernel_swapu │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 255        │ 0.039575 │
│ sage/beb275b │              │        │               │            │          │
│ e            │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ root_disk_us │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.039551 │
│ age/12aaaf73 │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ systemd_defa │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 0.010703 │
│ ult_target/7 │              │        │               │            │          │
│ c4de20e      │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 1/3 Percentage: 33.333%
Failed Tests: 2/3 Percentage: 66.667%


Adding 3 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_dy3uqet8.log

Building By Tags

buildtest can perform builds by tags by using --tags or short option (-t). In order to use this feature, buildtest must load buildspecs in cache which can be run via buildtest buildspec find. If you are unsure of the available tags you can run buildtest buildspec find --tags or let buildtest tab-complete the available tags. For more details see Querying buildspec tags.

Let’s assume you want to build by tag name network, buildtest will attempt to find all tests that contain tags: ['network'] in the buildspec which is loaded in the buildcache cache. If a test matches the tag name, the test will be picked up during the discover process.

$ buildtest build -t network
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:18                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -t network                            │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                           Buildspecs By Tag=network                            
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║  /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/tags_example.yml: VALID
Total builder objects created: 2
Total compiler builder: 0
Total script builder: 2
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ string_tag/254aa1 │ generic.local.bas │ tags can be a    │ /home/docs/checko │
│ 8c                │ h                 │ string           │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ tags_example.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ list_of_strings_t │ generic.local.bas │ tags can be a    │ /home/docs/checko │
│ ags/03fee11d      │ h                 │ list of strings  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ tags_example.yml  │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
string_tag/254aa18c: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_examp
le/string_tag/254aa18c
string_tag/254aa18c: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_
example/string_tag/254aa18c/stage
string_tag/254aa18c: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_example/
string_tag/254aa18c/string_tag_build.sh
list_of_strings_tags/03fee11d: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
tags_example/list_of_strings_tags/03fee11d
list_of_strings_tags/03fee11d: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/tags_example/list_of_strings_tags/03fee11d/stage
list_of_strings_tags/03fee11d: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tag
s_example/list_of_strings_tags/03fee11d/list_of_strings_tags_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: string_tag/254aa18c
______________________________
Launching test: list_of_strings_tags/03fee11d
string_tag/254aa18c: Running Test via command: bash --norc --noprofile -eo 
pipefail string_tag_build.sh
list_of_strings_tags/03fee11d: Running Test via command: bash --norc --noprofile
-eo pipefail list_of_strings_tags_build.sh
string_tag/254aa18c: Test completed with returncode: 0
string_tag/254aa18c: Test completed in 0.037129 seconds
string_tag/254aa18c: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_example
/string_tag/254aa18c/string_tag.out
string_tag/254aa18c: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_example/s
tring_tag/254aa18c/string_tag.err
list_of_strings_tags/03fee11d: Test completed with returncode: 0
list_of_strings_tags/03fee11d: Test completed in 3.053272 seconds
list_of_strings_tags/03fee11d: Writing output file -  /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/ta
gs_example/list_of_strings_tags/03fee11d/list_of_strings_tags.out
list_of_strings_tags/03fee11d: Writing error file - /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags
_example/list_of_strings_tags/03fee11d/list_of_strings_tags.err
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ string_tag/2 │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.037129 │
│ 54aa18c      │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ list_of_stri │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 3.053272 │
│ ngs_tags/03f │              │        │               │            │          │
│ ee11d        │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 2/2 Percentage: 100.000%
Failed Tests: 0/2 Percentage: 0.000%


Adding 2 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_b77krccb.log

You can build by multiple tags by specifying --tags multiple times. In next example we build all tests with tag name pass and python.

$ buildtest build -t python -t pass
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:22                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -t python -t pass                     │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  3
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  3
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                            Buildspecs By Tag=python                            
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║  /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel… ║
║  /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                             Buildspecs By Tag=pass                             
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║  /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 3
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/pass_returncode.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-hello.yml: VALID
Total builder objects created: 6
Total compiler builder: 0
Total script builder: 6
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ exit1_fail/52160d │ generic.local.bas │ exit 1 by        │ /home/docs/checko │
│ c2                │ h                 │ default is FAIL  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_pass/954eb9 │ generic.local.bas │ report exit 1 as │ /home/docs/checko │
│ 60                │ h                 │ PASS             │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_list_m │ generic.local.bas │ exit 2 failed    │ /home/docs/checko │
│ ismatch/a8b8865f  │ h                 │ since it failed  │ uts/readthedocs.o │
│                   │                   │ to match         │ rg/user_builds/bu │
│                   │                   │ returncode 1     │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_int_ma │ generic.local.bas │ exit 128 matches │ /home/docs/checko │
│ tch/63a936a3      │ h                 │ returncode 128   │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ circle_area/6d49c │ generic.local.bas │ Calculate circle │ /home/docs/checko │
│ 918               │ h                 │ of area given a  │ uts/readthedocs.o │
│                   │                   │ radius           │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-shell.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ python_hello/f1d1 │ generic.local.bas │ Hello World      │ /home/docs/checko │
│ 87ec              │ h                 │ python           │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-hello.yml  │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
exit1_fail/52160dc2: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_fail/52160dc2
exit1_fail/52160dc2: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_fail/52160dc2/stage
exit1_fail/52160dc2: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_fail/52160dc2/exit1_fail_build.sh
exit1_pass/954eb960: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_pass/954eb960
exit1_pass/954eb960: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_pass/954eb960/stage
exit1_pass/954eb960: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_pass/954eb960/exit1_pass_build.sh
returncode_list_mismatch/a8b8865f: Creating test directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/pass_returncode/returncode_list_mismatch/a8b8865f
returncode_list_mismatch/a8b8865f: Creating the stage directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.bash/pass_returncode/returncode_list_mismatch/a8b8865f/stage
returncode_list_mismatch/a8b8865f: Writing build script: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/pass_returncode/returncode_list_mismatch/a8b8865f/returncode_list_mismatch_buil
d.sh
returncode_int_match/63a936a3: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_int_match/63a936a3
returncode_int_match/63a936a3: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/pass_returncode/returncode_int_match/63a936a3/stage
returncode_int_match/63a936a3: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pas
s_returncode/returncode_int_match/63a936a3/returncode_int_match_build.sh
circle_area/6d49c918: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-sh
ell/circle_area/6d49c918
circle_area/6d49c918: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyth
on-shell/circle_area/6d49c918/stage
circle_area/6d49c918: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell
/circle_area/6d49c918/circle_area_build.sh
python_hello/f1d187ec: Creating test directory: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-h
ello/python_hello/f1d187ec
python_hello/f1d187ec: Creating the stage directory: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyt
hon-hello/python_hello/f1d187ec/stage
python_hello/f1d187ec: Writing build script: /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-hell
o/python_hello/f1d187ec/python_hello_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: exit1_fail/52160dc2
______________________________
Launching test: exit1_pass/954eb960
______________________________
Launching test: returncode_list_mismatch/a8b8865f
______________________________
Launching test: returncode_int_match/63a936a3
______________________________
Launching test: circle_area/6d49c918
______________________________
Launching test: python_hello/f1d187ec
exit1_fail/52160dc2: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_fail_build.sh
exit1_pass/954eb960: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_pass_build.sh
exit1_pass/954eb960: Test completed with returncode: 1
exit1_fail/52160dc2: Test completed with returncode: 1
exit1_pass/954eb960: Test completed in 0.023245 seconds
exit1_fail/52160dc2: Test completed in 0.025476 seconds
exit1_fail/52160dc2: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_fail/52160dc2/exit1_fail.out
exit1_pass/954eb960: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_pass/954eb960/exit1_pass.out
exit1_fail/52160dc2: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_fail/52160dc2/exit1_fail.err
exit1_pass/954eb960: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_pass/954eb960/exit1_pass.err
exit1_pass/954eb960: Checking returncode - 1 is matched in list [1]
returncode_list_mismatch/a8b8865f: Running Test via command: bash --norc 
--noprofile -eo pipefail returncode_list_mismatch_build.sh
returncode_int_match/63a936a3: Running Test via command: bash --norc --noprofile
-eo pipefail returncode_int_match_build.sh
returncode_int_match/63a936a3: Test completed with returncode: 128
returncode_list_mismatch/a8b8865f: Test completed with returncode: 2
returncode_int_match/63a936a3: Test completed in 0.024514 seconds
returncode_list_mismatch/a8b8865f: Test completed in 0.025018 seconds
returncode_list_mismatch/a8b8865f: Writing output file -  /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/pass_returncode/returncode_list_mismatch/a8b8865f/returncode_list_mismatch.out
returncode_int_match/63a936a3: Writing output file -  /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pa
ss_returncode/returncode_int_match/63a936a3/returncode_int_match.out
returncode_list_mismatch/a8b8865f: Writing error file - /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_list_mismatch/a8b8865f/returncode_list_mismatch.err
returncode_int_match/63a936a3: Writing error file - /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass
_returncode/returncode_int_match/63a936a3/returncode_int_match.err
returncode_int_match/63a936a3: Checking returncode - 128 is matched in list 
[128]
returncode_list_mismatch/a8b8865f: Checking returncode - 2 is matched in list 
[1, 3]
circle_area/6d49c918: Running Test via command: bash --norc --noprofile -eo 
pipefail circle_area_build.sh
python_hello/f1d187ec: Running Test via command: bash --norc --noprofile -eo 
pipefail python_hello_build.sh
circle_area/6d49c918: Test completed with returncode: 0
python_hello/f1d187ec: Test completed with returncode: 0
circle_area/6d49c918: Test completed in 0.104797 seconds
python_hello/f1d187ec: Test completed in 0.104296 seconds
circle_area/6d49c918: Writing output file -  /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shel
l/circle_area/6d49c918/circle_area.out
python_hello/f1d187ec: Writing output file -  /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-hel
lo/python_hello/f1d187ec/python_hello.out
circle_area/6d49c918: Writing error file - /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell/
circle_area/6d49c918/circle_area.err
python_hello/f1d187ec: Writing error file - /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-hello
/python_hello/f1d187ec/python_hello.err
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ exit1_fail/5 │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 0.025476 │
│ 2160dc2      │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ exit1_pass/9 │ generic.loc… │ PASS   │ True False    │ 1          │ 0.023245 │
│ 54eb960      │              │        │ False         │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_l │ generic.loc… │ FAIL   │ False False   │ 2          │ 0.025018 │
│ ist_mismatch │              │        │ False         │            │          │
│ /a8b8865f    │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_i │ generic.loc… │ PASS   │ True False    │ 128        │ 0.024514 │
│ nt_match/63a │              │        │ False         │            │          │
│ 936a3        │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ python_hello │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.104296 │
│ /f1d187ec    │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ circle_area/ │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.104797 │
│ 6d49c918     │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 4/6 Percentage: 66.667%
Failed Tests: 2/6 Percentage: 33.333%


Adding 6 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_rk4oqtka.log

When multiple tags are specified, we search each tag independently and if it’s found in the buildspec cache we retrieve the buildspec file and add file to queue. This queue is a list of buildspecs that buildtest will process (i.e parse, build, run). You can query tags from buildspecs cache to see all available tags by running buildtest buildspec find --tags.

Note

The --tags is used for discovering buildspec file and not filtering tests by tag.

You can combine --tags with --buildspec to discover buildspecs in a single command. buildtest will query tags and buildspecs independently and combine all discovered buildspecs together.

$ buildtest build --tags pass --buildspec tutorials/python-hello.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:23                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build --tags pass --buildspec               │
│ tutorials/python-hello.yml                                                   │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  2
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  2
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                             Buildspecs By Tag=pass                             
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║  /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 2
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-hello.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/pass_returncode.yml: VALID
Total builder objects created: 5
Total compiler builder: 0
Total script builder: 5
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ python_hello/3f4d │ generic.local.bas │ Hello World      │ /home/docs/checko │
│ 8f5c              │ h                 │ python           │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-hello.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_fail/f8b44e │ generic.local.bas │ exit 1 by        │ /home/docs/checko │
│ ca                │ h                 │ default is FAIL  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_pass/3119f7 │ generic.local.bas │ report exit 1 as │ /home/docs/checko │
│ 83                │ h                 │ PASS             │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_list_m │ generic.local.bas │ exit 2 failed    │ /home/docs/checko │
│ ismatch/97e3c23d  │ h                 │ since it failed  │ uts/readthedocs.o │
│                   │                   │ to match         │ rg/user_builds/bu │
│                   │                   │ returncode 1     │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_int_ma │ generic.local.bas │ exit 128 matches │ /home/docs/checko │
│ tch/2016ee4e      │ h                 │ returncode 128   │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
python_hello/3f4d8f5c: Creating test directory: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-h
ello/python_hello/3f4d8f5c
python_hello/3f4d8f5c: Creating the stage directory: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyt
hon-hello/python_hello/3f4d8f5c/stage
python_hello/3f4d8f5c: Writing build script: /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-hell
o/python_hello/3f4d8f5c/python_hello_build.sh
exit1_fail/f8b44eca: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_fail/f8b44eca
exit1_fail/f8b44eca: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_fail/f8b44eca/stage
exit1_fail/f8b44eca: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_fail/f8b44eca/exit1_fail_build.sh
exit1_pass/3119f783: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_pass/3119f783
exit1_pass/3119f783: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_pass/3119f783/stage
exit1_pass/3119f783: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_pass/3119f783/exit1_pass_build.sh
returncode_list_mismatch/97e3c23d: Creating test directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/pass_returncode/returncode_list_mismatch/97e3c23d
returncode_list_mismatch/97e3c23d: Creating the stage directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.bash/pass_returncode/returncode_list_mismatch/97e3c23d/stage
returncode_list_mismatch/97e3c23d: Writing build script: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/pass_returncode/returncode_list_mismatch/97e3c23d/returncode_list_mismatch_buil
d.sh
returncode_int_match/2016ee4e: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_int_match/2016ee4e
returncode_int_match/2016ee4e: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/pass_returncode/returncode_int_match/2016ee4e/stage
returncode_int_match/2016ee4e: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pas
s_returncode/returncode_int_match/2016ee4e/returncode_int_match_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: python_hello/3f4d8f5c
______________________________
Launching test: exit1_fail/f8b44eca
______________________________
Launching test: exit1_pass/3119f783
______________________________
Launching test: returncode_list_mismatch/97e3c23d
______________________________
Launching test: returncode_int_match/2016ee4e
python_hello/3f4d8f5c: Running Test via command: bash --norc --noprofile -eo 
pipefail python_hello_build.sh
exit1_fail/f8b44eca: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_fail_build.sh
exit1_fail/f8b44eca: Test completed with returncode: 1
exit1_fail/f8b44eca: Test completed in 0.018843 seconds
exit1_fail/f8b44eca: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_fail/f8b44eca/exit1_fail.out
exit1_fail/f8b44eca: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_fail/f8b44eca/exit1_fail.err
exit1_pass/3119f783: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_pass_build.sh
exit1_pass/3119f783: Test completed with returncode: 1
exit1_pass/3119f783: Test completed in 0.041027 seconds
exit1_pass/3119f783: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_pass/3119f783/exit1_pass.out
exit1_pass/3119f783: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_pass/3119f783/exit1_pass.err
exit1_pass/3119f783: Checking returncode - 1 is matched in list [1]
returncode_list_mismatch/97e3c23d: Running Test via command: bash --norc 
--noprofile -eo pipefail returncode_list_mismatch_build.sh
python_hello/3f4d8f5c: Test completed with returncode: 0
python_hello/3f4d8f5c: Test completed in 0.092576 seconds
python_hello/3f4d8f5c: Writing output file -  /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-hel
lo/python_hello/3f4d8f5c/python_hello.out
python_hello/3f4d8f5c: Writing error file - /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-hello
/python_hello/3f4d8f5c/python_hello.err
returncode_int_match/2016ee4e: Running Test via command: bash --norc --noprofile
-eo pipefail returncode_int_match_build.sh
returncode_list_mismatch/97e3c23d: Test completed with returncode: 2
returncode_list_mismatch/97e3c23d: Test completed in 0.021339 seconds
returncode_list_mismatch/97e3c23d: Writing output file -  /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/pass_returncode/returncode_list_mismatch/97e3c23d/returncode_list_mismatch.out
returncode_list_mismatch/97e3c23d: Writing error file - /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_list_mismatch/97e3c23d/returncode_list_mismatch.err
returncode_list_mismatch/97e3c23d: Checking returncode - 2 is matched in list 
[1, 3]
returncode_int_match/2016ee4e: Test completed with returncode: 128
returncode_int_match/2016ee4e: Test completed in 0.022588 seconds
returncode_int_match/2016ee4e: Writing output file -  /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pa
ss_returncode/returncode_int_match/2016ee4e/returncode_int_match.out
returncode_int_match/2016ee4e: Writing error file - /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass
_returncode/returncode_int_match/2016ee4e/returncode_int_match.err
returncode_int_match/2016ee4e: Checking returncode - 128 is matched in list 
[128]
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ exit1_fail/f │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 0.018843 │
│ 8b44eca      │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ exit1_pass/3 │ generic.loc… │ PASS   │ True False    │ 1          │ 0.041027 │
│ 119f783      │              │        │ False         │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_l │ generic.loc… │ FAIL   │ False False   │ 2          │ 0.021339 │
│ ist_mismatch │              │        │ False         │            │          │
│ /97e3c23d    │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_i │ generic.loc… │ PASS   │ True False    │ 128        │ 0.022588 │
│ nt_match/201 │              │        │ False         │            │          │
│ 6ee4e        │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ python_hello │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.092576 │
│ /3f4d8f5c    │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 3/5 Percentage: 60.000%
Failed Tests: 2/5 Percentage: 40.000%


Adding 5 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_burg5j6f.log

As you may see, there are several ways to build buildspecs with buildtest. Tags is great way to build a whole collection of tests if you don’t know path to all the files. You can specify multiple tags per buildspecs to classify how test can be run.

Building by Executors

Every buildspec is associated to an executor which is responsible for running the test. You can instruct buildtest to run all tests by given executor via --executor option or short option -e. For instance, if you want to build all test associated to executor generic.local.csh you can run:

$ buildtest build --executor generic.local.csh

buildtest will query buildspec cache for the executor name and retrieve a list of buildspecs with matching executor name. To see a list of available executors in buildspec cache see querying buildspec executor.

Note

By default all tests are run in buildspec file. The buildtest build --executor option discovers buildspecs if one of the test matches the executor name. The --executor option is not filtering tests but only discovering buildspecs.

In this example we run all tests that are associated to generic.local.csh executor.

$ buildtest build --executor generic.local.csh
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:23                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build --executor generic.local.csh          │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  2
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  2
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                    Buildspecs by Executor=generic.local.csh                    
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 2
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/environment.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/csh_shell_examples.yml: VALID
Total builder objects created: 4
Total compiler builder: 0
Total script builder: 4
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ bash_env_variable │ generic.local.bas │ Declare          │ /home/docs/checko │
│ s/544668da        │ h                 │ environment      │ uts/readthedocs.o │
│                   │                   │ variables in     │ rg/user_builds/bu │
│                   │                   │ default shell    │ ildtest/checkouts │
│                   │                   │ (bash)           │ /devel/tutorials/ │
│                   │                   │                  │ environment.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ csh_env_declarati │ generic.local.csh │ csh shell        │ /home/docs/checko │
│ on/94eb2efb       │                   │ example to       │ uts/readthedocs.o │
│                   │                   │ declare          │ rg/user_builds/bu │
│                   │                   │ environment      │ ildtest/checkouts │
│                   │                   │ variables        │ /devel/tutorials/ │
│                   │                   │                  │ environment.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ tcsh_env_declarat │ generic.local.csh │ tcsh shell       │ /home/docs/checko │
│ ion/a0bbaf41      │                   │ example to       │ uts/readthedocs.o │
│                   │                   │ declare          │ rg/user_builds/bu │
│                   │                   │ environment      │ ildtest/checkouts │
│                   │                   │ variables        │ /devel/tutorials/ │
│                   │                   │                  │ environment.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ csh_shell/ff4ce17 │ generic.local.csh │ csh shell        │ /home/docs/checko │
│ 1                 │                   │ example          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ csh_shell_example │
│                   │                   │                  │ s.yml             │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
bash_env_variables/544668da: Creating test directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/en
vironment/bash_env_variables/544668da
bash_env_variables/544668da: Creating the stage directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/environment/bash_env_variables/544668da/stage
bash_env_variables/544668da: Writing build script: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/envir
onment/bash_env_variables/544668da/bash_env_variables_build.sh
csh_env_declaration/94eb2efb: Creating test directory: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/en
vironment/csh_env_declaration/94eb2efb
csh_env_declaration/94eb2efb: Creating the stage directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.c
sh/environment/csh_env_declaration/94eb2efb/stage
csh_env_declaration/94eb2efb: Writing build script: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/envir
onment/csh_env_declaration/94eb2efb/csh_env_declaration_build.sh
tcsh_env_declaration/a0bbaf41: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/e
nvironment/tcsh_env_declaration/a0bbaf41
tcsh_env_declaration/a0bbaf41: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
csh/environment/tcsh_env_declaration/a0bbaf41/stage
tcsh_env_declaration/a0bbaf41: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/envi
ronment/tcsh_env_declaration/a0bbaf41/tcsh_env_declaration_build.sh
csh_shell/ff4ce171: Creating test directory: /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_shell_ex
amples/csh_shell/ff4ce171
csh_shell/ff4ce171: Creating the stage directory: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_she
ll_examples/csh_shell/ff4ce171/stage
csh_shell/ff4ce171: Writing build script: /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_shell_examp
les/csh_shell/ff4ce171/csh_shell_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: bash_env_variables/544668da
______________________________
Launching test: csh_env_declaration/94eb2efb
______________________________
Launching test: tcsh_env_declaration/a0bbaf41
______________________________
Launching test: csh_shell/ff4ce171
bash_env_variables/544668da: Running Test via command: bash --norc --noprofile 
-eo pipefail bash_env_variables_build.sh
csh_env_declaration/94eb2efb: Running Test via command: csh -e 
csh_env_declaration_build.sh
bash_env_variables/544668da: Test completed with returncode: 0
bash_env_variables/544668da: Test completed in 0.040881 seconds
bash_env_variables/544668da: Writing output file -  /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/envi
ronment/bash_env_variables/544668da/bash_env_variables.out
bash_env_variables/544668da: Writing error file - /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/enviro
nment/bash_env_variables/544668da/bash_env_variables.err
tcsh_env_declaration/a0bbaf41: Running Test via command: csh -e 
tcsh_env_declaration_build.sh
tcsh_env_declaration/a0bbaf41: Test completed with returncode: 1
csh_env_declaration/94eb2efb: Test completed with returncode: 1
csh_env_declaration/94eb2efb: Test completed in 4.995085 seconds
tcsh_env_declaration/a0bbaf41: Test completed in 4.944123 seconds
tcsh_env_declaration/a0bbaf41: Writing output file -  /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/env
ironment/tcsh_env_declaration/a0bbaf41/tcsh_env_declaration.out
csh_env_declaration/94eb2efb: Writing output file -  /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/envi
ronment/csh_env_declaration/94eb2efb/csh_env_declaration.out
tcsh_env_declaration/a0bbaf41: Writing error file - /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/envir
onment/tcsh_env_declaration/a0bbaf41/tcsh_env_declaration.err
csh_env_declaration/94eb2efb: Writing error file - /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/enviro
nment/csh_env_declaration/94eb2efb/csh_env_declaration.err
csh_shell/ff4ce171: Running Test via command: csh -e csh_shell_build.sh
csh_shell/ff4ce171: Test completed with returncode: 1
csh_shell/ff4ce171: Test completed in 2.277562 seconds
csh_shell/ff4ce171: Writing output file -  /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_shell_exam
ples/csh_shell/ff4ce171/csh_shell.out
csh_shell/ff4ce171: Writing error file - /home/docs/checkouts/readthedocs.org/us
er_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_shell_exampl
es/csh_shell/ff4ce171/csh_shell.err
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ bash_env_var │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.040881 │
│ iables/54466 │              │        │               │            │          │
│ 8da          │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ tcsh_env_dec │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 4.944123 │
│ laration/a0b │              │        │               │            │          │
│ baf41        │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ csh_env_decl │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 4.995085 │
│ aration/94eb │              │        │               │            │          │
│ 2efb         │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ csh_shell/ff │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 2.277562 │
│ 4ce171       │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 1/4 Percentage: 25.000%
Failed Tests: 3/4 Percentage: 75.000%


Adding 4 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_h4bjht7p.log

Note

The --executor option can be appended to discover tests by multiple executors.

Filtering Buildspecs

buildtest has support for filtering buildspecs based on certain attributes defined in buildspec file. Upon Discover Buildspecs, buildtest will filter out tests or entire buildspec files. The buildtest build --filter option can be used to filter buildspecs which expects a single key=value pair. Currently, buildtest can filter tests based on tags, type and maintainers.

To see all available filter fields you can run buildtest build --helpfilter and buildtest will report the fields followed by description.

$ buildtest build --helpfilter
                 Buildtest Filters                  
┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Field       ┃ Description                        ┃
┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ tags        │ Filter tests by 'tag' field        │
│ type        │ Filter test by 'type' field        │
│ maintainers │ Filter test by 'maintainers' field │
└─────────────┴────────────────────────────────────┘

In this example, we will discover all buildspecs based on tagname pass and then filter each test by tagname pass specified by --filter tags=pass.

$ buildtest build -t pass --filter tags=pass
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:32                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -t pass --filter tags=pass            │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                             Buildspecs By Tag=pass                             
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║  /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
[exit1_fail][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutorials/pass_returncode.yml]: test is skipped because it is not in tag filter list: {'tags': 'pass'}
[returncode_list_mismatch][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutorials/pass_returncode.yml]: test is skipped because it is not in tag filter list: {'tags': 'pass'}
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/pass_returncode.yml: VALID
Total builder objects created: 2
Total compiler builder: 0
Total script builder: 2
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ exit1_pass/0b55b7 │ generic.local.bas │ report exit 1 as │ /home/docs/checko │
│ 79                │ h                 │ PASS             │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_int_ma │ generic.local.bas │ exit 128 matches │ /home/docs/checko │
│ tch/961e6dd5      │ h                 │ returncode 128   │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
exit1_pass/0b55b779: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_pass/0b55b779
exit1_pass/0b55b779: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_pass/0b55b779/stage
exit1_pass/0b55b779: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_pass/0b55b779/exit1_pass_build.sh
returncode_int_match/961e6dd5: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_int_match/961e6dd5
returncode_int_match/961e6dd5: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/pass_returncode/returncode_int_match/961e6dd5/stage
returncode_int_match/961e6dd5: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pas
s_returncode/returncode_int_match/961e6dd5/returncode_int_match_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: exit1_pass/0b55b779
______________________________
Launching test: returncode_int_match/961e6dd5
returncode_int_match/961e6dd5: Running Test via command: bash --norc --noprofile
-eo pipefail returncode_int_match_build.sh
exit1_pass/0b55b779: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_pass_build.sh
exit1_pass/0b55b779: Test completed with returncode: 1
exit1_pass/0b55b779: Test completed in 0.008886 seconds
returncode_int_match/961e6dd5: Test completed with returncode: 128
returncode_int_match/961e6dd5: Test completed in 0.012207 seconds
exit1_pass/0b55b779: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_pass/0b55b779/exit1_pass.out
exit1_pass/0b55b779: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_pass/0b55b779/exit1_pass.err
returncode_int_match/961e6dd5: Writing output file -  /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pa
ss_returncode/returncode_int_match/961e6dd5/returncode_int_match.out
exit1_pass/0b55b779: Checking returncode - 1 is matched in list [1]
returncode_int_match/961e6dd5: Writing error file - /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass
_returncode/returncode_int_match/961e6dd5/returncode_int_match.err
returncode_int_match/961e6dd5: Checking returncode - 128 is matched in list 
[128]
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ exit1_pass/0 │ generic.loc… │ PASS   │ True False    │ 1          │ 0.008886 │
│ b55b779      │              │        │ False         │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_i │ generic.loc… │ PASS   │ True False    │ 128        │ 0.012207 │
│ nt_match/961 │              │        │ False         │            │          │
│ e6dd5        │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 2/2 Percentage: 100.000%
Failed Tests: 0/2 Percentage: 0.000%


Adding 2 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_80343s8e.log

buildtest can run filter tests by maintainers, this can be useful if you want to run tests that you are maintainer. The maintainers field is set per buildspec and not each test. You can filter maintiners via --filter maintainers=<MAINTAINER_NAME>. If the maintainers field is not specified the buildspec will be filtered out if --filter maintainers is specified. In this next example, we will build all tests for maintainer @shahzebsiddiqui.

$ buildtest build -b tutorials --filter maintainers=@shahzebsiddiqui
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:32                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b tutorials --filter                 │
│ maintainers=@shahzebsiddiqui                                                 │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  31
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  31
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/status_by_executors.yml: skipping test because 'maintainers' field 
is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/pass_returncode.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/maintainers_example.yml: unable to find maintainer: @shahzebsiddiqui in 
buildspec which contains the following maintainers: ['@johndoe', '@bobsmith'] 
therefore we skip this test
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-hello.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/metrics_regex.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/vars.yml: skipping test because 'maintainers' field is not specified in 
buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/executor_regex_script.yml: skipping test because 'maintainers' field is not
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/tags_example.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/run_only_platform.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/shell_examples.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/sleep.yml: skipping test because 'maintainers' field is not specified in 
buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/root_user.yml: skipping test because 'maintainers' field is not specified 
in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/metrics_variable.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/add_numbers.yml: skipping test because 'maintainers' field is not specified
in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-shell.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/run_only_distro.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/shebang.yml: skipping test because 'maintainers' field is not specified in 
buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/skip_tests.yml: skipping test because 'maintainers' field is not specified 
in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/csh_shell_examples.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/environment.yml: skipping test because 'maintainers' field is not specified
in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/multiple_executors.yml: skipping test because 'maintainers' field is
not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/selinux.yml: skipping test because 'maintainers' field is not specified in 
buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/executor_scheduler.yml: skipping test because 'maintainers' field is
not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/status_regex.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/explicit_state.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/runtime_status_test.yml: skipping test because 'maintainers' field is not 
specified in buildspec.
Valid Buildspecs: 27
Invalid Buildspecs: 4
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/status_by_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/pass_returncode.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/maintainers_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-hello.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/metrics_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/vars.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/executor_regex_script.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/tags_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/run_only_platform.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/sleep.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/root_user.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/metrics_variable.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/add_numbers.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/run_only_distro.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/shebang.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/skip_tests.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/csh_shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/environment.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/multiple_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/selinux.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/hello_world.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/executor_scheduler.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/status_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/explicit_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/runtime_status_test.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/burstbuffer_datawarp_executors.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_executor.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_tags.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_buildspec_section.yml: INVALID
                            Buildspecs Filtered out                             
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Buildspecs                                                                   ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
└──────────────────────────────────────────────────────────────────────────────┘
Total builder objects created: 1
Total compiler builder: 0
Total script builder: 1
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ hello_world/aa50d │ generic.local.bas │ hello world      │ /home/docs/checko │
│ f9e               │ h                 │ example          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ hello_world.yml   │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
hello_world/aa50df9e: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hello_wor
ld/hello_world/aa50df9e
hello_world/aa50df9e: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hell
o_world/hello_world/aa50df9e/stage
hello_world/aa50df9e: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hello_world/
hello_world/aa50df9e/hello_world_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: hello_world/aa50df9e
hello_world/aa50df9e: Running Test via command: bash --norc --noprofile -eo 
pipefail hello_world_build.sh
hello_world/aa50df9e: Test completed with returncode: 0
hello_world/aa50df9e: Test completed in 0.007471 seconds
hello_world/aa50df9e: Writing output file -  /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hello_world
/hello_world/aa50df9e/hello_world.out
hello_world/aa50df9e: Writing error file - /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hello_world/h
ello_world/aa50df9e/hello_world.err
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ hello_world/ │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.007471 │
│ aa50df9e     │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%


Adding 1 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_fd6prhoh.log

Please see Query Maintainers on list of maintainers and breakdown of buildspecs by maintainers.

We can also filter tests by type field in the buildspec which corresponds to the schema type. In this next example, we filter all tests by script schema type by passing option --filter type=script. We inform buildtest to stop after build stage (--stage=build) for more details see Configure Build Stages.

$ buildtest build -b tutorials --filter type=script --stage=build
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:33                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b tutorials --filter type=script     │
│ --stage=build                                                                │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  31
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  31
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
skip: skipping test due to 'skip' property.
[run_only_macos_distro][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutorials/run_only_distro.yml]: test is skipped because this test is expected to run on linux distro: ['darwin'] but detected linux distro: ubuntu.
[run_only_linux_distro][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutorials/run_only_distro.yml]: test is skipped because this test is expected to run on linux distro: ['centos'] but detected linux distro: ubuntu.
[run_only_platform_darwin][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutorials/run_only_platform.yml]: test is skipped because this test is expected to run on platform: Darwin but detected platform: Linux.
[run_only_as_root][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutorials/root_user.yml]: test is skipped because this test is expected to run as user: root but detected user: None.
Valid Buildspecs: 27
Invalid Buildspecs: 4
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/metrics_variable.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/tags_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/sleep.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/multiple_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/vars.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-hello.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/status_by_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/add_numbers.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/explicit_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/hello_world.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/environment.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/pass_returncode.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/skip_tests.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/metrics_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/shebang.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/selinux.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/script/executor_scheduler.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/status_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/run_only_distro.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/runtime_status_test.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/maintainers_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/executor_regex_script.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/csh_shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/run_only_platform.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/root_user.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_buildspec_section.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/burstbuffer_datawarp_executors.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_executor.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_tags.yml: INVALID
                            Buildspecs Filtered out                             
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Buildspecs                                                                   ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… │
└──────────────────────────────────────────────────────────────────────────────┘
Total builder objects created: 48
Total compiler builder: 0
Total script builder: 48
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ metric_variable_a │ generic.local.sh  │ capture result   │ /home/docs/checko │
│ ssignment/431d0d2 │                   │ metric based on  │ uts/readthedocs.o │
│ 5                 │                   │ variables and    │ rg/user_builds/bu │
│                   │                   │ environment      │ ildtest/checkouts │
│                   │                   │ variable         │ /devel/tutorials/ │
│                   │                   │                  │ metrics_variable. │
│                   │                   │                  │ yml               │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ string_tag/9568bc │ generic.local.bas │ tags can be a    │ /home/docs/checko │
│ 24                │ h                 │ string           │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ tags_example.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ list_of_strings_t │ generic.local.bas │ tags can be a    │ /home/docs/checko │
│ ags/4b34c11b      │ h                 │ list of strings  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ tags_example.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ sleep/660c7252    │ generic.local.bas │ sleep 2 seconds  │ /home/docs/checko │
│                   │ h                 │                  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ sleep.yml         │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ executors_vars_en │ generic.local.bas │ Declaring env    │ /home/docs/checko │
│ v_declaration/9ab │ h                 │ and vars by      │ uts/readthedocs.o │
│ e7abd             │                   │ executors        │ rg/user_builds/bu │
│                   │                   │ section          │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ script/multiple_e │
│                   │                   │                  │ xecutors.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ executors_vars_en │ generic.local.sh  │ Declaring env    │ /home/docs/checko │
│ v_declaration/9e3 │                   │ and vars by      │ uts/readthedocs.o │
│ 55efa             │                   │ executors        │ rg/user_builds/bu │
│                   │                   │ section          │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ script/multiple_e │
│                   │                   │                  │ xecutors.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ variables_bash/de │ generic.local.bas │ Declare shell    │ /home/docs/checko │
│ 54958a            │ h                 │ variables in     │ uts/readthedocs.o │
│                   │                   │ bash             │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ vars.yml          │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ python_hello/c576 │ generic.local.bas │ Hello World      │ /home/docs/checko │
│ 2f3b              │ h                 │ python           │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-hello.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ status_returncode │ generic.local.bas │ define status    │ /home/docs/checko │
│ _by_executors/909 │ h                 │ and metrics per  │ uts/readthedocs.o │
│ bdad3             │                   │ executor type.   │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ script/status_by_ │
│                   │                   │                  │ executors.yml     │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ status_returncode │ generic.local.sh  │ define status    │ /home/docs/checko │
│ _by_executors/9c9 │                   │ and metrics per  │ uts/readthedocs.o │
│ e1fde             │                   │ executor type.   │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ script/status_by_ │
│                   │                   │                  │ executors.yml     │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ add_numbers/48f0f │ generic.local.bas │ Add X+Y          │ /home/docs/checko │
│ d14               │ h                 │                  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ add_numbers.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ always_pass/eb964 │ generic.local.sh  │ This test will   │ /home/docs/checko │
│ 3c0               │                   │ always 'PASS'    │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ explicit_state.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ always_fail/873d1 │ generic.local.sh  │ This test will   │ /home/docs/checko │
│ 6c8               │                   │ always 'FAIL'    │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ explicit_state.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ test_fail_returnc │ generic.local.sh  │ This test will   │ /home/docs/checko │
│ ode_match/f0459d5 │                   │ 'FAIL' even if   │ uts/readthedocs.o │
│ 9                 │                   │ we have          │ rg/user_builds/bu │
│                   │                   │ returncode match │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ explicit_state.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ test_pass_returnc │ generic.local.sh  │ This test will   │ /home/docs/checko │
│ ode_mismatch/8225 │                   │ 'PASS' even if   │ uts/readthedocs.o │
│ 6b79              │                   │ we have          │ rg/user_builds/bu │
│                   │                   │ returncode       │ ildtest/checkouts │
│                   │                   │ mismatch         │ /devel/tutorials/ │
│                   │                   │                  │ explicit_state.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ hello_world/4a38b │ generic.local.bas │ hello world      │ /home/docs/checko │
│ 0a1               │ h                 │ example          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ hello_world.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ bash_env_variable │ generic.local.bas │ Declare          │ /home/docs/checko │
│ s/e75bd435        │ h                 │ environment      │ uts/readthedocs.o │
│                   │                   │ variables in     │ rg/user_builds/bu │
│                   │                   │ default shell    │ ildtest/checkouts │
│                   │                   │ (bash)           │ /devel/tutorials/ │
│                   │                   │                  │ environment.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ csh_env_declarati │ generic.local.csh │ csh shell        │ /home/docs/checko │
│ on/10c97edf       │                   │ example to       │ uts/readthedocs.o │
│                   │                   │ declare          │ rg/user_builds/bu │
│                   │                   │ environment      │ ildtest/checkouts │
│                   │                   │ variables        │ /devel/tutorials/ │
│                   │                   │                  │ environment.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ tcsh_env_declarat │ generic.local.csh │ tcsh shell       │ /home/docs/checko │
│ ion/62c95b0b      │                   │ example to       │ uts/readthedocs.o │
│                   │                   │ declare          │ rg/user_builds/bu │
│                   │                   │ environment      │ ildtest/checkouts │
│                   │                   │ variables        │ /devel/tutorials/ │
│                   │                   │                  │ environment.yml   │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_fail/a1d6fc │ generic.local.bas │ exit 1 by        │ /home/docs/checko │
│ 33                │ h                 │ default is FAIL  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_pass/cd867b │ generic.local.bas │ report exit 1 as │ /home/docs/checko │
│ 7e                │ h                 │ PASS             │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_list_m │ generic.local.bas │ exit 2 failed    │ /home/docs/checko │
│ ismatch/d968ee1b  │ h                 │ since it failed  │ uts/readthedocs.o │
│                   │                   │ to match         │ rg/user_builds/bu │
│                   │                   │ returncode 1     │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_int_ma │ generic.local.bas │ exit 128 matches │ /home/docs/checko │
│ tch/354b943f      │ h                 │ returncode 128   │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ circle_area/7e98b │ generic.local.bas │ Calculate circle │ /home/docs/checko │
│ 84e               │ h                 │ of area given a  │ uts/readthedocs.o │
│                   │                   │ radius           │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-shell.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ unskipped/41571a0 │ generic.local.bas │ This test is not │ /home/docs/checko │
│ b                 │ h                 │ skipped          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ skip_tests.yml    │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ metric_regex_exam │ generic.local.sh  │ capture result   │ /home/docs/checko │
│ ple/497f3f68      │                   │ metric from      │ uts/readthedocs.o │
│                   │                   │ output           │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ metrics_regex.yml │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ bash_login_sheban │ generic.local.bas │ customize        │ /home/docs/checko │
│ g/0a4f3193        │ h                 │ shebang line     │ uts/readthedocs.o │
│                   │                   │ with bash login  │ rg/user_builds/bu │
│                   │                   │ shell            │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ shebang.yml       │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ bash_nonlogin_she │ generic.local.bas │ customize        │ /home/docs/checko │
│ bang/acfd3176     │ h                 │ shebang line     │ uts/readthedocs.o │
│                   │                   │ with default     │ rg/user_builds/bu │
│                   │                   │ bash (nonlogin)  │ ildtest/checkouts │
│                   │                   │ shell            │ /devel/tutorials/ │
│                   │                   │                  │ shebang.yml       │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ selinux_disable/d │ generic.local.bas │ Check if SELinux │ /home/docs/checko │
│ 49ed768           │ h                 │ is Disabled      │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ selinux.yml       │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ executors_sbatch_ │ generic.local.bas │ Declaring env    │ /home/docs/checko │
│ declaration/86463 │ h                 │ and vars by      │ uts/readthedocs.o │
│ eee               │                   │ executors        │ rg/user_builds/bu │
│                   │                   │ section          │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ script/executor_s │
│                   │                   │                  │ cheduler.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ executors_sbatch_ │ generic.local.sh  │ Declaring env    │ /home/docs/checko │
│ declaration/8eb49 │                   │ and vars by      │ uts/readthedocs.o │
│ 16b               │                   │ executors        │ rg/user_builds/bu │
│                   │                   │ section          │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ script/executor_s │
│                   │                   │                  │ cheduler.yml      │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ _bin_sh_shell/0b4 │ generic.local.sh  │ /bin/sh shell    │ /home/docs/checko │
│ 9fc22             │                   │ example          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ shell_examples.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ _bin_bash_shell/0 │ generic.local.bas │ /bin/bash shell  │ /home/docs/checko │
│ fef0947           │ h                 │ example          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ shell_examples.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ bash_shell/3c4197 │ generic.local.bas │ bash shell       │ /home/docs/checko │
│ 83                │ h                 │ example          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ shell_examples.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ sh_shell/14f86440 │ generic.local.sh  │ sh shell example │ /home/docs/checko │
│                   │                   │                  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ shell_examples.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ shell_options/f34 │ generic.local.sh  │ shell options    │ /home/docs/checko │
│ 23cd5             │                   │                  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ shell_examples.ym │
│                   │                   │                  │ l                 │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ status_regex_pass │ generic.local.bas │ Pass test based  │ /home/docs/checko │
│ /96d58c36         │ h                 │ on regular       │ uts/readthedocs.o │
│                   │                   │ expression       │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ status_regex.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ status_regex_fail │ generic.local.bas │ Pass test based  │ /home/docs/checko │
│ /aa2f3f53         │ h                 │ on regular       │ uts/readthedocs.o │
│                   │                   │ expression       │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ status_regex.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ timelimit_min_max │ generic.local.sh  │ Run a sleep job  │ /home/docs/checko │
│ /6ccdfbf6         │                   │ for 2 seconds    │ uts/readthedocs.o │
│                   │                   │ and test pass if │ rg/user_builds/bu │
│                   │                   │ its within       │ ildtest/checkouts │
│                   │                   │ 1.0-3.0sec       │ /devel/tutorials/ │
│                   │                   │                  │ runtime_status_te │
│                   │                   │                  │ st.yml            │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ timelimit_min/341 │ generic.local.sh  │ Run a sleep job  │ /home/docs/checko │
│ d8203             │                   │ for 2 seconds    │ uts/readthedocs.o │
│                   │                   │ and test pass if │ rg/user_builds/bu │
│                   │                   │ its exceeds min  │ ildtest/checkouts │
│                   │                   │ time of 1.0 sec  │ /devel/tutorials/ │
│                   │                   │                  │ runtime_status_te │
│                   │                   │                  │ st.yml            │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ timelimit_max/1d8 │ generic.local.sh  │ Run a sleep job  │ /home/docs/checko │
│ 613dc             │                   │ for 2 seconds    │ uts/readthedocs.o │
│                   │                   │ and test pass if │ rg/user_builds/bu │
│                   │                   │ it's within max  │ ildtest/checkouts │
│                   │                   │ time: 5.0 sec    │ /devel/tutorials/ │
│                   │                   │                  │ runtime_status_te │
│                   │                   │                  │ st.yml            │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ timelimit_min_fai │ generic.local.sh  │ This test fails  │ /home/docs/checko │
│ l/d2acf76a        │                   │ because it runs  │ uts/readthedocs.o │
│                   │                   │ less than        │ rg/user_builds/bu │
│                   │                   │ mintime of 10    │ ildtest/checkouts │
│                   │                   │ second           │ /devel/tutorials/ │
│                   │                   │                  │ runtime_status_te │
│                   │                   │                  │ st.yml            │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ timelimit_max_fai │ generic.local.sh  │ This test fails  │ /home/docs/checko │
│ l/0a136cc6        │                   │ because it       │ uts/readthedocs.o │
│                   │                   │ exceeds maxtime  │ rg/user_builds/bu │
│                   │                   │ of 1.0 second    │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ runtime_status_te │
│                   │                   │                  │ st.yml            │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ foo_bar/fdef953b  │ generic.local.sh  │ prints variable  │ /home/docs/checko │
│                   │                   │ $FOO             │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ maintainers_examp │
│                   │                   │                  │ le.yml            │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ executor_regex_sc │ generic.local.bas │ regular          │ /home/docs/checko │
│ ript_schema/48611 │ h                 │ expression test  │ uts/readthedocs.o │
│ 2f2               │                   │ with executor    │ rg/user_builds/bu │
│                   │                   │ using script     │ ildtest/checkouts │
│                   │                   │ schema           │ /devel/tutorials/ │
│                   │                   │                  │ executor_regex_sc │
│                   │                   │                  │ ript.yml          │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ executor_regex_sc │ generic.local.sh  │ regular          │ /home/docs/checko │
│ ript_schema/65c6e │                   │ expression test  │ uts/readthedocs.o │
│ 23a               │                   │ with executor    │ rg/user_builds/bu │
│                   │                   │ using script     │ ildtest/checkouts │
│                   │                   │ schema           │ /devel/tutorials/ │
│                   │                   │                  │ executor_regex_sc │
│                   │                   │                  │ ript.yml          │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ csh_shell/94488a9 │ generic.local.csh │ csh shell        │ /home/docs/checko │
│ 4                 │                   │ example          │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ csh_shell_example │
│                   │                   │                  │ s.yml             │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ run_only_platform │ generic.local.bas │ This test will   │ /home/docs/checko │
│ _linux/0827e88a   │ h                 │ only run if      │ uts/readthedocs.o │
│                   │                   │ target platform  │ rg/user_builds/bu │
│                   │                   │ is Linux         │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ run_only_platform │
│                   │                   │                  │ .yml              │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
metric_variable_assignment/431d0d25: Creating test directory: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.sh/metrics_variable/metric_variable_assignment/431d0d25
metric_variable_assignment/431d0d25: Creating the stage directory: /home/docs/ch
eckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.
local.sh/metrics_variable/metric_variable_assignment/431d0d25/stage
metric_variable_assignment/431d0d25: Writing build script: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh
/metrics_variable/metric_variable_assignment/431d0d25/metric_variable_assignment
_build.sh
string_tag/9568bc24: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_examp
le/string_tag/9568bc24
string_tag/9568bc24: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_
example/string_tag/9568bc24/stage
string_tag/9568bc24: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tags_example/
string_tag/9568bc24/string_tag_build.sh
list_of_strings_tags/4b34c11b: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
tags_example/list_of_strings_tags/4b34c11b
list_of_strings_tags/4b34c11b: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/tags_example/list_of_strings_tags/4b34c11b/stage
list_of_strings_tags/4b34c11b: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/tag
s_example/list_of_strings_tags/4b34c11b/list_of_strings_tags_build.sh
sleep/660c7252: Creating test directory: /home/docs/checkouts/readthedocs.org/us
er_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sleep/sleep/660
c7252
sleep/660c7252: Creating the stage directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sleep/slee
p/660c7252/stage
sleep/660c7252: Writing build script: /home/docs/checkouts/readthedocs.org/user_
builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sleep/sleep/660c72
52/sleep_build.sh
executors_vars_env_declaration/9abe7abd: Creating test directory: /home/docs/che
ckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.l
ocal.bash/multiple_executors/executors_vars_env_declaration/9abe7abd
executors_vars_env_declaration/9abe7abd: Creating the stage directory: /home/doc
s/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/gene
ric.local.bash/multiple_executors/executors_vars_env_declaration/9abe7abd/stage
executors_vars_env_declaration/9abe7abd: Writing build script: /home/docs/checko
uts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loca
l.bash/multiple_executors/executors_vars_env_declaration/9abe7abd/executors_vars
_env_declaration_build.sh
executors_vars_env_declaration/9e355efa: Creating test directory: /home/docs/che
ckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.l
ocal.sh/multiple_executors/executors_vars_env_declaration/9e355efa
executors_vars_env_declaration/9e355efa: Creating the stage directory: /home/doc
s/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/gene
ric.local.sh/multiple_executors/executors_vars_env_declaration/9e355efa/stage
executors_vars_env_declaration/9e355efa: Writing build script: /home/docs/checko
uts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loca
l.sh/multiple_executors/executors_vars_env_declaration/9e355efa/executors_vars_e
nv_declaration_build.sh
variables_bash/de54958a: Creating test directory: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/v
ariables_bash/de54958a
variables_bash/de54958a: Creating the stage directory: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/v
ars/variables_bash/de54958a/stage
variables_bash/de54958a: Writing build script: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/vari
ables_bash/de54958a/variables_bash_build.sh
python_hello/c5762f3b: Creating test directory: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-h
ello/python_hello/c5762f3b
python_hello/c5762f3b: Creating the stage directory: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyt
hon-hello/python_hello/c5762f3b/stage
python_hello/c5762f3b: Writing build script: /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-hell
o/python_hello/c5762f3b/python_hello_build.sh
status_returncode_by_executors/909bdad3: Creating test directory: /home/docs/che
ckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.l
ocal.bash/status_by_executors/status_returncode_by_executors/909bdad3
status_returncode_by_executors/909bdad3: Creating the stage directory: /home/doc
s/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/gene
ric.local.bash/status_by_executors/status_returncode_by_executors/909bdad3/stage
status_returncode_by_executors/909bdad3: Writing build script: /home/docs/checko
uts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loca
l.bash/status_by_executors/status_returncode_by_executors/909bdad3/status_return
code_by_executors_build.sh
status_returncode_by_executors/9c9e1fde: Creating test directory: /home/docs/che
ckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.l
ocal.sh/status_by_executors/status_returncode_by_executors/9c9e1fde
status_returncode_by_executors/9c9e1fde: Creating the stage directory: /home/doc
s/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/gene
ric.local.sh/status_by_executors/status_returncode_by_executors/9c9e1fde/stage
status_returncode_by_executors/9c9e1fde: Writing build script: /home/docs/checko
uts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loca
l.sh/status_by_executors/status_returncode_by_executors/9c9e1fde/status_returnco
de_by_executors_build.sh
add_numbers/48f0fd14: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/add_numbe
rs/add_numbers/48f0fd14
add_numbers/48f0fd14: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/add_
numbers/add_numbers/48f0fd14/stage
add_numbers/48f0fd14: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/add_numbers/
add_numbers/48f0fd14/add_numbers_build.sh
always_pass/eb9643c0: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/explicit_st
ate/always_pass/eb9643c0
always_pass/eb9643c0: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/explic
it_state/always_pass/eb9643c0/stage
always_pass/eb9643c0: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/explicit_state
/always_pass/eb9643c0/always_pass_build.sh
always_fail/873d16c8: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/explicit_st
ate/always_fail/873d16c8
always_fail/873d16c8: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/explic
it_state/always_fail/873d16c8/stage
always_fail/873d16c8: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/explicit_state
/always_fail/873d16c8/always_fail_build.sh
test_fail_returncode_match/f0459d59: Creating test directory: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.sh/explicit_state/test_fail_returncode_match/f0459d59
test_fail_returncode_match/f0459d59: Creating the stage directory: /home/docs/ch
eckouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.
local.sh/explicit_state/test_fail_returncode_match/f0459d59/stage
test_fail_returncode_match/f0459d59: Writing build script: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh
/explicit_state/test_fail_returncode_match/f0459d59/test_fail_returncode_match_b
uild.sh
test_pass_returncode_mismatch/82256b79: Creating test directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.sh/explicit_state/test_pass_returncode_mismatch/82256b79
test_pass_returncode_mismatch/82256b79: Creating the stage directory: /home/docs
/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/gener
ic.local.sh/explicit_state/test_pass_returncode_mismatch/82256b79/stage
test_pass_returncode_mismatch/82256b79: Writing build script: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.sh/explicit_state/test_pass_returncode_mismatch/82256b79/test_pass_returncode_m
ismatch_build.sh
hello_world/4a38b0a1: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hello_wor
ld/hello_world/4a38b0a1
hello_world/4a38b0a1: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hell
o_world/hello_world/4a38b0a1/stage
hello_world/4a38b0a1: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/hello_world/
hello_world/4a38b0a1/hello_world_build.sh
bash_env_variables/e75bd435: Creating test directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/en
vironment/bash_env_variables/e75bd435
bash_env_variables/e75bd435: Creating the stage directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/environment/bash_env_variables/e75bd435/stage
bash_env_variables/e75bd435: Writing build script: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/envir
onment/bash_env_variables/e75bd435/bash_env_variables_build.sh
csh_env_declaration/10c97edf: Creating test directory: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/en
vironment/csh_env_declaration/10c97edf
csh_env_declaration/10c97edf: Creating the stage directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.c
sh/environment/csh_env_declaration/10c97edf/stage
csh_env_declaration/10c97edf: Writing build script: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/envir
onment/csh_env_declaration/10c97edf/csh_env_declaration_build.sh
tcsh_env_declaration/62c95b0b: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/e
nvironment/tcsh_env_declaration/62c95b0b
tcsh_env_declaration/62c95b0b: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
csh/environment/tcsh_env_declaration/62c95b0b/stage
tcsh_env_declaration/62c95b0b: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/envi
ronment/tcsh_env_declaration/62c95b0b/tcsh_env_declaration_build.sh
exit1_fail/a1d6fc33: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_fail/a1d6fc33
exit1_fail/a1d6fc33: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_fail/a1d6fc33/stage
exit1_fail/a1d6fc33: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_fail/a1d6fc33/exit1_fail_build.sh
exit1_pass/cd867b7e: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_pass/cd867b7e
exit1_pass/cd867b7e: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_pass/cd867b7e/stage
exit1_pass/cd867b7e: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_pass/cd867b7e/exit1_pass_build.sh
returncode_list_mismatch/d968ee1b: Creating test directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/pass_returncode/returncode_list_mismatch/d968ee1b
returncode_list_mismatch/d968ee1b: Creating the stage directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.bash/pass_returncode/returncode_list_mismatch/d968ee1b/stage
returncode_list_mismatch/d968ee1b: Writing build script: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/pass_returncode/returncode_list_mismatch/d968ee1b/returncode_list_mismatch_buil
d.sh
returncode_int_match/354b943f: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_int_match/354b943f
returncode_int_match/354b943f: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/pass_returncode/returncode_int_match/354b943f/stage
returncode_int_match/354b943f: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pas
s_returncode/returncode_int_match/354b943f/returncode_int_match_build.sh
circle_area/7e98b84e: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-sh
ell/circle_area/7e98b84e
circle_area/7e98b84e: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyth
on-shell/circle_area/7e98b84e/stage
circle_area/7e98b84e: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell
/circle_area/7e98b84e/circle_area_build.sh
unskipped/41571a0b: Creating test directory: /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/skip_tests/
unskipped/41571a0b
unskipped/41571a0b: Creating the stage directory: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/skip_t
ests/unskipped/41571a0b/stage
unskipped/41571a0b: Writing build script: /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/skip_tests/uns
kipped/41571a0b/unskipped_build.sh
metric_regex_example/497f3f68: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/me
trics_regex/metric_regex_example/497f3f68
metric_regex_example/497f3f68: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
sh/metrics_regex/metric_regex_example/497f3f68/stage
metric_regex_example/497f3f68: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/metri
cs_regex/metric_regex_example/497f3f68/metric_regex_example_build.sh
bash_login_shebang/0a4f3193: Creating test directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sh
ebang/bash_login_shebang/0a4f3193
bash_login_shebang/0a4f3193: Creating the stage directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/shebang/bash_login_shebang/0a4f3193/stage
bash_login_shebang/0a4f3193: Writing build script: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sheba
ng/bash_login_shebang/0a4f3193/bash_login_shebang_build.sh
bash_nonlogin_shebang/acfd3176: Creating test directory: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/shebang/bash_nonlogin_shebang/acfd3176
bash_nonlogin_shebang/acfd3176: Creating the stage directory: /home/docs/checkou
ts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local
.bash/shebang/bash_nonlogin_shebang/acfd3176/stage
bash_nonlogin_shebang/acfd3176: Writing build script: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sh
ebang/bash_nonlogin_shebang/acfd3176/bash_nonlogin_shebang_build.sh
selinux_disable/d49ed768: Creating test directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/selin
ux/selinux_disable/d49ed768
selinux_disable/d49ed768: Creating the stage directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
selinux/selinux_disable/d49ed768/stage
selinux_disable/d49ed768: Writing build script: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/selinux/
selinux_disable/d49ed768/selinux_disable_build.sh
executors_sbatch_declaration/86463eee: Creating test directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.bash/executor_scheduler/executors_sbatch_declaration/86463eee
executors_sbatch_declaration/86463eee: Creating the stage directory: /home/docs/
checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generi
c.local.bash/executor_scheduler/executors_sbatch_declaration/86463eee/stage
executors_sbatch_declaration/86463eee: Writing build script: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/executor_scheduler/executors_sbatch_declaration/86463eee/executors_sbatch_d
eclaration_build.sh
executors_sbatch_declaration/8eb4916b: Creating test directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.sh/executor_scheduler/executors_sbatch_declaration/8eb4916b
executors_sbatch_declaration/8eb4916b: Creating the stage directory: /home/docs/
checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generi
c.local.sh/executor_scheduler/executors_sbatch_declaration/8eb4916b/stage
executors_sbatch_declaration/8eb4916b: Writing build script: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
sh/executor_scheduler/executors_sbatch_declaration/8eb4916b/executors_sbatch_dec
laration_build.sh
_bin_sh_shell/0b49fc22: Creating test directory: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shell_exa
mples/_bin_sh_shell/0b49fc22
_bin_sh_shell/0b49fc22: Creating the stage directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shel
l_examples/_bin_sh_shell/0b49fc22/stage
_bin_sh_shell/0b49fc22: Writing build script: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shell_exampl
es/_bin_sh_shell/0b49fc22/_bin_sh_shell_build.sh
_bin_bash_shell/0fef0947: Creating test directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/shell
_examples/_bin_bash_shell/0fef0947
_bin_bash_shell/0fef0947: Creating the stage directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
shell_examples/_bin_bash_shell/0fef0947/stage
_bin_bash_shell/0fef0947: Writing build script: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/shell_ex
amples/_bin_bash_shell/0fef0947/_bin_bash_shell_build.sh
bash_shell/3c419783: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/shell_exam
ples/bash_shell/3c419783
bash_shell/3c419783: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/shell
_examples/bash_shell/3c419783/stage
bash_shell/3c419783: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/shell_example
s/bash_shell/3c419783/bash_shell_build.sh
sh_shell/14f86440: Creating test directory: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shell_examples
/sh_shell/14f86440
sh_shell/14f86440: Creating the stage directory: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shell_exa
mples/sh_shell/14f86440/stage
sh_shell/14f86440: Writing build script: /home/docs/checkouts/readthedocs.org/us
er_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shell_examples/sh
_shell/14f86440/sh_shell_build.sh
shell_options/f3423cd5: Creating test directory: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shell_exa
mples/shell_options/f3423cd5
shell_options/f3423cd5: Creating the stage directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shel
l_examples/shell_options/f3423cd5/stage
shell_options/f3423cd5: Writing build script: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/shell_exampl
es/shell_options/f3423cd5/shell_options_build.sh
status_regex_pass/96d58c36: Creating test directory: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sta
tus_regex/status_regex_pass/96d58c36
status_regex_pass/96d58c36: Creating the stage directory: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/status_regex/status_regex_pass/96d58c36/stage
status_regex_pass/96d58c36: Writing build script: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/status
_regex/status_regex_pass/96d58c36/status_regex_pass_build.sh
status_regex_fail/aa2f3f53: Creating test directory: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/sta
tus_regex/status_regex_fail/aa2f3f53
status_regex_fail/aa2f3f53: Creating the stage directory: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/status_regex/status_regex_fail/aa2f3f53/stage
status_regex_fail/aa2f3f53: Writing build script: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/status
_regex/status_regex_fail/aa2f3f53/status_regex_fail_build.sh
timelimit_min_max/6ccdfbf6: Creating test directory: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runti
me_status_test/timelimit_min_max/6ccdfbf6
timelimit_min_max/6ccdfbf6: Creating the stage directory: /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/
runtime_status_test/timelimit_min_max/6ccdfbf6/stage
timelimit_min_max/6ccdfbf6: Writing build script: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runtime_
status_test/timelimit_min_max/6ccdfbf6/timelimit_min_max_build.sh
timelimit_min/341d8203: Creating test directory: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runtime_s
tatus_test/timelimit_min/341d8203
timelimit_min/341d8203: Creating the stage directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runt
ime_status_test/timelimit_min/341d8203/stage
timelimit_min/341d8203: Writing build script: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runtime_stat
us_test/timelimit_min/341d8203/timelimit_min_build.sh
timelimit_max/1d8613dc: Creating test directory: /home/docs/checkouts/readthedoc
s.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runtime_s
tatus_test/timelimit_max/1d8613dc
timelimit_max/1d8613dc: Creating the stage directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runt
ime_status_test/timelimit_max/1d8613dc/stage
timelimit_max/1d8613dc: Writing build script: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runtime_stat
us_test/timelimit_max/1d8613dc/timelimit_max_build.sh
timelimit_min_fail/d2acf76a: Creating test directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runt
ime_status_test/timelimit_min_fail/d2acf76a
timelimit_min_fail/d2acf76a: Creating the stage directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh
/runtime_status_test/timelimit_min_fail/d2acf76a/stage
timelimit_min_fail/d2acf76a: Writing build script: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runtime
_status_test/timelimit_min_fail/d2acf76a/timelimit_min_fail_build.sh
timelimit_max_fail/0a136cc6: Creating test directory: /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runt
ime_status_test/timelimit_max_fail/0a136cc6
timelimit_max_fail/0a136cc6: Creating the stage directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh
/runtime_status_test/timelimit_max_fail/0a136cc6/stage
timelimit_max_fail/0a136cc6: Writing build script: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/runtime
_status_test/timelimit_max_fail/0a136cc6/timelimit_max_fail_build.sh
foo_bar/fdef953b: Creating test directory: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/maintainers_exa
mple/foo_bar/fdef953b
foo_bar/fdef953b: Creating the stage directory: /home/docs/checkouts/readthedocs
.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/maintainer
s_example/foo_bar/fdef953b/stage
foo_bar/fdef953b: Writing build script: /home/docs/checkouts/readthedocs.org/use
r_builds/buildtest/checkouts/devel/var/tests/generic.local.sh/maintainers_exampl
e/foo_bar/fdef953b/foo_bar_build.sh
executor_regex_script_schema/486112f2: Creating test directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.bash/executor_regex_script/executor_regex_script_schema/486112f2
executor_regex_script_schema/486112f2: Creating the stage directory: /home/docs/
checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generi
c.local.bash/executor_regex_script/executor_regex_script_schema/486112f2/stage
executor_regex_script_schema/486112f2: Writing build script: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/executor_regex_script/executor_regex_script_schema/486112f2/executor_regex_
script_schema_build.sh
executor_regex_script_schema/65c6e23a: Creating test directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.sh/executor_regex_script/executor_regex_script_schema/65c6e23a
executor_regex_script_schema/65c6e23a: Creating the stage directory: /home/docs/
checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generi
c.local.sh/executor_regex_script/executor_regex_script_schema/65c6e23a/stage
executor_regex_script_schema/65c6e23a: Writing build script: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
sh/executor_regex_script/executor_regex_script_schema/65c6e23a/executor_regex_sc
ript_schema_build.sh
csh_shell/94488a94: Creating test directory: /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_shell_ex
amples/csh_shell/94488a94
csh_shell/94488a94: Creating the stage directory: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_she
ll_examples/csh_shell/94488a94/stage
csh_shell/94488a94: Writing build script: /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.csh/csh_shell_examp
les/csh_shell/94488a94/csh_shell_build.sh
run_only_platform_linux/0827e88a: Creating test directory: /home/docs/checkouts/
readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.ba
sh/run_only_platform/run_only_platform_linux/0827e88a
run_only_platform_linux/0827e88a: Creating the stage directory: /home/docs/check
outs/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.loc
al.bash/run_only_platform/run_only_platform_linux/0827e88a/stage
run_only_platform_linux/0827e88a: Writing build script: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
run_only_platform/run_only_platform_linux/0827e88a/run_only_platform_linux_build
.sh

Discover Buildspecs

Now, let’s discuss how buildtest discovers buildspecs since there are several ways to build buildspecs.

The buildspec search resolution is described as follows:

  • If file or directory specified by -b option doesn’t exist we exit immediately.

  • If buildspec path is a directory, traverse directory recursively to find all .yml extensions

  • If buildspec path is a file, check if file extension is not .yml, exit immediately

  • If user specifies --tags or --executor we search in buildspec cache to discover buildspecs.

Shown below is a diagram on how buildtest discovers buildspecs. The user can build buildspecs by --buildspec, –tags, or –executor which will discover the buildspecs. You can exclude buildspecs using --exclude option which is processed after discovering buildspecs. The excluded buildspecs are removed from list if found and final list of buildspecs is processed.

../_images/DiscoverBuildspecs.jpg

Configure Build Stages

We can control behavior of buildtest build command to stop at certain phase using --stage option. The –stage option accepts parse or build, which will instruct buildtest to stop at parse or build phase of the pipeline.

Buildtest will validate all the buildspecs in the parse stage, so you can instruct buildtest to stop at parse stage via --stage=parse. This can be useful when debugging buildspecs that are invalid. In this example below, we instruct buildtest to stop after parse stage.

$ buildtest build -b tutorials/vars.yml --stage=parse
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:34                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b tutorials/vars.yml --stage=parse   │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/vars.yml: VALID
Total builder objects created: 1
Total compiler builder: 0
Total script builder: 1
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/11 │ generic.local.bas │ Declare shell    │ /home/docs/checko │
│ e256d9            │ h                 │ variables in     │ uts/readthedocs.o │
│                   │                   │ bash             │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ vars.yml          │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘

Likewise, if you want to troubleshoot your test script without running them you can use --stage=build which will stop after build phase. This can be used when you are writing buildspec to troubleshoot how test is generated. In this next example, we inform buildtest to stop after build stage.

$ buildtest build -b tutorials/vars.yml --stage=build
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:34                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b tutorials/vars.yml --stage=build   │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/vars.yml: VALID
Total builder objects created: 1
Total compiler builder: 0
Total script builder: 1
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/d9 │ generic.local.bas │ Declare shell    │ /home/docs/checko │
│ 4f53db            │ h                 │ variables in     │ uts/readthedocs.o │
│                   │                   │ bash             │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ vars.yml          │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/d94f53db: Creating test directory: /home/docs/checkouts/readthedo
cs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/v
ariables_bash/d94f53db
variables_bash/d94f53db: Creating the stage directory: /home/docs/checkouts/read
thedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/v
ars/variables_bash/d94f53db/stage
variables_bash/d94f53db: Writing build script: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/vars/vari
ables_bash/d94f53db/variables_bash_build.sh

Invalid Buildspecs

buildtest will skip any buildspecs that fail to validate, in that case the test script will not be generated. Here is an example where we have an invalid buildspec.

$ buildtest build -b tutorials/invalid_buildspec_section.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:35                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b                                    │
│ tutorials/invalid_buildspec_section.yml                                      │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 0
Invalid Buildspecs: 1
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_buildspec_section.yml: INVALID

buildtest is unable to create any tests because there are no valid buildspecs. 

Please see logfile: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/buildtest.log

buildtest may skip tests from running if buildspec specifies an invalid executor name since buildtest needs to know this in order to delegate test to Executor class responsible for running the test. Here is an example where test failed to run since we provided invalid executor.

$ buildtest build -b tutorials/invalid_executor.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:35                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b tutorials/invalid_executor.yml     │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 0
Invalid Buildspecs: 1
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/invalid_executor.yml: INVALID

buildtest is unable to create any tests because there are no valid buildspecs. 

Please see logfile: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/buildtest.log

Rebuild Tests

buildtest can rebuild tests using the --rebuild option which can be useful if you want to test a particular test multiple times. The rebuild option works across all discovered buildspecs and create a new test instance (unique id) and test directory path. To demonstrate we will build tutorials/python-shell.yml three times using --rebuild=3.

$ buildtest build -b tutorials/python-shell.yml --rebuild=3
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:36                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -b tutorials/python-shell.yml         │
│ --rebuild=3                                                                  │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/python-shell.yml: VALID
Total builder objects created: 3
Total compiler builder: 0
Total script builder: 3
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ circle_area/62cf4 │ generic.local.bas │ Calculate circle │ /home/docs/checko │
│ 89b               │ h                 │ of area given a  │ uts/readthedocs.o │
│                   │                   │ radius           │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-shell.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ circle_area/ad719 │ generic.local.bas │ Calculate circle │ /home/docs/checko │
│ 653               │ h                 │ of area given a  │ uts/readthedocs.o │
│                   │                   │ radius           │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-shell.yml  │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ circle_area/787d5 │ generic.local.bas │ Calculate circle │ /home/docs/checko │
│ 324               │ h                 │ of area given a  │ uts/readthedocs.o │
│                   │                   │ radius           │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ python-shell.yml  │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
circle_area/62cf489b: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-sh
ell/circle_area/62cf489b
circle_area/62cf489b: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyth
on-shell/circle_area/62cf489b/stage
circle_area/62cf489b: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell
/circle_area/62cf489b/circle_area_build.sh
circle_area/ad719653: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-sh
ell/circle_area/ad719653
circle_area/ad719653: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyth
on-shell/circle_area/ad719653/stage
circle_area/ad719653: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell
/circle_area/ad719653/circle_area_build.sh
circle_area/787d5324: Creating test directory: /home/docs/checkouts/readthedocs.
org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-sh
ell/circle_area/787d5324
circle_area/787d5324: Creating the stage directory: /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pyth
on-shell/circle_area/787d5324/stage
circle_area/787d5324: Writing build script: /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell
/circle_area/787d5324/circle_area_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: circle_area/62cf489b
______________________________
Launching test: circle_area/ad719653
______________________________
Launching test: circle_area/787d5324
circle_area/62cf489b: Running Test via command: bash --norc --noprofile -eo 
pipefail circle_area_build.sh
circle_area/ad719653: Running Test via command: bash --norc --noprofile -eo 
pipefail circle_area_build.sh
circle_area/62cf489b: Test completed with returncode: 0
circle_area/62cf489b: Test completed in 0.100786 seconds
circle_area/62cf489b: Writing output file -  /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shel
l/circle_area/62cf489b/circle_area.out
circle_area/62cf489b: Writing error file - /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell/
circle_area/62cf489b/circle_area.err
circle_area/ad719653: Test completed with returncode: 0
circle_area/787d5324: Running Test via command: bash --norc --noprofile -eo 
pipefail circle_area_build.sh
circle_area/ad719653: Test completed in 0.10814 seconds
circle_area/ad719653: Writing output file -  /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shel
l/circle_area/ad719653/circle_area.out
circle_area/ad719653: Writing error file - /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell/
circle_area/ad719653/circle_area.err
circle_area/787d5324: Test completed with returncode: 0
circle_area/787d5324: Test completed in 0.04737 seconds
circle_area/787d5324: Writing output file -  /home/docs/checkouts/readthedocs.or
g/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shel
l/circle_area/787d5324/circle_area.out
circle_area/787d5324: Writing error file - /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/python-shell/
circle_area/787d5324/circle_area.err
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ circle_area/ │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.10814  │
│ ad719653     │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ circle_area/ │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.04737  │
│ 787d5324     │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ circle_area/ │ generic.loc… │ PASS   │ N/A N/A N/A   │ 0          │ 0.100786 │
│ 62cf489b     │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 3/3 Percentage: 100.000%
Failed Tests: 0/3 Percentage: 0.000%


Adding 3 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest_z6m6ao_g.log

The rebuild works with all options including: --buildspec, --exclude, --tags and --executor. buildtest will perform rebuild for all discovered tests, for instance in this next example we will discover all tests by tag name fail and each test is rebuild twice.

$ buildtest build -t fail --rebuild 2
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│                                                                              │
│ User:               docs                                                     │
│ Hostname:           build-15773998-project-280831-buildtest                  │
│ Platform:           Linux                                                    │
│ Current Time:       2022/01/14 16:20:36                                      │
│ buildtest path:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest                                             │
│ buildtest version:  0.12.0                                                   │
│ python path:        /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/envs/devel/bin/python3                                                    │
│ python version:     3.7.12                                                   │
│ Configuration File: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/buildtest/settings/config.yml                             │
│ Test Directory:     /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/var/tests                                                 │
│ Command:            /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ st/checkouts/devel/bin/buildtest build -t fail --rebuild 2                   │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
───────────────────────────  Discovering Buildspecs ────────────────────────────
Discovered Buildspecs:  1
Excluded Buildspecs:  0
Detected Buildspecs after exclusion:  1
                             Discovered buildspecs                              
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/… ║
╚══════════════════════════════════════════════════════════════════════════════╝
                             Buildspecs By Tag=fail                             
╔══════════════════════════════════════════════════════════════════════════════╗
║ Buildspecs                                                                   ║
╟──────────────────────────────────────────────────────────────────────────────╢
║  /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel… ║
╚══════════════════════════════════════════════════════════════════════════════╝
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/tutor
ials/pass_returncode.yml: VALID
Total builder objects created: 8
Total compiler builder: 0
Total script builder: 8
Total spack builder: 0
                             Script Builder Details                             
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ Builder           ┃ Executor          ┃ description      ┃ buildspecs        ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ exit1_fail/fd3414 │ generic.local.bas │ exit 1 by        │ /home/docs/checko │
│ 8a                │ h                 │ default is FAIL  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_pass/6d0070 │ generic.local.bas │ report exit 1 as │ /home/docs/checko │
│ de                │ h                 │ PASS             │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_list_m │ generic.local.bas │ exit 2 failed    │ /home/docs/checko │
│ ismatch/a7bf8554  │ h                 │ since it failed  │ uts/readthedocs.o │
│                   │                   │ to match         │ rg/user_builds/bu │
│                   │                   │ returncode 1     │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_int_ma │ generic.local.bas │ exit 128 matches │ /home/docs/checko │
│ tch/afc4328f      │ h                 │ returncode 128   │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_fail/e087e1 │ generic.local.bas │ exit 1 by        │ /home/docs/checko │
│ 77                │ h                 │ default is FAIL  │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ exit1_pass/bbd57f │ generic.local.bas │ report exit 1 as │ /home/docs/checko │
│ d3                │ h                 │ PASS             │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_list_m │ generic.local.bas │ exit 2 failed    │ /home/docs/checko │
│ ismatch/aa7bfb8f  │ h                 │ since it failed  │ uts/readthedocs.o │
│                   │                   │ to match         │ rg/user_builds/bu │
│                   │                   │ returncode 1     │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
├───────────────────┼───────────────────┼──────────────────┼───────────────────┤
│ returncode_int_ma │ generic.local.bas │ exit 128 matches │ /home/docs/checko │
│ tch/13d2f7b1      │ h                 │ returncode 128   │ uts/readthedocs.o │
│                   │                   │                  │ rg/user_builds/bu │
│                   │                   │                  │ ildtest/checkouts │
│                   │                   │                  │ /devel/tutorials/ │
│                   │                   │                  │ pass_returncode.y │
│                   │                   │                  │ ml                │
└───────────────────┴───────────────────┴──────────────────┴───────────────────┘
──────────────────────────────── Building Test ─────────────────────────────────
exit1_fail/fd34148a: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_fail/fd34148a
exit1_fail/fd34148a: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_fail/fd34148a/stage
exit1_fail/fd34148a: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_fail/fd34148a/exit1_fail_build.sh
exit1_pass/6d0070de: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_pass/6d0070de
exit1_pass/6d0070de: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_pass/6d0070de/stage
exit1_pass/6d0070de: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_pass/6d0070de/exit1_pass_build.sh
returncode_list_mismatch/a7bf8554: Creating test directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/pass_returncode/returncode_list_mismatch/a7bf8554
returncode_list_mismatch/a7bf8554: Creating the stage directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.bash/pass_returncode/returncode_list_mismatch/a7bf8554/stage
returncode_list_mismatch/a7bf8554: Writing build script: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/pass_returncode/returncode_list_mismatch/a7bf8554/returncode_list_mismatch_buil
d.sh
returncode_int_match/afc4328f: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_int_match/afc4328f
returncode_int_match/afc4328f: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/pass_returncode/returncode_int_match/afc4328f/stage
returncode_int_match/afc4328f: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pas
s_returncode/returncode_int_match/afc4328f/returncode_int_match_build.sh
exit1_fail/e087e177: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_fail/e087e177
exit1_fail/e087e177: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_fail/e087e177/stage
exit1_fail/e087e177: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_fail/e087e177/exit1_fail_build.sh
exit1_pass/bbd57fd3: Creating test directory: /home/docs/checkouts/readthedocs.o
rg/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_retur
ncode/exit1_pass/bbd57fd3
exit1_pass/bbd57fd3: Creating the stage directory: /home/docs/checkouts/readthed
ocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_
returncode/exit1_pass/bbd57fd3/stage
exit1_pass/bbd57fd3: Writing build script: /home/docs/checkouts/readthedocs.org/
user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnco
de/exit1_pass/bbd57fd3/exit1_pass_build.sh
returncode_list_mismatch/aa7bfb8f: Creating test directory: /home/docs/checkouts
/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.b
ash/pass_returncode/returncode_list_mismatch/aa7bfb8f
returncode_list_mismatch/aa7bfb8f: Creating the stage directory: /home/docs/chec
kouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.lo
cal.bash/pass_returncode/returncode_list_mismatch/aa7bfb8f/stage
returncode_list_mismatch/aa7bfb8f: Writing build script: /home/docs/checkouts/re
adthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash
/pass_returncode/returncode_list_mismatch/aa7bfb8f/returncode_list_mismatch_buil
d.sh
returncode_int_match/13d2f7b1: Creating test directory: /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_int_match/13d2f7b1
returncode_int_match/13d2f7b1: Creating the stage directory: /home/docs/checkout
s/readthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.
bash/pass_returncode/returncode_int_match/13d2f7b1/stage
returncode_int_match/13d2f7b1: Writing build script: /home/docs/checkouts/readth
edocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pas
s_returncode/returncode_int_match/13d2f7b1/returncode_int_match_build.sh
──────────────────────────────── Running Tests ─────────────────────────────────
______________________________
Launching test: exit1_fail/fd34148a
______________________________
Launching test: exit1_pass/6d0070de
______________________________
Launching test: returncode_list_mismatch/a7bf8554
______________________________
Launching test: returncode_int_match/afc4328f
______________________________
Launching test: exit1_fail/e087e177
______________________________
Launching test: exit1_pass/bbd57fd3
______________________________
Launching test: returncode_list_mismatch/aa7bfb8f
______________________________
Launching test: returncode_int_match/13d2f7b1
exit1_fail/fd34148a: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_fail_build.sh
exit1_pass/6d0070de: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_pass_build.sh
exit1_pass/6d0070de: Test completed with returncode: 1
exit1_fail/fd34148a: Test completed with returncode: 1
exit1_pass/6d0070de: Test completed in 0.026116 seconds
exit1_fail/fd34148a: Test completed in 0.028933 seconds
exit1_pass/6d0070de: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_pass/6d0070de/exit1_pass.out
exit1_fail/fd34148a: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_fail/fd34148a/exit1_fail.out
exit1_pass/6d0070de: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_pass/6d0070de/exit1_pass.err
exit1_fail/fd34148a: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_fail/fd34148a/exit1_fail.err
exit1_pass/6d0070de: Checking returncode - 1 is matched in list [1]
returncode_list_mismatch/a7bf8554: Running Test via command: bash --norc 
--noprofile -eo pipefail returncode_list_mismatch_build.sh
returncode_int_match/afc4328f: Running Test via command: bash --norc --noprofile
-eo pipefail returncode_int_match_build.sh
returncode_list_mismatch/a7bf8554: Test completed with returncode: 2
returncode_int_match/afc4328f: Test completed with returncode: 128
returncode_list_mismatch/a7bf8554: Test completed in 0.026508 seconds
returncode_int_match/afc4328f: Test completed in 0.025416 seconds
returncode_list_mismatch/a7bf8554: Writing output file -  /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/pass_returncode/returncode_list_mismatch/a7bf8554/returncode_list_mismatch.out
returncode_int_match/afc4328f: Writing output file -  /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pa
ss_returncode/returncode_int_match/afc4328f/returncode_int_match.out
returncode_int_match/afc4328f: Writing error file - /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass
_returncode/returncode_int_match/afc4328f/returncode_int_match.err
returncode_list_mismatch/a7bf8554: Writing error file - /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_list_mismatch/a7bf8554/returncode_list_mismatch.err
returncode_int_match/afc4328f: Checking returncode - 128 is matched in list 
[128]
returncode_list_mismatch/a7bf8554: Checking returncode - 2 is matched in list 
[1, 3]
exit1_fail/e087e177: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_fail_build.sh
exit1_pass/bbd57fd3: Running Test via command: bash --norc --noprofile -eo 
pipefail exit1_pass_build.sh
exit1_pass/bbd57fd3: Test completed with returncode: 1
exit1_pass/bbd57fd3: Test completed in 0.01749 seconds
exit1_pass/bbd57fd3: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_pass/bbd57fd3/exit1_pass.out
exit1_pass/bbd57fd3: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_pass/bbd57fd3/exit1_pass.err
exit1_pass/bbd57fd3: Checking returncode - 1 is matched in list [1]
exit1_fail/e087e177: Test completed with returncode: 1
exit1_fail/e087e177: Test completed in 0.031627 seconds
exit1_fail/e087e177: Writing output file -  /home/docs/checkouts/readthedocs.org
/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returnc
ode/exit1_fail/e087e177/exit1_fail.out
exit1_fail/e087e177: Writing error file - /home/docs/checkouts/readthedocs.org/u
ser_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass_returncod
e/exit1_fail/e087e177/exit1_fail.err
returncode_list_mismatch/aa7bfb8f: Running Test via command: bash --norc 
--noprofile -eo pipefail returncode_list_mismatch_build.sh
returncode_int_match/13d2f7b1: Running Test via command: bash --norc --noprofile
-eo pipefail returncode_int_match_build.sh
returncode_list_mismatch/aa7bfb8f: Test completed with returncode: 2
returncode_list_mismatch/aa7bfb8f: Test completed in 0.021639 seconds
returncode_list_mismatch/aa7bfb8f: Writing output file -  /home/docs/checkouts/r
eadthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bas
h/pass_returncode/returncode_list_mismatch/aa7bfb8f/returncode_list_mismatch.out
returncode_list_mismatch/aa7bfb8f: Writing error file - /home/docs/checkouts/rea
dthedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/
pass_returncode/returncode_list_mismatch/aa7bfb8f/returncode_list_mismatch.err
returncode_int_match/13d2f7b1: Test completed with returncode: 128
returncode_list_mismatch/aa7bfb8f: Checking returncode - 2 is matched in list 
[1, 3]
returncode_int_match/13d2f7b1: Test completed in 0.02517 seconds
returncode_int_match/13d2f7b1: Writing output file -  /home/docs/checkouts/readt
hedocs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pa
ss_returncode/returncode_int_match/13d2f7b1/returncode_int_match.out
returncode_int_match/13d2f7b1: Writing error file - /home/docs/checkouts/readthe
docs.org/user_builds/buildtest/checkouts/devel/var/tests/generic.local.bash/pass
_returncode/returncode_int_match/13d2f7b1/returncode_int_match.err
returncode_int_match/13d2f7b1: Checking returncode - 128 is matched in list 
[128]
                                  Test Summary                                  
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━┓
┃              ┃              ┃        ┃ Checks        ┃            ┃          ┃
┃              ┃              ┃        ┃ (ReturnCode,  ┃            ┃          ┃
┃              ┃              ┃        ┃ Regex,        ┃            ┃          ┃
┃ Builder      ┃ executor     ┃ status ┃ Runtime)      ┃ ReturnCode ┃ Runtime  ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━┩
│ exit1_fail/f │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 0.028933 │
│ d34148a      │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ exit1_pass/6 │ generic.loc… │ PASS   │ True False    │ 1          │ 0.026116 │
│ d0070de      │              │        │ False         │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_l │ generic.loc… │ FAIL   │ False False   │ 2          │ 0.026508 │
│ ist_mismatch │              │        │ False         │            │          │
│ /a7bf8554    │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_i │ generic.loc… │ PASS   │ True False    │ 128        │ 0.025416 │
│ nt_match/afc │              │        │ False         │            │          │
│ 4328f        │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ exit1_fail/e │ generic.loc… │ FAIL   │ N/A N/A N/A   │ 1          │ 0.031627 │
│ 087e177      │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ exit1_pass/b │ generic.loc… │ PASS   │ True False    │ 1          │ 0.01749  │
│ bd57fd3      │              │        │ False         │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_l │ generic.loc… │ FAIL   │ False False   │ 2          │ 0.021639 │
│ ist_mismatch │              │        │ False         │            │          │
│ /aa7bfb8f    │              │        │               │            │          │
├──────────────┼──────────────┼────────┼───────────────┼────────────┼──────────┤
│ returncode_i │ generic.loc… │ PASS   │ True False    │ 128        │ 0.02517  │
│ nt_match/13d │              │        │ False         │            │          │
│ 2f7b1        │              │        │               │            │          │
└──────────────┴──────────────┴────────┴───────────────┴────────────┴──────────┘



Passed Tests: 4/8 Percentage: 50.000%
Failed Tests: 4/8 Percentage: 50.000%


Adding 8 test results to /home/docs/checkouts/readthedocs.org/user_builds/buildt
est/checkouts/devel/var/report.json
Writing Logfile to: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/var/logs/buildtest__9akfg8g.log

The rebuild option expects a range between 1-50, the --rebuild=1 is equivalent to running without --rebuild option. We set a max limit for rebuild option to avoid system degredation due to high workload.

If you try to exceed this bound you will get an error such as

$ buildtest build -b tutorials/pass_returncode.yml --rebuild 51
╭───────────────────── Traceback (most recent call last) ──────────────────────╮
│                                                                              │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/b │
│ in/buildtest:36 in <module>                                                  │
│                                                                              │
│   33                                                                         │
│   34 import buildtest.main                                                   │
│   35                                                                         │
│ ❱ 36 buildtest.main.main()                                                   │
│   37                                                                         │
│                                                                              │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │ __annotations__ = {}                                                     │ │
│ │    __builtins__ = <module 'builtins' (built-in)>                         │ │
│ │      __cached__ = None                                                   │ │
│ │         __doc__ = ':"\n# preferred pythons for running                   │ │
│ │                   buildtest\nPREFERRED_PYTHONS="python3 python"\n'+365   │ │
│ │        __file__ = '/home/docs/checkouts/readthedocs.org/user_builds/bui… │ │
│ │      __loader__ = <_frozen_importlib_external.SourceFileLoader object at │ │
│ │                   0x7ff46dd88190>                                        │ │
│ │        __name__ = '__main__'                                             │ │
│ │     __package__ = None                                                   │ │
│ │        __spec__ = None                                                   │ │
│ │       buildtest = <module 'buildtest' from                               │ │
│ │                   '/home/docs/checkouts/readthedocs.org/user_builds/bui… │ │
│ │  buildtest_file = '/home/docs/checkouts/readthedocs.org/user_builds/bui… │ │
│ │              os = <module 'os' from                                      │ │
│ │                   '/home/docs/.asdf/installs/python/3.7.12/lib/python3.… │ │
│ │          prefix = '/home/docs/checkouts/readthedocs.org/user_builds/bui… │ │
│ │             sys = <module 'sys' (built-in)>                              │ │
│ ╰──────────────────────────────────────────────────────────────────────────╯ │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/b │
│ uildtest/main.py:125 in main                                                 │
│                                                                              │
│   122 │   │   │   │   account=args.account,                                  │
│   123 │   │   │   │   helpfilter=args.helpfilter,                            │
│   124 │   │   │   │   numprocs=args.procs,                                   │
│ ❱ 125 │   │   │   │   numnodes=args.nodes,                                   │
│   126 │   │   │   )                                                          │
│   127 │   │   │   cmd.build()                                                │
│   128                                                                        │
│                                                                              │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │               args = Namespace(account=None,                             │ │
│ │                      buildspec=['tutorials/pass_returncode.yml'],        │ │
│ │                      configfile=None, debug=False,                       │ │
│ │                      disable_executor_check=True, exclude=None,          │ │
│ │                      executor=None, filter=None, helpfilter=False,       │ │
│ │                      keep_stage_dir=False, maxpendtime=None,             │ │
│ │                      no_color=False, nodes=None, pollinterval=None,      │ │
│ │                      procs=None, rebuild=51, report=None, retry=1,       │ │
│ │                      stage=None, subcommands='build', tags=None,         │ │
│ │                      testdir=None)                                       │ │
│ │        config_file = None                                                │ │
│ │      configuration = <buildtest.config.SiteConfiguration object at       │ │
│ │                      0x7ff46db61110>                                     │ │
│ │              fname = '/home/docs/checkouts/readthedocs.org/user_builds/… │ │
│ │             logger = <Logger buildtest (DEBUG)>                          │ │
│ │           no_color = False                                               │ │
│ │             parser = ArgumentParser(prog='buildtest', usage='%(prog)s    │ │
│ │                      [options] [COMMANDS]', description='buildtest is a  │ │
│ │                      HPC testing framework for building and running      │ │
│ │                      tests.', formatter_class=<class                     │ │
│ │                      'argparse.RawDescriptionHelpFormatter'>,            │ │
│ │                      conflict_handler='error', add_help=True)            │ │
│ │             system = <buildtest.system.BuildTestSystem object at         │ │
│ │                      0x7ff46b9db750>                                     │ │
│ │ validate_executors = True                                                │ │
│ ╰──────────────────────────────────────────────────────────────────────────╯ │
│                                                                              │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/devel/b │
│ uildtest/cli/build.py:541 in __init__                                        │
│                                                                              │
│    538 │   │   │                                                             │
│    539 │   │   │   if rebuild > 50:                                          │
│    540 │   │   │   │   raise BuildTestError(                                 │
│ ❱  541 │   │   │   │   │   f"--rebuild {rebuild} exceeds maximum rebuild lim │
│    542 │   │   │   │   )                                                     │
│    543 │   │                                                                 │
│    544 │   │   self.keep_stage_dir = keep_stage_dir                          │
│                                                                              │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │            account = None                                                │ │
│ │         buildspecs = ['tutorials/pass_returncode.yml']                   │ │
│ │   buildtest_system = <buildtest.system.BuildTestSystem object at         │ │
│ │                      0x7ff46b9db750>                                     │ │
│ │      configuration = <buildtest.config.SiteConfiguration object at       │ │
│ │                      0x7ff46db61110>                                     │ │
│ │ exclude_buildspecs = None                                                │ │
│ │          executors = None                                                │ │
│ │  filter_buildspecs = None                                                │ │
│ │         helpfilter = False                                               │ │
│ │     keep_stage_dir = False                                               │ │
│ │      max_pend_time = None                                                │ │
│ │           numnodes = None                                                │ │
│ │           numprocs = None                                                │ │
│ │      poll_interval = None                                                │ │
│ │            rebuild = 51                                                  │ │
│ │        report_file = None                                                │ │
│ │              retry = 1                                                   │ │
│ │               self = <buildtest.cli.build.BuildTest object at            │ │
│ │                      0x7ff46b983a10>                                     │ │
│ │              stage = None                                                │ │
│ │               tags = None                                                │ │
│ │            testdir = None                                                │ │
│ ╰──────────────────────────────────────────────────────────────────────────╯ │
╰──────────────────────────────────────────────────────────────────────────────╯
BuildTestError: '--rebuild 51 exceeds maximum rebuild limit of 50'

Use Alternate Configuration file

If you want to use an alternate configuration file when building test you can use buildtest -c <config> build. buildtest will prefer configuration file on command line over the user configuration ($HOME/.buildtest/config.yml). For more details see Which configuration file does buildtest read?.

Keeping Stage Directory

buildtest will create setup the test environment in the stage directory where test will be executed. Once test is complete, buildtest will remove the stage directory. If you want to preserve the stage directory you can use buildtest build --keep-stage-dir, this is only useful if you want to run the test manually

Specify Project Account for batch jobs

For batch jobs you typically require one to specify a project account in order to charge jobs depending on your scheduler you can use buildtest build --account option and specify an account name. The command line argument --account will override configuration setting. For more details see Specifying Project Account