Building Test (buildtest build
)
This reference 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.
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
$ buildtest build --help
usage: buildtest [options] [COMMANDS] build [-h] [-b BUILDSPEC] [-x EXCLUDE]
[-n NAME] [-e EXECUTOR]
[-xt EXCLUDE_TAGS] [-t TAGS]
[--rerun] [-f FILTER]
[--helpfilter] [-et {local,batch}]
[--module-purge] [-m MODULES]
[-u UNLOAD_MODULES]
[--account ACCOUNT]
[--maxpendtime MAXPENDTIME]
[--pollinterval POLLINTERVAL]
[--procs PROCS [PROCS ...]]
[--nodes NODES [NODES ...]]
[--display {output,test}]
[--dry-run] [--limit LIMIT]
[--max-jobs MAX_JOBS]
[--profile PROFILE]
[--remove-stagedir]
[--rebuild REBUILD]
[--retry RETRY]
[--save-profile SAVE_PROFILE]
[--strict] [--testdir TESTDIR]
[--timeout TIMEOUT] [--validate]
[--write-config-file WRITE_CONFIG_FILE]
options:
-h, --help show this help message and exit
discover:
Select buildspec file to run based on file, tag, executor
-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.
-n NAME, --name NAME Specify a name of test to run
-e EXECUTOR, --executor EXECUTOR
Discover buildspecs by executor name found in
buildspec cache
-xt EXCLUDE_TAGS, --exclude-tags EXCLUDE_TAGS
Exclude tests by one or more tagnames found in
buildspec cache
-t TAGS, --tags TAGS Discover buildspecs by tags found in buildspec cache
--rerun Rerun last successful buildtest build command.
filter:
Filter tests after selection
-f FILTER, --filter FILTER
Filter buildspec based on tags, type, or maintainers.
Usage: --filter
key1=val1,val2;key2=val3;key3=val4,val5
--helpfilter Show available filter fields used with --filter option
-et {local,batch}, --executor-type {local,batch}
Filter tests by executor type (local, batch)
module:
Module Selection option
--module-purge Run 'module purge' before running any test
-m MODULES, --modules MODULES
Specify a list of modules to load during test
execution, to specify multiple modules each one must
be comma separated for instance if you want to load
'gcc' and 'python' module you can do '-m gcc,python'
-u UNLOAD_MODULES, --unload-modules UNLOAD_MODULES
Specify a list of modules to unload during test
execution
batch:
Batch Submission options
--account ACCOUNT Specify project account used to charge batch jobs
(applicable for batch jobs only)
--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
--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.
extra:
All extra options
--display {output,test}
Display content of output/error or test
--dry-run Show a list of tests that will potentially be run
without actually running them.
--limit LIMIT Limit number of tests that can be run.
--max-jobs MAX_JOBS Maximum number of jobs that can be run concurrently.
--profile PROFILE Specify a profile to load from configuration file
--remove-stagedir Remove stage directory after job completion.
--rebuild REBUILD Rebuild test X number of times. Must be a positive
number between [1-50]
--retry RETRY Retry failed jobs
--save-profile SAVE_PROFILE
Save buildtest command options into a profile and
update configuration file
--strict Enable strict mode for test by setting 'set -eo
pipefail' in test script
--testdir TESTDIR Specify a custom test directory where to write tests.
This overrides configuration file and default
location.
--timeout TIMEOUT Specify test timeout in number of seconds
--validate Validate given buildspecs and control behavior of
buildtest build to stop execution after parsing the
YAML files.
--write-config-file WRITE_CONFIG_FILE
Specify path to configuration file to write changes
when saving profile
Building a Test (buildtest build --buildspec
)
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 build -b $BUILDTEST_ROOT/tutorials/vars.yml
Buildspec Paths: ['/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials', '/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests']
Updating buildspec cache file: /tmp/tmpy0414mby/var/buildspecs/cache.json
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:02:52 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/6 │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 6572989 │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/66572989: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/66572989
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
variables_bash/66572989 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/66572989 │
└─────────────────────────┘
variables_bash/66572989: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/66572989/stage
variables_bash/66572989: Running Test via command: bash variables_bash_build.sh
variables_bash/66572989: Test completed in 0.009525 seconds with returncode: 0
variables_bash/66572989: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/66572989/variables_bash.out
variables_bash/66572989: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/66572989/variables_bash.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ variables_bash/66572989 │ generic.local.bash │ PASS │ 0 │ 0.010 │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_1qsem5wf.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 $BUILDTEST_ROOT/general_tests/configuration/
$ buildtest build -b $BUILDTEST_ROOT/general_tests/configuration/
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:03:42 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/systemd-default-target.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/disk_usage.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/kernel_state.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/ulimits.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 4 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 4
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 4
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 4
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/systemd-default-target.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/disk_usage.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/kernel_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/ulimits.yml: VALID
Total builder objects created: 9
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ systemd_ │ script │ generic. │ None │ None │ None │ check if │ /home/d │
│ default_ │ │ local.ba │ │ │ │ default │ ocs/che │
│ target/4 │ │ sh │ │ │ │ target │ ckouts/ │
│ 810bb34 │ │ │ │ │ │ is │ readthe │
│ │ │ │ │ │ │ multi-us │ docs.or │
│ │ │ │ │ │ │ er.targe │ g/user_ │
│ │ │ │ │ │ │ t │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/s │
│ │ │ │ │ │ │ │ ystemd- │
│ │ │ │ │ │ │ │ default │
│ │ │ │ │ │ │ │ -target │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ root_dis │ script │ generic. │ None │ None │ None │ Check │ /home/d │
│ k_usage/ │ │ local.ba │ │ │ │ root │ ocs/che │
│ 8f0beaa3 │ │ sh │ │ │ │ disk │ ckouts/ │
│ │ │ │ │ │ │ usage │ readthe │
│ │ │ │ │ │ │ and │ docs.or │
│ │ │ │ │ │ │ report │ g/user_ │
│ │ │ │ │ │ │ if it │ builds/ │
│ │ │ │ │ │ │ exceeds │ buildte │
│ │ │ │ │ │ │ threshol │ st/chec │
│ │ │ │ │ │ │ d │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/d │
│ │ │ │ │ │ │ │ isk_usa │
│ │ │ │ │ │ │ │ ge.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ kernel_s │ script │ generic. │ None │ None │ None │ Retrieve │ /home/d │
│ wapusage │ │ local.ba │ │ │ │ Kernel │ ocs/che │
│ /ed26c75 │ │ sh │ │ │ │ Swap │ ckouts/ │
│ 5 │ │ │ │ │ │ Usage │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/k │
│ │ │ │ │ │ │ │ ernel_s │
│ │ │ │ │ │ │ │ tate.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_f │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ ilelock_ │ │ local.ba │ │ │ │ file │ ocs/che │
│ unlimite │ │ sh │ │ │ │ lock is │ ckouts/ │
│ d/34b939 │ │ │ │ │ │ set to │ readthe │
│ 59 │ │ │ │ │ │ unlimite │ docs.or │
│ │ │ │ │ │ │ d in │ g/user_ │
│ │ │ │ │ │ │ ulimits │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_c │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ putime_u │ │ local.ba │ │ │ │ cputime │ ocs/che │
│ nlimited │ │ sh │ │ │ │ is set │ ckouts/ │
│ /99094ca │ │ │ │ │ │ to │ readthe │
│ 8 │ │ │ │ │ │ unlimite │ docs.or │
│ │ │ │ │ │ │ d in │ g/user_ │
│ │ │ │ │ │ │ ulimits │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_s │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ tacksize │ │ local.ba │ │ │ │ stack │ ocs/che │
│ _unlimit │ │ sh │ │ │ │ size is │ ckouts/ │
│ ed/650f3 │ │ │ │ │ │ set to │ readthe │
│ 648 │ │ │ │ │ │ unlimite │ docs.or │
│ │ │ │ │ │ │ d in │ g/user_ │
│ │ │ │ │ │ │ ulimits │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_v │ script │ generic. │ None │ None │ None │ Check │ /home/d │
│ msize_un │ │ local.ba │ │ │ │ virtual │ ocs/che │
│ limited/ │ │ sh │ │ │ │ memory │ ckouts/ │
│ 2ff4137a │ │ │ │ │ │ size and │ readthe │
│ │ │ │ │ │ │ check if │ docs.or │
│ │ │ │ │ │ │ its set │ g/user_ │
│ │ │ │ │ │ │ to │ builds/ │
│ │ │ │ │ │ │ unlimite │ buildte │
│ │ │ │ │ │ │ d │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_f │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ iledescr │ │ local.ba │ │ │ │ open │ ocs/che │
│ iptor_40 │ │ sh │ │ │ │ file │ ckouts/ │
│ 96/1b17d │ │ │ │ │ │ descript │ readthe │
│ 9a1 │ │ │ │ │ │ ors │ docs.or │
│ │ │ │ │ │ │ limit is │ g/user_ │
│ │ │ │ │ │ │ set to │ builds/ │
│ │ │ │ │ │ │ 4096 │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_m │ script │ generic. │ None │ None │ None │ Check │ /home/d │
│ ax_user_ │ │ local.ba │ │ │ │ max │ ocs/che │
│ process_ │ │ sh │ │ │ │ number │ ckouts/ │
│ 2048/791 │ │ │ │ │ │ of user │ readthe │
│ d5849 │ │ │ │ │ │ process │ docs.or │
│ │ │ │ │ │ │ limit is │ g/user_ │
│ │ │ │ │ │ │ set to │ builds/ │
│ │ │ │ │ │ │ 2048 │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
systemd_default_target/4810bb34: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/4810bb34
root_disk_usage/8f0beaa3: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/8f0beaa3
kernel_swapusage/ed26c755: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/ed26c755
ulimit_filelock_unlimited/34b93959: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/34b93959
ulimit_cputime_unlimited/99094ca8: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/99094ca8
ulimit_stacksize_unlimited/650f3648: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/650f3648
ulimit_vmsize_unlimited/2ff4137a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/2ff4137a
ulimit_filedescriptor_4096/1b17d9a1: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/1b17d9a1
ulimit_max_user_process_2048/791d5849: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/791d5849
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
ulimit_filedescriptor_4096/1b17d9a1 does not have any dependencies adding test to queue
ulimit_filelock_unlimited/34b93959 does not have any dependencies adding test to queue
ulimit_vmsize_unlimited/2ff4137a does not have any dependencies adding test to queue
ulimit_cputime_unlimited/99094ca8 does not have any dependencies adding test to queue
kernel_swapusage/ed26c755 does not have any dependencies adding test to queue
ulimit_max_user_process_2048/791d5849 does not have any dependencies adding test to queue
ulimit_stacksize_unlimited/650f3648 does not have any dependencies adding test to queue
systemd_default_target/4810bb34 does not have any dependencies adding test to queue
root_disk_usage/8f0beaa3 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ ulimit_filedescriptor_4096/1b17d9a1 │
│ ulimit_filelock_unlimited/34b93959 │
│ ulimit_vmsize_unlimited/2ff4137a │
│ root_disk_usage/8f0beaa3 │
│ ulimit_cputime_unlimited/99094ca8 │
│ ulimit_max_user_process_2048/791d5849 │
│ ulimit_stacksize_unlimited/650f3648 │
│ systemd_default_target/4810bb34 │
│ kernel_swapusage/ed26c755 │
└───────────────────────────────────────┘
ulimit_filedescriptor_4096/1b17d9a1: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/1b17d9a1/stage
ulimit_filedescriptor_4096/1b17d9a1: Running Test via command: bash ulimit_filedescriptor_4096_build.sh
ulimit_filedescriptor_4096/1b17d9a1: Test completed in 0.004405 seconds with returncode: 0
ulimit_filedescriptor_4096/1b17d9a1: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/1b17d9a1/ulimit_filedescriptor_4096.out
ulimit_filedescriptor_4096/1b17d9a1: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/1b17d9a1/ulimit_filedescriptor_4096.err
ulimit_filedescriptor_4096/1b17d9a1: performing regular expression - '^4096$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/1b17d9a1/ulimit_filedescriptor_4096.out
ulimit_filedescriptor_4096/1b17d9a1: Regular Expression Match - Failed!
ulimit_filelock_unlimited/34b93959: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/34b93959/stage
ulimit_filelock_unlimited/34b93959: Running Test via command: bash ulimit_filelock_unlimited_build.sh
ulimit_filelock_unlimited/34b93959: Test completed in 0.004569 seconds with returncode: 0
ulimit_filelock_unlimited/34b93959: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/34b93959/ulimit_filelock_unlimited.out
ulimit_filelock_unlimited/34b93959: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/34b93959/ulimit_filelock_unlimited.err
ulimit_filelock_unlimited/34b93959: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/34b93959/ulimit_filelock_unlimited.out
ulimit_filelock_unlimited/34b93959: Regular Expression Match - Success!
ulimit_vmsize_unlimited/2ff4137a: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/2ff4137a/stage
ulimit_vmsize_unlimited/2ff4137a: Running Test via command: bash ulimit_vmsize_unlimited_build.sh
ulimit_vmsize_unlimited/2ff4137a: Test completed in 0.004205 seconds with returncode: 0
ulimit_vmsize_unlimited/2ff4137a: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/2ff4137a/ulimit_vmsize_unlimited.out
ulimit_vmsize_unlimited/2ff4137a: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/2ff4137a/ulimit_vmsize_unlimited.err
ulimit_vmsize_unlimited/2ff4137a: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/2ff4137a/ulimit_vmsize_unlimited.out
ulimit_vmsize_unlimited/2ff4137a: Regular Expression Match - Success!
root_disk_usage/8f0beaa3: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/8f0beaa3/stage
root_disk_usage/8f0beaa3: Running Test via command: bash root_disk_usage_build.sh
root_disk_usage/8f0beaa3: Test completed in 0.008816 seconds with returncode: 0
root_disk_usage/8f0beaa3: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/8f0beaa3/root_disk_usage.out
root_disk_usage/8f0beaa3: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/8f0beaa3/root_disk_usage.err
ulimit_cputime_unlimited/99094ca8: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/99094ca8/stage
ulimit_cputime_unlimited/99094ca8: Running Test via command: bash ulimit_cputime_unlimited_build.sh
ulimit_cputime_unlimited/99094ca8: Test completed in 0.004135 seconds with returncode: 0
ulimit_cputime_unlimited/99094ca8: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/99094ca8/ulimit_cputime_unlimited.out
ulimit_cputime_unlimited/99094ca8: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/99094ca8/ulimit_cputime_unlimited.err
ulimit_cputime_unlimited/99094ca8: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/99094ca8/ulimit_cputime_unlimited.out
ulimit_cputime_unlimited/99094ca8: Regular Expression Match - Success!
ulimit_max_user_process_2048/791d5849: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/791d5849/stage
ulimit_max_user_process_2048/791d5849: Running Test via command: bash ulimit_max_user_process_2048_build.sh
ulimit_max_user_process_2048/791d5849: Test completed in 0.00436 seconds with returncode: 0
ulimit_max_user_process_2048/791d5849: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/791d5849/ulimit_max_user_process_2048.out
ulimit_max_user_process_2048/791d5849: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/791d5849/ulimit_max_user_process_2048.err
ulimit_max_user_process_2048/791d5849: performing regular expression - '^2048$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/791d5849/ulimit_max_user_process_2048.out
ulimit_max_user_process_2048/791d5849: Regular Expression Match - Failed!
ulimit_stacksize_unlimited/650f3648: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/650f3648/stage
ulimit_stacksize_unlimited/650f3648: Running Test via command: bash ulimit_stacksize_unlimited_build.sh
ulimit_stacksize_unlimited/650f3648: Test completed in 0.005635 seconds with returncode: 0
ulimit_stacksize_unlimited/650f3648: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/650f3648/ulimit_stacksize_unlimited.out
ulimit_stacksize_unlimited/650f3648: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/650f3648/ulimit_stacksize_unlimited.err
ulimit_stacksize_unlimited/650f3648: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/650f3648/ulimit_stacksize_unlimited.out
ulimit_stacksize_unlimited/650f3648: Regular Expression Match - Failed!
systemd_default_target/4810bb34: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/4810bb34/stage
systemd_default_target/4810bb34: Running Test via command: bash systemd_default_target_build.sh
systemd_default_target/4810bb34: failed to submit job with returncode: 1
systemd_default_target/4810bb34: Detected failure in running test, will attempt to retry test: 1 times
systemd_default_target/4810bb34: Run - 1/1
systemd_default_target/4810bb34: Running Test via command: bash systemd_default_target_build.sh
systemd_default_target/4810bb34: failed to submit job with returncode: 1
systemd_default_target/4810bb34: Test completed in 0.016495 seconds with returncode: 1
systemd_default_target/4810bb34: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/4810bb34/systemd_default_target.out
systemd_default_target/4810bb34: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/4810bb34/systemd_default_target.err
kernel_swapusage/ed26c755: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/ed26c755/stage
kernel_swapusage/ed26c755: Running Test via command: bash kernel_swapusage_build.sh
kernel_swapusage/ed26c755: failed to submit job with returncode: 255
kernel_swapusage/ed26c755: Detected failure in running test, will attempt to retry test: 1 times
kernel_swapusage/ed26c755: Run - 1/1
kernel_swapusage/ed26c755: Running Test via command: bash kernel_swapusage_build.sh
kernel_swapusage/ed26c755: failed to submit job with returncode: 255
kernel_swapusage/ed26c755: Test completed in 0.012816 seconds with returncode: 255
kernel_swapusage/ed26c755: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/ed26c755/kernel_swapusage.out
kernel_swapusage/ed26c755: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/ed26c755/kernel_swapusage.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ ulimit_cputime_unlimite │ generic.local.bash │ PASS │ 0 │ 0.004 │
│ d/99094ca8 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_filedescriptor_4 │ generic.local.bash │ FAIL │ 0 │ 0.004 │
│ 096/1b17d9a1 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_stacksize_unlimi │ generic.local.bash │ FAIL │ 0 │ 0.006 │
│ ted/650f3648 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_filelock_unlimit │ generic.local.bash │ PASS │ 0 │ 0.005 │
│ ed/34b93959 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ systemd_default_target/ │ generic.local.bash │ FAIL │ 1 │ 0.016 │
│ 4810bb34 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_max_user_process │ generic.local.bash │ FAIL │ 0 │ 0.004 │
│ _2048/791d5849 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ root_disk_usage/8f0beaa │ generic.local.bash │ PASS │ 0 │ 0.009 │
│ 3 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ kernel_swapusage/ed26c7 │ generic.local.bash │ FAIL │ 255 │ 0.013 │
│ 55 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_vmsize_unlimited │ generic.local.bash │ PASS │ 0 │ 0.004 │
│ /2ff4137a │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 4/9 Percentage: 44.444%
Failed Tests: 5/9 Percentage: 55.556%
Adding 9 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_uxl5tljt.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 $BUILDTEST_ROOT/general_tests/configuration/ -b $BUILDTEST_ROOT/tutorials/vars.yml
$ buildtest build -b $BUILDTEST_ROOT/general_tests/configuration/ -b $BUILDTEST_ROOT/tutorials/vars.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:03:43 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/kernel_state.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/systemd-default-target.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/disk_usage.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/ulimits.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 5 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 5
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 5
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 5
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/kernel_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/systemd-default-target.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/disk_usage.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/ulimits.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 10
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ kernel_s │ script │ generic. │ None │ None │ None │ Retrieve │ /home/d │
│ wapusage │ │ local.ba │ │ │ │ Kernel │ ocs/che │
│ /5b090d4 │ │ sh │ │ │ │ Swap │ ckouts/ │
│ 9 │ │ │ │ │ │ Usage │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/k │
│ │ │ │ │ │ │ │ ernel_s │
│ │ │ │ │ │ │ │ tate.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ systemd_ │ script │ generic. │ None │ None │ None │ check if │ /home/d │
│ default_ │ │ local.ba │ │ │ │ default │ ocs/che │
│ target/0 │ │ sh │ │ │ │ target │ ckouts/ │
│ f33fa26 │ │ │ │ │ │ is │ readthe │
│ │ │ │ │ │ │ multi-us │ docs.or │
│ │ │ │ │ │ │ er.targe │ g/user_ │
│ │ │ │ │ │ │ t │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/s │
│ │ │ │ │ │ │ │ ystemd- │
│ │ │ │ │ │ │ │ default │
│ │ │ │ │ │ │ │ -target │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ root_dis │ script │ generic. │ None │ None │ None │ Check │ /home/d │
│ k_usage/ │ │ local.ba │ │ │ │ root │ ocs/che │
│ c981b5d3 │ │ sh │ │ │ │ disk │ ckouts/ │
│ │ │ │ │ │ │ usage │ readthe │
│ │ │ │ │ │ │ and │ docs.or │
│ │ │ │ │ │ │ report │ g/user_ │
│ │ │ │ │ │ │ if it │ builds/ │
│ │ │ │ │ │ │ exceeds │ buildte │
│ │ │ │ │ │ │ threshol │ st/chec │
│ │ │ │ │ │ │ d │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/d │
│ │ │ │ │ │ │ │ isk_usa │
│ │ │ │ │ │ │ │ ge.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_f │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ ilelock_ │ │ local.ba │ │ │ │ file │ ocs/che │
│ unlimite │ │ sh │ │ │ │ lock is │ ckouts/ │
│ d/f8ead1 │ │ │ │ │ │ set to │ readthe │
│ a2 │ │ │ │ │ │ unlimite │ docs.or │
│ │ │ │ │ │ │ d in │ g/user_ │
│ │ │ │ │ │ │ ulimits │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_c │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ putime_u │ │ local.ba │ │ │ │ cputime │ ocs/che │
│ nlimited │ │ sh │ │ │ │ is set │ ckouts/ │
│ /02e360b │ │ │ │ │ │ to │ readthe │
│ d │ │ │ │ │ │ unlimite │ docs.or │
│ │ │ │ │ │ │ d in │ g/user_ │
│ │ │ │ │ │ │ ulimits │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_s │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ tacksize │ │ local.ba │ │ │ │ stack │ ocs/che │
│ _unlimit │ │ sh │ │ │ │ size is │ ckouts/ │
│ ed/12535 │ │ │ │ │ │ set to │ readthe │
│ cc4 │ │ │ │ │ │ unlimite │ docs.or │
│ │ │ │ │ │ │ d in │ g/user_ │
│ │ │ │ │ │ │ ulimits │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_v │ script │ generic. │ None │ None │ None │ Check │ /home/d │
│ msize_un │ │ local.ba │ │ │ │ virtual │ ocs/che │
│ limited/ │ │ sh │ │ │ │ memory │ ckouts/ │
│ 95e21ea3 │ │ │ │ │ │ size and │ readthe │
│ │ │ │ │ │ │ check if │ docs.or │
│ │ │ │ │ │ │ its set │ g/user_ │
│ │ │ │ │ │ │ to │ builds/ │
│ │ │ │ │ │ │ unlimite │ buildte │
│ │ │ │ │ │ │ d │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_f │ script │ generic. │ None │ None │ None │ Check if │ /home/d │
│ iledescr │ │ local.ba │ │ │ │ open │ ocs/che │
│ iptor_40 │ │ sh │ │ │ │ file │ ckouts/ │
│ 96/6a8a8 │ │ │ │ │ │ descript │ readthe │
│ b39 │ │ │ │ │ │ ors │ docs.or │
│ │ │ │ │ │ │ limit is │ g/user_ │
│ │ │ │ │ │ │ set to │ builds/ │
│ │ │ │ │ │ │ 4096 │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ ulimit_m │ script │ generic. │ None │ None │ None │ Check │ /home/d │
│ ax_user_ │ │ local.ba │ │ │ │ max │ ocs/che │
│ process_ │ │ sh │ │ │ │ number │ ckouts/ │
│ 2048/7c8 │ │ │ │ │ │ of user │ readthe │
│ 6969b │ │ │ │ │ │ process │ docs.or │
│ │ │ │ │ │ │ limit is │ g/user_ │
│ │ │ │ │ │ │ set to │ builds/ │
│ │ │ │ │ │ │ 2048 │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/u │
│ │ │ │ │ │ │ │ limits. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/d │ │ local.ba │ │ │ │ shell │ ocs/che │
│ d6722c3 │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
kernel_swapusage/5b090d49: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/5b090d49
systemd_default_target/0f33fa26: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/0f33fa26
root_disk_usage/c981b5d3: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/c981b5d3
ulimit_filelock_unlimited/f8ead1a2: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/f8ead1a2
ulimit_cputime_unlimited/02e360bd: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/02e360bd
ulimit_stacksize_unlimited/12535cc4: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/12535cc4
ulimit_vmsize_unlimited/95e21ea3: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/95e21ea3
ulimit_filedescriptor_4096/6a8a8b39: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/6a8a8b39
ulimit_max_user_process_2048/7c86969b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/7c86969b
variables_bash/dd6722c3: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/dd6722c3
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
ulimit_cputime_unlimited/02e360bd does not have any dependencies adding test to queue
kernel_swapusage/5b090d49 does not have any dependencies adding test to queue
ulimit_max_user_process_2048/7c86969b does not have any dependencies adding test to queue
variables_bash/dd6722c3 does not have any dependencies adding test to queue
systemd_default_target/0f33fa26 does not have any dependencies adding test to queue
ulimit_filelock_unlimited/f8ead1a2 does not have any dependencies adding test to queue
root_disk_usage/c981b5d3 does not have any dependencies adding test to queue
ulimit_stacksize_unlimited/12535cc4 does not have any dependencies adding test to queue
ulimit_vmsize_unlimited/95e21ea3 does not have any dependencies adding test to queue
ulimit_filedescriptor_4096/6a8a8b39 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ ulimit_cputime_unlimited/02e360bd │
│ kernel_swapusage/5b090d49 │
│ ulimit_max_user_process_2048/7c86969b │
│ variables_bash/dd6722c3 │
│ systemd_default_target/0f33fa26 │
│ ulimit_filelock_unlimited/f8ead1a2 │
│ root_disk_usage/c981b5d3 │
│ ulimit_stacksize_unlimited/12535cc4 │
│ ulimit_vmsize_unlimited/95e21ea3 │
│ ulimit_filedescriptor_4096/6a8a8b39 │
└───────────────────────────────────────┘
ulimit_cputime_unlimited/02e360bd: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/02e360bd/stage
ulimit_cputime_unlimited/02e360bd: Running Test via command: bash ulimit_cputime_unlimited_build.sh
ulimit_cputime_unlimited/02e360bd: Test completed in 0.004321 seconds with returncode: 0
ulimit_cputime_unlimited/02e360bd: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/02e360bd/ulimit_cputime_unlimited.out
ulimit_cputime_unlimited/02e360bd: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/02e360bd/ulimit_cputime_unlimited.err
ulimit_cputime_unlimited/02e360bd: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_cputime_unlimited/02e360bd/ulimit_cputime_unlimited.out
ulimit_cputime_unlimited/02e360bd: Regular Expression Match - Success!
kernel_swapusage/5b090d49: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/5b090d49/stage
kernel_swapusage/5b090d49: Running Test via command: bash kernel_swapusage_build.sh
kernel_swapusage/5b090d49: failed to submit job with returncode: 255
kernel_swapusage/5b090d49: Detected failure in running test, will attempt to retry test: 1 times
kernel_swapusage/5b090d49: Run - 1/1
kernel_swapusage/5b090d49: Running Test via command: bash kernel_swapusage_build.sh
kernel_swapusage/5b090d49: failed to submit job with returncode: 255
kernel_swapusage/5b090d49: Test completed in 0.011927 seconds with returncode: 255
kernel_swapusage/5b090d49: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/5b090d49/kernel_swapusage.out
kernel_swapusage/5b090d49: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/5b090d49/kernel_swapusage.err
ulimit_max_user_process_2048/7c86969b: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/7c86969b/stage
ulimit_max_user_process_2048/7c86969b: Running Test via command: bash ulimit_max_user_process_2048_build.sh
ulimit_max_user_process_2048/7c86969b: Test completed in 0.004597 seconds with returncode: 0
ulimit_max_user_process_2048/7c86969b: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/7c86969b/ulimit_max_user_process_2048.out
ulimit_max_user_process_2048/7c86969b: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/7c86969b/ulimit_max_user_process_2048.err
ulimit_max_user_process_2048/7c86969b: performing regular expression - '^2048$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_max_user_process_2048/7c86969b/ulimit_max_user_process_2048.out
ulimit_max_user_process_2048/7c86969b: Regular Expression Match - Failed!
variables_bash/dd6722c3: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/dd6722c3/stage
variables_bash/dd6722c3: Running Test via command: bash variables_bash_build.sh
variables_bash/dd6722c3: Test completed in 0.007787 seconds with returncode: 0
variables_bash/dd6722c3: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/dd6722c3/variables_bash.out
variables_bash/dd6722c3: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/dd6722c3/variables_bash.err
systemd_default_target/0f33fa26: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/0f33fa26/stage
systemd_default_target/0f33fa26: Running Test via command: bash systemd_default_target_build.sh
systemd_default_target/0f33fa26: failed to submit job with returncode: 1
systemd_default_target/0f33fa26: Detected failure in running test, will attempt to retry test: 1 times
systemd_default_target/0f33fa26: Run - 1/1
systemd_default_target/0f33fa26: Running Test via command: bash systemd_default_target_build.sh
systemd_default_target/0f33fa26: failed to submit job with returncode: 1
systemd_default_target/0f33fa26: Test completed in 0.015487 seconds with returncode: 1
systemd_default_target/0f33fa26: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/0f33fa26/systemd_default_target.out
systemd_default_target/0f33fa26: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/0f33fa26/systemd_default_target.err
ulimit_filelock_unlimited/f8ead1a2: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/f8ead1a2/stage
ulimit_filelock_unlimited/f8ead1a2: Running Test via command: bash ulimit_filelock_unlimited_build.sh
ulimit_filelock_unlimited/f8ead1a2: Test completed in 0.004225 seconds with returncode: 0
ulimit_filelock_unlimited/f8ead1a2: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/f8ead1a2/ulimit_filelock_unlimited.out
ulimit_filelock_unlimited/f8ead1a2: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/f8ead1a2/ulimit_filelock_unlimited.err
ulimit_filelock_unlimited/f8ead1a2: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filelock_unlimited/f8ead1a2/ulimit_filelock_unlimited.out
ulimit_filelock_unlimited/f8ead1a2: Regular Expression Match - Success!
root_disk_usage/c981b5d3: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/c981b5d3/stage
root_disk_usage/c981b5d3: Running Test via command: bash root_disk_usage_build.sh
root_disk_usage/c981b5d3: Test completed in 0.008511 seconds with returncode: 0
root_disk_usage/c981b5d3: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/c981b5d3/root_disk_usage.out
root_disk_usage/c981b5d3: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/c981b5d3/root_disk_usage.err
ulimit_stacksize_unlimited/12535cc4: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/12535cc4/stage
ulimit_stacksize_unlimited/12535cc4: Running Test via command: bash ulimit_stacksize_unlimited_build.sh
ulimit_stacksize_unlimited/12535cc4: Test completed in 0.004651 seconds with returncode: 0
ulimit_stacksize_unlimited/12535cc4: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/12535cc4/ulimit_stacksize_unlimited.out
ulimit_stacksize_unlimited/12535cc4: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/12535cc4/ulimit_stacksize_unlimited.err
ulimit_stacksize_unlimited/12535cc4: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_stacksize_unlimited/12535cc4/ulimit_stacksize_unlimited.out
ulimit_stacksize_unlimited/12535cc4: Regular Expression Match - Failed!
ulimit_vmsize_unlimited/95e21ea3: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/95e21ea3/stage
ulimit_vmsize_unlimited/95e21ea3: Running Test via command: bash ulimit_vmsize_unlimited_build.sh
ulimit_vmsize_unlimited/95e21ea3: Test completed in 0.004313 seconds with returncode: 0
ulimit_vmsize_unlimited/95e21ea3: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/95e21ea3/ulimit_vmsize_unlimited.out
ulimit_vmsize_unlimited/95e21ea3: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/95e21ea3/ulimit_vmsize_unlimited.err
ulimit_vmsize_unlimited/95e21ea3: performing regular expression - '^unlimited$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_vmsize_unlimited/95e21ea3/ulimit_vmsize_unlimited.out
ulimit_vmsize_unlimited/95e21ea3: Regular Expression Match - Success!
ulimit_filedescriptor_4096/6a8a8b39: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/6a8a8b39/stage
ulimit_filedescriptor_4096/6a8a8b39: Running Test via command: bash ulimit_filedescriptor_4096_build.sh
ulimit_filedescriptor_4096/6a8a8b39: Test completed in 0.004424 seconds with returncode: 0
ulimit_filedescriptor_4096/6a8a8b39: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/6a8a8b39/ulimit_filedescriptor_4096.out
ulimit_filedescriptor_4096/6a8a8b39: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/6a8a8b39/ulimit_filedescriptor_4096.err
ulimit_filedescriptor_4096/6a8a8b39: performing regular expression - '^4096$' on file: /tmp/tmpy0414mby/var/tests/generic.local.bash/ulimits/ulimit_filedescriptor_4096/6a8a8b39/ulimit_filedescriptor_4096.out
ulimit_filedescriptor_4096/6a8a8b39: Regular Expression Match - Failed!
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ ulimit_stacksize_unlimi │ generic.local.bash │ FAIL │ 0 │ 0.005 │
│ ted/12535cc4 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ kernel_swapusage/5b090d │ generic.local.bash │ FAIL │ 255 │ 0.012 │
│ 49 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ root_disk_usage/c981b5d │ generic.local.bash │ PASS │ 0 │ 0.009 │
│ 3 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ variables_bash/dd6722c3 │ generic.local.bash │ PASS │ 0 │ 0.008 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ systemd_default_target/ │ generic.local.bash │ FAIL │ 1 │ 0.015 │
│ 0f33fa26 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_vmsize_unlimited │ generic.local.bash │ PASS │ 0 │ 0.004 │
│ /95e21ea3 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_filelock_unlimit │ generic.local.bash │ PASS │ 0 │ 0.004 │
│ ed/f8ead1a2 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_cputime_unlimite │ generic.local.bash │ PASS │ 0 │ 0.004 │
│ d/02e360bd │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_max_user_process │ generic.local.bash │ FAIL │ 0 │ 0.005 │
│ _2048/7c86969b │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ ulimit_filedescriptor_4 │ generic.local.bash │ FAIL │ 0 │ 0.004 │
│ 096/6a8a8b39 │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 5/10 Percentage: 50.000%
Failed Tests: 5/10 Percentage: 50.000%
Adding 10 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_blmy1riv.log
Excluding Buildspecs (buildtest build --exclude
)
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 bd -b tutorials/ -x tutorials/ ╭───────────────────────────── buildtest summary ──────────────────────────────╮ │ │ │ User: docs │ │ Hostname: build-26220537-project-280831-buildtest │ │ Platform: Linux │ │ Current Time: 2024/11/08 18:03:46 │ │ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ buildtest version: 2.1 │ │ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ python version: 3.10.14 │ │ Configuration File: /tmp/tmpy0414mby/config.yml │ │ Test Directory: /tmp/tmpy0414mby/var/tests │ │ Report File: /tmp/tmpy0414mby/var/report.json │ │ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ Unable to detect any 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 bd -b general_tests/configuration/ -x general_tests/configuration/ulimits.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:03:47 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/systemd-default-target.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/ulimits.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/disk_usage.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/kernel_state.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 4 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Excluded buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ general_tests/configuration/ulimits.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 4
Total Excluded Buildspecs: 1
Detected Buildspecs after exclusion: 3
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 3
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/systemd-default-target.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/disk_usage.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/general_tests/configuration/kernel_state.yml: VALID
Total builder objects created: 3
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ systemd_ │ script │ generic. │ None │ None │ None │ check if │ /home/d │
│ default_ │ │ local.ba │ │ │ │ default │ ocs/che │
│ target/1 │ │ sh │ │ │ │ target │ ckouts/ │
│ ae5e393 │ │ │ │ │ │ is │ readthe │
│ │ │ │ │ │ │ multi-us │ docs.or │
│ │ │ │ │ │ │ er.targe │ g/user_ │
│ │ │ │ │ │ │ t │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/s │
│ │ │ │ │ │ │ │ ystemd- │
│ │ │ │ │ │ │ │ default │
│ │ │ │ │ │ │ │ -target │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ root_dis │ script │ generic. │ None │ None │ None │ Check │ /home/d │
│ k_usage/ │ │ local.ba │ │ │ │ root │ ocs/che │
│ bbcb1477 │ │ sh │ │ │ │ disk │ ckouts/ │
│ │ │ │ │ │ │ usage │ readthe │
│ │ │ │ │ │ │ and │ docs.or │
│ │ │ │ │ │ │ report │ g/user_ │
│ │ │ │ │ │ │ if it │ builds/ │
│ │ │ │ │ │ │ exceeds │ buildte │
│ │ │ │ │ │ │ threshol │ st/chec │
│ │ │ │ │ │ │ d │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/d │
│ │ │ │ │ │ │ │ isk_usa │
│ │ │ │ │ │ │ │ ge.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ kernel_s │ script │ generic. │ None │ None │ None │ Retrieve │ /home/d │
│ wapusage │ │ local.ba │ │ │ │ Kernel │ ocs/che │
│ /0c433ea │ │ sh │ │ │ │ Swap │ ckouts/ │
│ d │ │ │ │ │ │ Usage │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/g │
│ │ │ │ │ │ │ │ eneral_ │
│ │ │ │ │ │ │ │ tests/c │
│ │ │ │ │ │ │ │ onfigur │
│ │ │ │ │ │ │ │ ation/k │
│ │ │ │ │ │ │ │ ernel_s │
│ │ │ │ │ │ │ │ tate.ym │
│ │ │ │ │ │ │ │ l │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
systemd_default_target/1ae5e393: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/1ae5e393
root_disk_usage/bbcb1477: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/bbcb1477
kernel_swapusage/0c433ead: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/0c433ead
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
kernel_swapusage/0c433ead does not have any dependencies adding test to queue
systemd_default_target/1ae5e393 does not have any dependencies adding test to queue
root_disk_usage/bbcb1477 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ kernel_swapusage/0c433ead │
│ systemd_default_target/1ae5e393 │
│ root_disk_usage/bbcb1477 │
└─────────────────────────────────┘
kernel_swapusage/0c433ead: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/0c433ead/stage
kernel_swapusage/0c433ead: Running Test via command: bash kernel_swapusage_build.sh
kernel_swapusage/0c433ead: failed to submit job with returncode: 255
kernel_swapusage/0c433ead: Detected failure in running test, will attempt to retry test: 1 times
kernel_swapusage/0c433ead: Run - 1/1
kernel_swapusage/0c433ead: Running Test via command: bash kernel_swapusage_build.sh
kernel_swapusage/0c433ead: failed to submit job with returncode: 255
kernel_swapusage/0c433ead: Test completed in 0.012034 seconds with returncode: 255
kernel_swapusage/0c433ead: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/0c433ead/kernel_swapusage.out
kernel_swapusage/0c433ead: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/kernel_state/kernel_swapusage/0c433ead/kernel_swapusage.err
systemd_default_target/1ae5e393: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/1ae5e393/stage
systemd_default_target/1ae5e393: Running Test via command: bash systemd_default_target_build.sh
systemd_default_target/1ae5e393: failed to submit job with returncode: 1
systemd_default_target/1ae5e393: Detected failure in running test, will attempt to retry test: 1 times
systemd_default_target/1ae5e393: Run - 1/1
systemd_default_target/1ae5e393: Running Test via command: bash systemd_default_target_build.sh
systemd_default_target/1ae5e393: failed to submit job with returncode: 1
systemd_default_target/1ae5e393: Test completed in 0.015899 seconds with returncode: 1
systemd_default_target/1ae5e393: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/1ae5e393/systemd_default_target.out
systemd_default_target/1ae5e393: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/systemd-default-target/systemd_default_target/1ae5e393/systemd_default_target.err
root_disk_usage/bbcb1477: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/bbcb1477/stage
root_disk_usage/bbcb1477: Running Test via command: bash root_disk_usage_build.sh
root_disk_usage/bbcb1477: Test completed in 0.00879 seconds with returncode: 0
root_disk_usage/bbcb1477: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/bbcb1477/root_disk_usage.out
root_disk_usage/bbcb1477: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/disk_usage/root_disk_usage/bbcb1477/root_disk_usage.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ kernel_swapusage/0c433e │ generic.local.bash │ FAIL │ 255 │ 0.012 │
│ ad │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ root_disk_usage/bbcb147 │ generic.local.bash │ PASS │ 0 │ 0.009 │
│ 7 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ systemd_default_target/ │ generic.local.bash │ FAIL │ 1 │ 0.016 │
│ 1ae5e393 │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/3 Percentage: 33.333%
Failed Tests: 2/3 Percentage: 66.667%
Adding 3 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_sus157ct.log
Building by Test Names (buildtest build --name
)
You can discover buildspecs by test names using the --name
option or short option -n
. This feature can be used if
you want to run a particular test and not worrying about the buildspec file that is belongs to. Note we have tab
completion builtin to this feature to show list of tests that are found in the buildspec cache. Shown below
is an example output of the tab completion listing all available tests
buildtest build --name _bin_bash_shell
_bin_bash_shell current_user_queue lsf_version runtime_test_pass status_regex_stderr_pass
_bin_sh_shell dead_nodes metric_file_regex sh_shell status_regex_stdout_fail
add_numbers display_hosts_format metric_file_regex_invalid_file shell_options status_regex_stdout_pass
always_fail display_lsf_hosts metric_regex_example show_accounts status_returncode_by_executors
always_pass executors_sbatch_declaration multiple_executors show_all_jobs stream_test
assert_contains_fail executors_vars_env_declaration node_down_fail_list_reason show_host_groups string_tag
assert_eq_example exit1_fail nodes_state_allocated show_jobs summary_example
assert_eq_invalid_metric exit1_pass nodes_state_completing show_lsf_configuration symlink_test
assert_eq_mismatch fail_test nodes_state_down show_lsf_models systemd_default_target
assert_gt_example file_and_dir_checks nodes_state_idle show_lsf_queues tcsh_env_declaration
assert_le_example file_count_by_expression nodes_state_reboot show_lsf_queues_current_user test1
assert_lt_example file_count_by_extension pass_and_fail_test show_lsf_queues_formatted test2
Let’s try building an example test by name hello_world
. Take note in output, buildtest will show a breakdown of buildspecs
discovered by the test name.
buildtest build --name hello_world
$ buildtest build --name hello_world
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:03:58 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/hello_world.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs by Name=hello_world
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspecs ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/hello_world.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/hello_world.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/d │
│ rld/5ddc │ │ local.ba │ │ │ │ world │ ocs/che │
│ f479 │ │ sh │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/hello │
│ │ │ │ │ │ │ │ _world. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
hello_world/5ddcf479: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/5ddcf479
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
hello_world/5ddcf479 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━┩
│ hello_world/5ddcf479 │
└──────────────────────┘
hello_world/5ddcf479: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/5ddcf479/stage
hello_world/5ddcf479: Running Test via command: bash hello_world_build.sh
hello_world/5ddcf479: Test completed in 0.004256 seconds with returncode: 0
hello_world/5ddcf479: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/5ddcf479/hello_world.out
hello_world/5ddcf479: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/5ddcf479/hello_world.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ hello_world/5ddcf479 │ generic.local.bash │ PASS │ 0 │ 0.004 │
└──────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_mb835mwv.log
You can specify multiple test names just specify the option multiple times. In example below we will demonstrate this example
buildtest build --name add_numbers --name summary_example
$ buildtest build --name add_numbers --name summary_example
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:03:59 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/add_numbers.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/summary_example.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs by Name=add_numbers
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspecs ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/add_numbers.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs by Name=summary_example
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspecs ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/summary_example.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 2
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 2
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 2
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/add_numbers.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/summary_example.yml: VALID
Total builder objects created: 2
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ add_numb │ script │ generic. │ None │ None │ None │ Add X+Y │ /home/d │
│ ers/fe7e │ │ local.ba │ │ │ │ │ ocs/che │
│ 2787 │ │ sh │ │ │ │ │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/add_n │
│ │ │ │ │ │ │ │ umbers. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ summary_ │ script │ generic. │ None │ None │ None │ The │ /home/d │
│ example/ │ │ local.ba │ │ │ │ summary │ ocs/che │
│ cf94d4a7 │ │ sh │ │ │ │ field │ ckouts/ │
│ │ │ │ │ │ │ can be a │ readthe │
│ │ │ │ │ │ │ multi-li │ docs.or │
│ │ │ │ │ │ │ ne │ g/user_ │
│ │ │ │ │ │ │ string │ builds/ │
│ │ │ │ │ │ │ and │ buildte │
│ │ │ │ │ │ │ exceed │ st/chec │
│ │ │ │ │ │ │ 80 char │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/summa │
│ │ │ │ │ │ │ │ ry_exam │
│ │ │ │ │ │ │ │ ple.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
add_numbers/fe7e2787: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/add_numbers/add_numbers/fe7e2787
summary_example/cf94d4a7: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/summary_example/summary_example/cf94d4a7
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
add_numbers/fe7e2787 does not have any dependencies adding test to queue
summary_example/cf94d4a7 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ add_numbers/fe7e2787 │
│ summary_example/cf94d4a7 │
└──────────────────────────┘
add_numbers/fe7e2787: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/add_numbers/add_numbers/fe7e2787/stage
add_numbers/fe7e2787: Running Test via command: bash add_numbers_build.sh
add_numbers/fe7e2787: Test completed in 0.004388 seconds with returncode: 0
add_numbers/fe7e2787: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/add_numbers/add_numbers/fe7e2787/add_numbers.out
add_numbers/fe7e2787: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/add_numbers/add_numbers/fe7e2787/add_numbers.err
summary_example/cf94d4a7: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/summary_example/summary_example/cf94d4a7/stage
summary_example/cf94d4a7: Running Test via command: bash summary_example_build.sh
summary_example/cf94d4a7: Test completed in 0.004859 seconds with returncode: 0
summary_example/cf94d4a7: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/summary_example/summary_example/cf94d4a7/summary_example.out
summary_example/cf94d4a7: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/summary_example/summary_example/cf94d4a7/summary_example.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ summary_example/cf94d4a │ generic.local.bash │ PASS │ 0 │ 0.005 │
│ 7 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ add_numbers/fe7e2787 │ generic.local.bash │ PASS │ 0 │ 0.004 │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 2/2 Percentage: 100.000%
Failed Tests: 0/2 Percentage: 0.000%
Adding 2 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_dj1l056n.log
Please note, buildtest will discover buildspecs given the test name (--name
) option and then run all tests defined in the buildspec file.
A buildspec file may include several tests and by default all of them are run. This option is
not meant to filter buildspecs by the selected test, but only a means for discovering buildspecs by test name.
Building by Executors (buildtest build --executor
)
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 build --executor generic.local.csh
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:00 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/csh_shell_examples.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/environment.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs by Executor=generic.local.csh
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspecs ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/csh_shell_examples.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/environment.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 2
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 2
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 2
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/csh_shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/environment.yml: VALID
Total builder objects created: 4
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ csh_shel │ script │ generic. │ None │ None │ None │ csh │ /home/d │
│ l/294f3f │ │ local.cs │ │ │ │ shell │ ocs/che │
│ 10 │ │ h │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/csh_s │
│ │ │ │ │ │ │ │ hell_ex │
│ │ │ │ │ │ │ │ amples. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ bash_env │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ _variabl │ │ local.ba │ │ │ │ environm │ ocs/che │
│ es/6fe5f │ │ sh │ │ │ │ ent │ ckouts/ │
│ 7cb │ │ │ │ │ │ variable │ readthe │
│ │ │ │ │ │ │ s in │ docs.or │
│ │ │ │ │ │ │ default │ g/user_ │
│ │ │ │ │ │ │ shell │ builds/ │
│ │ │ │ │ │ │ (bash) │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/envir │
│ │ │ │ │ │ │ │ onment. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ csh_env_ │ script │ generic. │ None │ None │ None │ csh │ /home/d │
│ declarat │ │ local.cs │ │ │ │ shell │ ocs/che │
│ ion/218c │ │ h │ │ │ │ example │ ckouts/ │
│ ad7d │ │ │ │ │ │ to │ readthe │
│ │ │ │ │ │ │ declare │ docs.or │
│ │ │ │ │ │ │ environm │ g/user_ │
│ │ │ │ │ │ │ ent │ builds/ │
│ │ │ │ │ │ │ variable │ buildte │
│ │ │ │ │ │ │ s │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/envir │
│ │ │ │ │ │ │ │ onment. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ tcsh_env │ script │ generic. │ None │ None │ None │ tcsh │ /home/d │
│ _declara │ │ local.cs │ │ │ │ shell │ ocs/che │
│ tion/646 │ │ h │ │ │ │ example │ ckouts/ │
│ ebb23 │ │ │ │ │ │ to │ readthe │
│ │ │ │ │ │ │ declare │ docs.or │
│ │ │ │ │ │ │ environm │ g/user_ │
│ │ │ │ │ │ │ ent │ builds/ │
│ │ │ │ │ │ │ variable │ buildte │
│ │ │ │ │ │ │ s │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/envir │
│ │ │ │ │ │ │ │ onment. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
csh_shell/294f3f10: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.csh/csh_shell_examples/csh_shell/294f3f10
bash_env_variables/6fe5f7cb: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/environment/bash_env_variables/6fe5f7cb
csh_env_declaration/218cad7d: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/csh_env_declaration/218cad7d
tcsh_env_declaration/646ebb23: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/tcsh_env_declaration/646ebb23
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
csh_shell/294f3f10 does not have any dependencies adding test to queue
bash_env_variables/6fe5f7cb does not have any dependencies adding test to queue
csh_env_declaration/218cad7d does not have any dependencies adding test to queue
tcsh_env_declaration/646ebb23 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ csh_shell/294f3f10 │
│ bash_env_variables/6fe5f7cb │
│ csh_env_declaration/218cad7d │
│ tcsh_env_declaration/646ebb23 │
└───────────────────────────────┘
csh_shell/294f3f10: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.csh/csh_shell_examples/csh_shell/294f3f10/stage
csh_shell/294f3f10: Running Test via command: bash csh_shell_build.sh
csh_shell/294f3f10: Test completed in 2.202075 seconds with returncode: 0
csh_shell/294f3f10: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.csh/csh_shell_examples/csh_shell/294f3f10/csh_shell.out
csh_shell/294f3f10: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.csh/csh_shell_examples/csh_shell/294f3f10/csh_shell.err
bash_env_variables/6fe5f7cb: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/environment/bash_env_variables/6fe5f7cb/stage
bash_env_variables/6fe5f7cb: Running Test via command: bash bash_env_variables_build.sh
bash_env_variables/6fe5f7cb: Test completed in 0.006345 seconds with returncode: 0
bash_env_variables/6fe5f7cb: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/environment/bash_env_variables/6fe5f7cb/bash_env_variables.out
bash_env_variables/6fe5f7cb: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/environment/bash_env_variables/6fe5f7cb/bash_env_variables.err
csh_env_declaration/218cad7d: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/csh_env_declaration/218cad7d/stage
csh_env_declaration/218cad7d: Running Test via command: bash csh_env_declaration_build.sh
csh_env_declaration/218cad7d: Test completed in 2.186031 seconds with returncode: 0
csh_env_declaration/218cad7d: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/csh_env_declaration/218cad7d/csh_env_declaration.out
csh_env_declaration/218cad7d: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/csh_env_declaration/218cad7d/csh_env_declaration.err
tcsh_env_declaration/646ebb23: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/tcsh_env_declaration/646ebb23/stage
tcsh_env_declaration/646ebb23: Running Test via command: bash tcsh_env_declaration_build.sh
tcsh_env_declaration/646ebb23: Test completed in 0.013625 seconds with returncode: 0
tcsh_env_declaration/646ebb23: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/tcsh_env_declaration/646ebb23/tcsh_env_declaration.out
tcsh_env_declaration/646ebb23: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/tcsh_env_declaration/646ebb23/tcsh_env_declaration.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ csh_shell/294f3f10 │ generic.local.csh │ PASS │ 0 │ 2.202 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ bash_env_variables/6fe5 │ generic.local.bash │ PASS │ 0 │ 0.006 │
│ f7cb │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ tcsh_env_declaration/64 │ generic.local.csh │ PASS │ 0 │ 0.014 │
│ 6ebb23 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ csh_env_declaration/218 │ generic.local.csh │ PASS │ 0 │ 2.186 │
│ cad7d │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 4/4 Percentage: 100.000%
Failed Tests: 0/4 Percentage: 0.000%
Adding 4 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_0_61y1u1.log
Note
The --executor
option can be appended to discover tests by multiple executors.
Filtering Buildspecs (buildtest build --filter
)
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 tests where the format is key1=val1;key2=val2,val3
.
The semicolon is used to specify multiple filter fields and the comma is used to specify multiple values for a given field.
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 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 build -t pass --filter tags=pass
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:06 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs By Tag=pass
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
[exit1_fail][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/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/latest/tutorials/test_status/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/latest/tutorials/test_status/pass_returncode.yml: VALID
Total builder objects created: 2
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ exit1_pa │ script │ generic. │ None │ None │ None │ report │ /home/d │
│ ss/0e5ad │ │ local.ba │ │ │ │ exit 1 │ ocs/che │
│ 7bf │ │ sh │ │ │ │ as PASS │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 128 │ /home/d │
│ de_int_m │ │ local.ba │ │ │ │ matches │ ocs/che │
│ atch/09e │ │ sh │ │ │ │ returnco │ ckouts/ │
│ 64632 │ │ │ │ │ │ de 128 │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
exit1_pass/0e5ad7bf: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0e5ad7bf
returncode_int_match/09e64632: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/09e64632
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
returncode_int_match/09e64632 does not have any dependencies adding test to queue
exit1_pass/0e5ad7bf does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ returncode_int_match/09e64632 │
│ exit1_pass/0e5ad7bf │
└───────────────────────────────┘
returncode_int_match/09e64632: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/09e64632/stage
returncode_int_match/09e64632: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/09e64632: failed to submit job with returncode: 128
returncode_int_match/09e64632: Detected failure in running test, will attempt to retry test: 1 times
returncode_int_match/09e64632: Run - 1/1
returncode_int_match/09e64632: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/09e64632: failed to submit job with returncode: 128
returncode_int_match/09e64632: Test completed in 0.009931 seconds with returncode: 128
returncode_int_match/09e64632: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/09e64632/returncode_int_match.out
returncode_int_match/09e64632: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/09e64632/returncode_int_match.err
returncode_int_match/09e64632: Checking returncode - 128 is matched in list [128]
exit1_pass/0e5ad7bf: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0e5ad7bf/stage
exit1_pass/0e5ad7bf: Running Test via command: bash exit1_pass_build.sh
exit1_pass/0e5ad7bf: failed to submit job with returncode: 1
exit1_pass/0e5ad7bf: Detected failure in running test, will attempt to retry test: 1 times
exit1_pass/0e5ad7bf: Run - 1/1
exit1_pass/0e5ad7bf: Running Test via command: bash exit1_pass_build.sh
exit1_pass/0e5ad7bf: failed to submit job with returncode: 1
exit1_pass/0e5ad7bf: Test completed in 0.009977 seconds with returncode: 1
exit1_pass/0e5ad7bf: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0e5ad7bf/exit1_pass.out
exit1_pass/0e5ad7bf: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0e5ad7bf/exit1_pass.err
exit1_pass/0e5ad7bf: Checking returncode - 1 is matched in list [1]
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ exit1_pass/0e5ad7bf │ generic.local.bash │ PASS │ 1 │ 0.010 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ returncode_int_match/09 │ generic.local.bash │ PASS │ 128 │ 0.010 │
│ e64632 │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 2/2 Percentage: 100.000%
Failed Tests: 0/2 Percentage: 0.000%
Adding 2 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_f43pmw2l.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 build -b tutorials --filter maintainers=@shahzebsiddiqui
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:07 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_range.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_regex_with_invalid_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count_pattern.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/hello_world.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/invalid_buildspec_section.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_exists_exception.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/skip_buildspec.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_linecount.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/container_executor/ubuntu.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_and_dir_check.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count_filetype.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/executors_var_env_declaration.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/shebang.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count_file_traverse_limit.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/missing_required_in_metrics.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/explicit_state.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_gt.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/container_executor/python_container.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/invalid_metric_name.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_file_regex_with_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/environment.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_regex_with_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/runtime_status_test.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/invalid_executor.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/regex_on_filename.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/run_commands.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/compilation/hello_world_compilation.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_file_regex_invalid_file.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/tags_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_eq_exceptions.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/add_numbers.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/hello_world_singularity.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/linecount.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/bind_mounts.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/executor_scheduler.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/burstbuffer_datawarp_executors.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/compilation/compiler_exclude.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_eq.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/status_by_executors.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/executor_regex_script.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex4.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/run_script.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_ge.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/compilation/stream.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/invalid_metrics.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/status_regex.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex3.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_file_regex_with_invalid_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_exists_with_number.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/contains.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_linecount_invalid.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/shell_examples.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex1.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex2.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/gcc_version.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/specify_regex_type.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/is_symlink.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/strict_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/csh_shell_examples.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/post_run.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_ne.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/mode.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/sleep.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/exists.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/hello_world.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/skip_tests.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/maintainers_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/summary_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_lt.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_le.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_linecount_failure.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_with_regex_type.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_regex.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/invalid_tags.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 79 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 79
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 79
────────────────────────────── Parsing Buildspecs ──────────────────────────────
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_range.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex_with_invalid_linenum.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_pattern.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/hello_world.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/skip_buildspec.yml: skipping all test since 'skip' is defined
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/container_executor/ubuntu.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_and_dir_check.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_filetype.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executors_var_env_declaration.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/shebang.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_file_traverse_limit.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/explicit_state.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_gt.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/container_executor/python_container.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_with_linenum.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/environment.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex_with_linenum.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/runtime_status_test.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_executor.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/regex_on_filename.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/run_commands.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/hello_world_compilation.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_invalid_file.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/tags_example.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_eq_exceptions.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/add_numbers.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/hello_world_singularity.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/linecount.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/bind_mounts.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executor_scheduler.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/burstbuffer_datawarp_executors.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/compiler_exclude.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_eq.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/status_by_executors.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executor_regex_script.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex4.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/pass_returncode.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/run_script.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_ge.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/stream.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-shell.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/status_regex.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex3.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_with_invalid_linenum.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-hello.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_exists_with_number.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/contains.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/shell_examples.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex1.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex2.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/gcc_version.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/specify_regex_type.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/is_symlink.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/strict_example.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/csh_shell_examples.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/post_run.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_ne.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/mode.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/sleep.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/exists.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/skip_tests.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/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/latest/tutorials/summary_example.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_lt.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_le.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount_failure.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_with_regex_type.yml: skipping test because 'maintainers' field is not specified in buildspec.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex.yml: skipping test because 'maintainers' field is not specified in buildspec.
Valid Buildspecs: 72
Invalid Buildspecs: 7
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_range.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex_with_invalid_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_pattern.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/hello_world.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/skip_buildspec.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/container_executor/ubuntu.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_and_dir_check.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_filetype.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executors_var_env_declaration.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/shebang.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_file_traverse_limit.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/explicit_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_gt.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/container_executor/python_container.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_with_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/environment.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex_with_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/runtime_status_test.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_executor.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/regex_on_filename.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/run_commands.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/hello_world_compilation.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_invalid_file.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/tags_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_eq_exceptions.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/add_numbers.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/hello_world_singularity.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/linecount.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/bind_mounts.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executor_scheduler.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/burstbuffer_datawarp_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/compiler_exclude.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_eq.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/status_by_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executor_regex_script.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex4.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/pass_returncode.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/run_script.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_ge.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/stream.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/status_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex3.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_with_invalid_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-hello.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_exists_with_number.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/contains.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex1.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex2.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/gcc_version.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/specify_regex_type.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/is_symlink.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/strict_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/csh_shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/post_run.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_ne.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/mode.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/sleep.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/exists.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/hello_world.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/skip_tests.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/maintainers_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/summary_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_lt.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_le.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount_failure.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_with_regex_type.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_buildspec_section.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_exists_exception.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/missing_required_in_metrics.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/invalid_metric_name.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/invalid_metrics.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount_invalid.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_tags.yml: INVALID
Buildspecs Filtered out
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ buildspecs ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
└──────────────────────────────────────────────────────────────────────────────┘
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/d │
│ rld/7186 │ │ local.ba │ │ │ │ world │ ocs/che │
│ 5c41 │ │ sh │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/hello │
│ │ │ │ │ │ │ │ _world. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
hello_world/71865c41: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/71865c41
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
hello_world/71865c41 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━┩
│ hello_world/71865c41 │
└──────────────────────┘
hello_world/71865c41: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/71865c41/stage
hello_world/71865c41: Running Test via command: bash hello_world_build.sh
hello_world/71865c41: Test completed in 0.004266 seconds with returncode: 0
hello_world/71865c41: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/71865c41/hello_world.out
hello_world/71865c41: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/71865c41/hello_world.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ hello_world/71865c41 │ generic.local.bash │ PASS │ 0 │ 0.004 │
└──────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_kjtfy59l.log
Please see Query Maintainers (buildtest buildspec 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
.
buildtest build -b tutorials --filter type=script --dry-run
$ buildtest build -b tutorials --filter type=script --dry-run
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:08 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_and_dir_check.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/mode.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/container_executor/python_container.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/hello_world_singularity.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_ne.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_regex.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex2.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/status_by_executors.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/container_executor/ubuntu.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/skip_tests.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_eq_exceptions.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/is_symlink.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/hello_world.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/runtime_status_test.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/contains.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/shebang.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_exists_with_number.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/linecount.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/invalid_metrics.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/executor_regex_script.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_linecount_invalid.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/shell_examples.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_range.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_regex_with_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/invalid_executor.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_eq.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_le.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count_filetype.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_with_regex_type.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/compilation/stream.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/invalid_metric_name.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/bind_mounts.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_file_regex_invalid_file.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/executors_var_env_declaration.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_gt.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_file_regex_with_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/environment.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex3.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_ge.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/compilation/hello_world_compilation.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/summary_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/missing_required_in_metrics.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/run_commands.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/maintainers_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/multi_executors/executor_scheduler.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/burstbuffer_datawarp_executors.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_linecount.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count_pattern.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/tags_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/perf_checks/assert_lt.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/exists.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_exists_exception.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex4.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/explicit_state.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/gcc_version.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/csh_shell_examples.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/job_dependency/ex1.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/add_numbers.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/invalid_buildspec_section.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_linecount_failure.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/post_run.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/sleep.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_regex_with_invalid_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/compilation/compiler_exclude.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/specify_regex_type.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/strict_example.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/containers/run_script.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/status_regex.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/skip_buildspec.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/regex_on_filename.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/file_count_file_traverse_limit.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/metrics/metrics_file_regex_with_invalid_linenum.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/invalid_tags.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/hello_world.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 79 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 79
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 79
────────────────────────────── Parsing Buildspecs ──────────────────────────────
skip: skipping test due to 'skip' property.
[compiler_exclude_example][/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/compiler_exclude.yml]: Unable to find any compilers based on regular expression: ['gcc'] so no tests were created.
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/skip_buildspec.yml: skipping all test since 'skip' is defined
Valid Buildspecs: 72
Invalid Buildspecs: 7
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_and_dir_check.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/mode.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/container_executor/python_container.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/hello_world_singularity.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_ne.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex2.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/status_by_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/container_executor/ubuntu.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/skip_tests.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_eq_exceptions.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/is_symlink.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/hello_world.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/runtime_status_test.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/contains.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/shebang.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_exists_with_number.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/linecount.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executor_regex_script.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_range.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex_with_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_executor.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_eq.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_le.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_filetype.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_with_regex_type.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/stream.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/bind_mounts.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/pass_returncode.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_invalid_file.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executors_var_env_declaration.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_gt.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_with_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/environment.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex3.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_ge.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/hello_world_compilation.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/summary_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/run_commands.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/maintainers_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/multi_executors/executor_scheduler.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/burstbuffer_datawarp_executors.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_pattern.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/tags_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/perf_checks/assert_lt.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/exists.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex4.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/explicit_state.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/gcc_version.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/csh_shell_examples.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/job_dependency/ex1.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/add_numbers.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-hello.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount_failure.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/post_run.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/sleep.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_regex_with_invalid_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/compilation/compiler_exclude.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/specify_regex_type.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/strict_example.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/containers/run_script.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/status_regex.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/skip_buildspec.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/regex_on_filename.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_count_file_traverse_limit.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/metrics_file_regex_with_invalid_linenum.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/hello_world.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/invalid_metrics.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_linecount_invalid.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/invalid_metric_name.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/metrics/missing_required_in_metrics.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/file_exists_exception.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_buildspec_section.yml: INVALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_tags.yml: INVALID
Buildspecs Filtered out
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ buildspecs ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
└──────────────────────────────────────────────────────────────────────────────┘
Total builder objects created: 117
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descrip ┃ buildspe ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ tion ┃ cs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━┩
│ file_and │ script │ generic. │ None │ None │ None │ status │ /home/do │
│ _dir_che │ │ local.ba │ │ │ │ check │ cs/check │
│ cks/8630 │ │ sh │ │ │ │ for │ outs/rea │
│ 7084 │ │ │ │ │ │ files │ dthedocs │
│ │ │ │ │ │ │ and │ .org/use │
│ │ │ │ │ │ │ directo │ r_builds │
│ │ │ │ │ │ │ ries │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_a │
│ │ │ │ │ │ │ │ nd_dir_c │
│ │ │ │ │ │ │ │ heck.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ combined │ script │ generic. │ None │ None │ None │ status │ /home/do │
│ _file_an │ │ local.ba │ │ │ │ check │ cs/check │
│ d_dir_ch │ │ sh │ │ │ │ for │ outs/rea │
│ ecks/68f │ │ │ │ │ │ files │ dthedocs │
│ 1f38b │ │ │ │ │ │ and │ .org/use │
│ │ │ │ │ │ │ directo │ r_builds │
│ │ │ │ │ │ │ ries │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_a │
│ │ │ │ │ │ │ │ nd_dir_c │
│ │ │ │ │ │ │ │ heck.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_l │ script │ generic. │ None │ None │ None │ Using │ /home/do │
│ ogical_a │ │ local.ba │ │ │ │ logical │ cs/check │
│ nd/d2060 │ │ sh │ │ │ │ AND to │ outs/rea │
│ f8b │ │ │ │ │ │ check │ dthedocs │
│ │ │ │ │ │ │ status │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/mode.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_l │ script │ generic. │ None │ None │ None │ Using │ /home/do │
│ ogical_o │ │ local.ba │ │ │ │ logical │ cs/check │
│ r/10d807 │ │ sh │ │ │ │ OR to │ outs/rea │
│ 48 │ │ │ │ │ │ check │ dthedocs │
│ │ │ │ │ │ │ status │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/mode.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_cou │ script │ generic. │ None │ None │ None │ file │ /home/do │
│ nt_on_di │ │ local.ba │ │ │ │ count │ cs/check │
│ rectory/ │ │ sh │ │ │ │ check │ outs/rea │
│ 45f9b98f │ │ │ │ │ │ in │ dthedocs │
│ │ │ │ │ │ │ directo │ .org/use │
│ │ │ │ │ │ │ ry │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_c │
│ │ │ │ │ │ │ │ ount.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_cou │ script │ generic. │ None │ None │ None │ file │ /home/do │
│ nt_by_ex │ │ local.ba │ │ │ │ count │ cs/check │
│ tension/ │ │ sh │ │ │ │ by │ outs/rea │
│ 9a7d9a1c │ │ │ │ │ │ extensi │ dthedocs │
│ │ │ │ │ │ │ on │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_c │
│ │ │ │ │ │ │ │ ount.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ hello_wo │ script │ generic. │ None │ None │ None │ run │ /home/do │
│ rld_sing │ │ local.ba │ │ │ │ hello-w │ cs/check │
│ ularity/ │ │ sh │ │ │ │ orld │ outs/rea │
│ aedbf2ab │ │ │ │ │ │ contain │ dthedocs │
│ │ │ │ │ │ │ er │ .org/use │
│ │ │ │ │ │ │ using │ r_builds │
│ │ │ │ │ │ │ singula │ /buildte │
│ │ │ │ │ │ │ rity │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ ntainers │
│ │ │ │ │ │ │ │ /hello_w │
│ │ │ │ │ │ │ │ orld_sin │
│ │ │ │ │ │ │ │ gularity │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_n │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ e_exampl │ │ local.ba │ │ │ │ for │ cs/check │
│ e/00eb5b │ │ sh │ │ │ │ assert │ outs/rea │
│ be │ │ │ │ │ │ not │ dthedocs │
│ │ │ │ │ │ │ equal │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _ne.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_r │ script │ generic. │ None │ None │ None │ capture │ /home/do │
│ egex_exa │ │ local.ba │ │ │ │ result │ cs/check │
│ mple/94c │ │ sh │ │ │ │ metric │ outs/rea │
│ 81019 │ │ │ │ │ │ from │ dthedocs │
│ │ │ │ │ │ │ output │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_re │
│ │ │ │ │ │ │ │ gex.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_f │ script │ generic. │ None │ None │ None │ capture │ /home/do │
│ ile_rege │ │ local.ba │ │ │ │ result │ cs/check │
│ x/03e1c0 │ │ sh │ │ │ │ metric │ outs/rea │
│ 4a │ │ │ │ │ │ from │ dthedocs │
│ │ │ │ │ │ │ file │ .org/use │
│ │ │ │ │ │ │ path │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_re │
│ │ │ │ │ │ │ │ gex.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ test1/8a │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ 964a1f │ │ local.ba │ │ │ │ test │ cs/check │
│ │ │ sh │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ pass │ dthedocs │
│ │ │ │ │ │ │ with │ .org/use │
│ │ │ │ │ │ │ exit 1 │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex2 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ test2/19 │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ 51d784 │ │ local.ba │ │ │ │ test │ cs/check │
│ │ │ sh │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ run if │ dthedocs │
│ │ │ │ │ │ │ test1 │ .org/use │
│ │ │ │ │ │ │ has │ r_builds │
│ │ │ │ │ │ │ returnc │ /buildte │
│ │ │ │ │ │ │ ode 1 │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex2 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ test3/a8 │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ 459c0e │ │ local.ba │ │ │ │ test │ cs/check │
│ │ │ sh │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ run if │ dthedocs │
│ │ │ │ │ │ │ test1 │ .org/use │
│ │ │ │ │ │ │ has │ r_builds │
│ │ │ │ │ │ │ returnc │ /buildte │
│ │ │ │ │ │ │ ode 1 │ st/check │
│ │ │ │ │ │ │ and │ outs/lat │
│ │ │ │ │ │ │ test2 │ est/tuto │
│ │ │ │ │ │ │ has │ rials/jo │
│ │ │ │ │ │ │ returnc │ b_depend │
│ │ │ │ │ │ │ ode 2 │ ency/ex2 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_r │ script │ generic. │ None │ None │ None │ define │ /home/do │
│ eturncod │ │ local.ba │ │ │ │ status │ cs/check │
│ e_by_exe │ │ sh │ │ │ │ per │ outs/rea │
│ cutors/6 │ │ │ │ │ │ executo │ dthedocs │
│ 37a2338 │ │ │ │ │ │ r type. │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/mu │
│ │ │ │ │ │ │ │ lti_exec │
│ │ │ │ │ │ │ │ utors/st │
│ │ │ │ │ │ │ │ atus_by_ │
│ │ │ │ │ │ │ │ executor │
│ │ │ │ │ │ │ │ s.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_r │ script │ generic. │ None │ None │ None │ define │ /home/do │
│ eturncod │ │ local.sh │ │ │ │ status │ cs/check │
│ e_by_exe │ │ │ │ │ │ per │ outs/rea │
│ cutors/9 │ │ │ │ │ │ executo │ dthedocs │
│ 6b7f3d7 │ │ │ │ │ │ r type. │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/mu │
│ │ │ │ │ │ │ │ lti_exec │
│ │ │ │ │ │ │ │ utors/st │
│ │ │ │ │ │ │ │ atus_by_ │
│ │ │ │ │ │ │ │ executor │
│ │ │ │ │ │ │ │ s.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ unskippe │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ d/70ef46 │ │ local.ba │ │ │ │ test is │ cs/check │
│ de │ │ sh │ │ │ │ not │ outs/rea │
│ │ │ │ │ │ │ skipped │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sk │
│ │ │ │ │ │ │ │ ip_tests │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_e │ script │ generic. │ None │ None │ None │ An │ /home/do │
│ q_invali │ │ local.ba │ │ │ │ invalid │ cs/check │
│ d_metric │ │ sh │ │ │ │ metric │ outs/rea │
│ /7817bee │ │ │ │ │ │ name │ dthedocs │
│ a │ │ │ │ │ │ will │ .org/use │
│ │ │ │ │ │ │ cause │ r_builds │
│ │ │ │ │ │ │ failure │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _eq_exce │
│ │ │ │ │ │ │ │ ptions.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_e │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ q_mismat │ │ local.ba │ │ │ │ test │ cs/check │
│ ch/1c74f │ │ sh │ │ │ │ will │ outs/rea │
│ fe0 │ │ │ │ │ │ fail │ dthedocs │
│ │ │ │ │ │ │ because │ .org/use │
│ │ │ │ │ │ │ there │ r_builds │
│ │ │ │ │ │ │ is a │ /buildte │
│ │ │ │ │ │ │ mismatc │ st/check │
│ │ │ │ │ │ │ h in │ outs/lat │
│ │ │ │ │ │ │ metric │ est/tuto │
│ │ │ │ │ │ │ x │ rials/pe │
│ │ │ │ │ │ │ assert │ rf_check │
│ │ │ │ │ │ │ equalit │ s/assert │
│ │ │ │ │ │ │ y │ _eq_exce │
│ │ │ │ │ │ │ │ ptions.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ symlink_ │ script │ generic. │ None │ None │ None │ status │ /home/do │
│ test/de5 │ │ local.ba │ │ │ │ check │ cs/check │
│ a8d44 │ │ sh │ │ │ │ based │ outs/rea │
│ │ │ │ │ │ │ on │ dthedocs │
│ │ │ │ │ │ │ symboli │ .org/use │
│ │ │ │ │ │ │ c link │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/is_sym │
│ │ │ │ │ │ │ │ link.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ hello_wo │ script │ generic. │ None │ None │ None │ run │ /home/do │
│ rld_dock │ │ local.ba │ │ │ │ hello-w │ cs/check │
│ er/750fc │ │ sh │ │ │ │ orld │ outs/rea │
│ 5c0 │ │ │ │ │ │ contain │ dthedocs │
│ │ │ │ │ │ │ er with │ .org/use │
│ │ │ │ │ │ │ docker │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ ntainers │
│ │ │ │ │ │ │ │ /hello_w │
│ │ │ │ │ │ │ │ orld.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ timelimi │ script │ generic. │ None │ None │ None │ Run a │ /home/do │
│ t_min_ma │ │ local.sh │ │ │ │ sleep │ cs/check │
│ x/e937c4 │ │ │ │ │ │ job for │ outs/rea │
│ 0d │ │ │ │ │ │ 2 │ dthedocs │
│ │ │ │ │ │ │ seconds │ .org/use │
│ │ │ │ │ │ │ and │ r_builds │
│ │ │ │ │ │ │ test │ /buildte │
│ │ │ │ │ │ │ pass if │ st/check │
│ │ │ │ │ │ │ its │ outs/lat │
│ │ │ │ │ │ │ within │ est/tuto │
│ │ │ │ │ │ │ 1.0-3.0 │ rials/te │
│ │ │ │ │ │ │ sec │ st_statu │
│ │ │ │ │ │ │ │ s/runtim │
│ │ │ │ │ │ │ │ e_status │
│ │ │ │ │ │ │ │ _test.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ timelimi │ script │ generic. │ None │ None │ None │ Run a │ /home/do │
│ t_min/dc │ │ local.sh │ │ │ │ sleep │ cs/check │
│ 86a7a7 │ │ │ │ │ │ job for │ outs/rea │
│ │ │ │ │ │ │ 2 │ dthedocs │
│ │ │ │ │ │ │ seconds │ .org/use │
│ │ │ │ │ │ │ and │ r_builds │
│ │ │ │ │ │ │ test │ /buildte │
│ │ │ │ │ │ │ pass if │ st/check │
│ │ │ │ │ │ │ its │ outs/lat │
│ │ │ │ │ │ │ exceeds │ est/tuto │
│ │ │ │ │ │ │ min │ rials/te │
│ │ │ │ │ │ │ time of │ st_statu │
│ │ │ │ │ │ │ 1.0 sec │ s/runtim │
│ │ │ │ │ │ │ │ e_status │
│ │ │ │ │ │ │ │ _test.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ timelimi │ script │ generic. │ None │ None │ None │ Run a │ /home/do │
│ t_max/6d │ │ local.sh │ │ │ │ sleep │ cs/check │
│ 8f921a │ │ │ │ │ │ job for │ outs/rea │
│ │ │ │ │ │ │ 2 │ dthedocs │
│ │ │ │ │ │ │ seconds │ .org/use │
│ │ │ │ │ │ │ and │ r_builds │
│ │ │ │ │ │ │ test │ /buildte │
│ │ │ │ │ │ │ pass if │ st/check │
│ │ │ │ │ │ │ it's │ outs/lat │
│ │ │ │ │ │ │ within │ est/tuto │
│ │ │ │ │ │ │ max │ rials/te │
│ │ │ │ │ │ │ time: │ st_statu │
│ │ │ │ │ │ │ 5.0 sec │ s/runtim │
│ │ │ │ │ │ │ │ e_status │
│ │ │ │ │ │ │ │ _test.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ timelimi │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ t_min_fa │ │ local.sh │ │ │ │ test │ cs/check │
│ il/9c2cf │ │ │ │ │ │ fails │ outs/rea │
│ 8f8 │ │ │ │ │ │ because │ dthedocs │
│ │ │ │ │ │ │ it runs │ .org/use │
│ │ │ │ │ │ │ less │ r_builds │
│ │ │ │ │ │ │ than │ /buildte │
│ │ │ │ │ │ │ mintime │ st/check │
│ │ │ │ │ │ │ of 10 │ outs/lat │
│ │ │ │ │ │ │ second │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/runtim │
│ │ │ │ │ │ │ │ e_status │
│ │ │ │ │ │ │ │ _test.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ timelimi │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ t_max_fa │ │ local.sh │ │ │ │ test │ cs/check │
│ il/47ef8 │ │ │ │ │ │ fails │ outs/rea │
│ 2cf │ │ │ │ │ │ because │ dthedocs │
│ │ │ │ │ │ │ it │ .org/use │
│ │ │ │ │ │ │ exceeds │ r_builds │
│ │ │ │ │ │ │ maxtime │ /buildte │
│ │ │ │ │ │ │ of 1.0 │ st/check │
│ │ │ │ │ │ │ second │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/runtim │
│ │ │ │ │ │ │ │ e_status │
│ │ │ │ │ │ │ │ _test.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ contains │ script │ generic. │ None │ None │ None │ Status │ /home/do │
│ _and_not │ │ local.ba │ │ │ │ check │ cs/check │
│ _contain │ │ sh │ │ │ │ based │ outs/rea │
│ s/c93a97 │ │ │ │ │ │ on │ dthedocs │
│ e7 │ │ │ │ │ │ contain │ .org/use │
│ │ │ │ │ │ │ s and │ r_builds │
│ │ │ │ │ │ │ not │ /buildte │
│ │ │ │ │ │ │ contain │ st/check │
│ │ │ │ │ │ │ s where │ outs/lat │
│ │ │ │ │ │ │ test │ est/tuto │
│ │ │ │ │ │ │ pass │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/contai │
│ │ │ │ │ │ │ │ ns.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_c │ script │ generic. │ None │ None │ None │ Status │ /home/do │
│ ontains_ │ │ local.ba │ │ │ │ check │ cs/check │
│ fail/ba2 │ │ sh │ │ │ │ based │ outs/rea │
│ 7746d │ │ │ │ │ │ on │ dthedocs │
│ │ │ │ │ │ │ contain │ .org/use │
│ │ │ │ │ │ │ s where │ r_builds │
│ │ │ │ │ │ │ test │ /buildte │
│ │ │ │ │ │ │ fails │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/contai │
│ │ │ │ │ │ │ │ ns.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ bash_log │ script │ generic. │ None │ None │ None │ customi │ /home/do │
│ in_sheba │ │ local.ba │ │ │ │ ze │ cs/check │
│ ng/bff74 │ │ sh │ │ │ │ shebang │ outs/rea │
│ fac │ │ │ │ │ │ line │ dthedocs │
│ │ │ │ │ │ │ with │ .org/use │
│ │ │ │ │ │ │ bash │ r_builds │
│ │ │ │ │ │ │ login │ /buildte │
│ │ │ │ │ │ │ shell │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sh │
│ │ │ │ │ │ │ │ ebang.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ bash_non │ script │ generic. │ None │ None │ None │ customi │ /home/do │
│ login_sh │ │ local.ba │ │ │ │ ze │ cs/check │
│ ebang/20 │ │ sh │ │ │ │ shebang │ outs/rea │
│ e1229b │ │ │ │ │ │ line │ dthedocs │
│ │ │ │ │ │ │ with │ .org/use │
│ │ │ │ │ │ │ default │ r_builds │
│ │ │ │ │ │ │ bash │ /buildte │
│ │ │ │ │ │ │ (nonlog │ st/check │
│ │ │ │ │ │ │ in) │ outs/lat │
│ │ │ │ │ │ │ shell │ est/tuto │
│ │ │ │ │ │ │ │ rials/sh │
│ │ │ │ │ │ │ │ ebang.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_exi │ script │ generic. │ None │ None │ None │ this │ /home/do │
│ sts_pass │ │ local.ba │ │ │ │ test │ cs/check │
│ /e768452 │ │ sh │ │ │ │ will │ outs/rea │
│ 1 │ │ │ │ │ │ pass │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_e │
│ │ │ │ │ │ │ │ xists_wi │
│ │ │ │ │ │ │ │ th_numbe │
│ │ │ │ │ │ │ │ r.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ linecoun │ script │ generic. │ None │ None │ None │ Write │ /home/do │
│ t_stdout │ │ local.ba │ │ │ │ 10 │ cs/check │
│ /8b9c9bc │ │ sh │ │ │ │ lines │ outs/rea │
│ 2 │ │ │ │ │ │ to │ dthedocs │
│ │ │ │ │ │ │ stdout │ .org/use │
│ │ │ │ │ │ │ and run │ r_builds │
│ │ │ │ │ │ │ linecou │ /buildte │
│ │ │ │ │ │ │ nt │ st/check │
│ │ │ │ │ │ │ check │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/lineco │
│ │ │ │ │ │ │ │ unt.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ linecoun │ script │ generic. │ None │ None │ None │ Write │ /home/do │
│ t_stderr │ │ local.ba │ │ │ │ 10 │ cs/check │
│ _mismatc │ │ sh │ │ │ │ lines │ outs/rea │
│ h/5b7ae6 │ │ │ │ │ │ to │ dthedocs │
│ 1c │ │ │ │ │ │ stderr │ .org/use │
│ │ │ │ │ │ │ and run │ r_builds │
│ │ │ │ │ │ │ linecou │ /buildte │
│ │ │ │ │ │ │ nt │ st/check │
│ │ │ │ │ │ │ check │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/lineco │
│ │ │ │ │ │ │ │ unt.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ multiple │ script │ generic. │ None │ None │ None │ run │ /home/do │
│ _executo │ │ local.ba │ │ │ │ test │ cs/check │
│ rs/96fbb │ │ sh │ │ │ │ with │ outs/rea │
│ fc6 │ │ │ │ │ │ executo │ dthedocs │
│ │ │ │ │ │ │ r │ .org/use │
│ │ │ │ │ │ │ generic │ r_builds │
│ │ │ │ │ │ │ .local. │ /buildte │
│ │ │ │ │ │ │ bash │ st/check │
│ │ │ │ │ │ │ and │ outs/lat │
│ │ │ │ │ │ │ generic │ est/tuto │
│ │ │ │ │ │ │ .local. │ rials/mu │
│ │ │ │ │ │ │ sh │ lti_exec │
│ │ │ │ │ │ │ executo │ utors/ex │
│ │ │ │ │ │ │ r │ ecutor_r │
│ │ │ │ │ │ │ │ egex_scr │
│ │ │ │ │ │ │ │ ipt.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ multiple │ script │ generic. │ None │ None │ None │ run │ /home/do │
│ _executo │ │ local.sh │ │ │ │ test │ cs/check │
│ rs/489b9 │ │ │ │ │ │ with │ outs/rea │
│ dad │ │ │ │ │ │ executo │ dthedocs │
│ │ │ │ │ │ │ r │ .org/use │
│ │ │ │ │ │ │ generic │ r_builds │
│ │ │ │ │ │ │ .local. │ /buildte │
│ │ │ │ │ │ │ bash │ st/check │
│ │ │ │ │ │ │ and │ outs/lat │
│ │ │ │ │ │ │ generic │ est/tuto │
│ │ │ │ │ │ │ .local. │ rials/mu │
│ │ │ │ │ │ │ sh │ lti_exec │
│ │ │ │ │ │ │ executo │ utors/ex │
│ │ │ │ │ │ │ r │ ecutor_r │
│ │ │ │ │ │ │ │ egex_scr │
│ │ │ │ │ │ │ │ ipt.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ _bin_sh_ │ script │ generic. │ None │ None │ None │ /bin/sh │ /home/do │
│ shell/83 │ │ local.sh │ │ │ │ shell │ cs/check │
│ b65bba │ │ │ │ │ │ example │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sh │
│ │ │ │ │ │ │ │ ell_exam │
│ │ │ │ │ │ │ │ ples.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ _bin_bas │ script │ generic. │ None │ None │ None │ /bin/ba │ /home/do │
│ h_shell/ │ │ local.ba │ │ │ │ sh │ cs/check │
│ 69f67972 │ │ sh │ │ │ │ shell │ outs/rea │
│ │ │ │ │ │ │ example │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sh │
│ │ │ │ │ │ │ │ ell_exam │
│ │ │ │ │ │ │ │ ples.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ bash_she │ script │ generic. │ None │ None │ None │ bash │ /home/do │
│ ll/7fbf0 │ │ local.ba │ │ │ │ shell │ cs/check │
│ 5d6 │ │ sh │ │ │ │ example │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sh │
│ │ │ │ │ │ │ │ ell_exam │
│ │ │ │ │ │ │ │ ples.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ sh_shell │ script │ generic. │ None │ None │ None │ sh │ /home/do │
│ /12d545b │ │ local.sh │ │ │ │ shell │ cs/check │
│ 2 │ │ │ │ │ │ example │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sh │
│ │ │ │ │ │ │ │ ell_exam │
│ │ │ │ │ │ │ │ ples.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ shell_op │ script │ generic. │ None │ None │ None │ shell │ /home/do │
│ tions/74 │ │ local.sh │ │ │ │ options │ cs/check │
│ f65b80 │ │ │ │ │ │ │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sh │
│ │ │ │ │ │ │ │ ell_exam │
│ │ │ │ │ │ │ │ ples.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_r │ script │ generic. │ None │ None │ None │ Example │ /home/do │
│ ange_ex/ │ │ local.ba │ │ │ │ on │ cs/check │
│ d1551812 │ │ sh │ │ │ │ assert_ │ outs/rea │
│ │ │ │ │ │ │ range │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _range.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_r │ script │ generic. │ None │ None │ None │ capture │ /home/do │
│ egex_wit │ │ local.ba │ │ │ │ result │ cs/check │
│ h_linenu │ │ sh │ │ │ │ metric │ outs/rea │
│ m_exampl │ │ │ │ │ │ from │ dthedocs │
│ e/e1317f │ │ │ │ │ │ output │ .org/use │
│ 9a │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_re │
│ │ │ │ │ │ │ │ gex_with │
│ │ │ │ │ │ │ │ _linenum │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_e │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ q_exampl │ │ local.ba │ │ │ │ for │ cs/check │
│ e/2bad89 │ │ sh │ │ │ │ assert │ outs/rea │
│ 71 │ │ │ │ │ │ equalit │ dthedocs │
│ │ │ │ │ │ │ y │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _eq.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_l │ script │ generic. │ None │ None │ None │ Run │ /home/do │
│ e_exampl │ │ local.ba │ │ │ │ stream │ cs/check │
│ e/48996a │ │ sh │ │ │ │ test │ outs/rea │
│ 0b │ │ │ │ │ │ with │ dthedocs │
│ │ │ │ │ │ │ metrics │ .org/use │
│ │ │ │ │ │ │ example │ r_builds │
│ │ │ │ │ │ │ using │ /buildte │
│ │ │ │ │ │ │ assert │ st/check │
│ │ │ │ │ │ │ less │ outs/lat │
│ │ │ │ │ │ │ than │ est/tuto │
│ │ │ │ │ │ │ equal │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _le.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_cou │ script │ generic. │ None │ None │ None │ Count │ /home/do │
│ nt_by_fi │ │ local.ba │ │ │ │ the │ cs/check │
│ letype/9 │ │ sh │ │ │ │ number │ outs/rea │
│ 193932b │ │ │ │ │ │ of │ dthedocs │
│ │ │ │ │ │ │ directo │ .org/use │
│ │ │ │ │ │ │ ries │ r_builds │
│ │ │ │ │ │ │ and │ /buildte │
│ │ │ │ │ │ │ symboli │ st/check │
│ │ │ │ │ │ │ c links │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_c │
│ │ │ │ │ │ │ │ ount_fil │
│ │ │ │ │ │ │ │ etype.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_r │ script │ generic. │ None │ None │ None │ capture │ /home/do │
│ egex_exa │ │ local.ba │ │ │ │ metric │ cs/check │
│ mple_wit │ │ sh │ │ │ │ with │ outs/rea │
│ h_re/9c1 │ │ │ │ │ │ differe │ dthedocs │
│ 80965 │ │ │ │ │ │ nt │ .org/use │
│ │ │ │ │ │ │ regex │ r_builds │
│ │ │ │ │ │ │ types │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_wi │
│ │ │ │ │ │ │ │ th_regex │
│ │ │ │ │ │ │ │ _type.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ stream_o │ script │ generic. │ builtin_ │ None │ None │ STREAM │ /home/do │
│ penmp_c/ │ │ local.ba │ gcc │ │ │ Microbe │ cs/check │
│ dbbbf57e │ │ sh │ │ │ │ nchmark │ outs/rea │
│ │ │ │ │ │ │ C Test │ dthedocs │
│ │ │ │ │ │ │ with │ .org/use │
│ │ │ │ │ │ │ OpenMP │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ mpilatio │
│ │ │ │ │ │ │ │ n/stream │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ bind_mou │ script │ generic. │ None │ None │ None │ run a │ /home/do │
│ nt_in_co │ │ local.ba │ │ │ │ python │ cs/check │
│ ntainer/ │ │ sh │ │ │ │ script │ outs/rea │
│ a5ef4d5e │ │ │ │ │ │ in │ dthedocs │
│ │ │ │ │ │ │ contain │ .org/use │
│ │ │ │ │ │ │ er │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ ntainers │
│ │ │ │ │ │ │ │ /bind_mo │
│ │ │ │ │ │ │ │ unts.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ exit1_fa │ script │ generic. │ None │ None │ None │ exit 1 │ /home/do │
│ il/6fde6 │ │ local.ba │ │ │ │ by │ cs/check │
│ acb │ │ sh │ │ │ │ default │ outs/rea │
│ │ │ │ │ │ │ is FAIL │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/pass_r │
│ │ │ │ │ │ │ │ eturncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ exit1_pa │ script │ generic. │ None │ None │ None │ report │ /home/do │
│ ss/9bbc3 │ │ local.ba │ │ │ │ exit 1 │ cs/check │
│ 5a1 │ │ sh │ │ │ │ as PASS │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/pass_r │
│ │ │ │ │ │ │ │ eturncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 2 │ /home/do │
│ de_list_ │ │ local.ba │ │ │ │ failed │ cs/check │
│ mismatch │ │ sh │ │ │ │ since │ outs/rea │
│ /18c4356 │ │ │ │ │ │ it │ dthedocs │
│ 7 │ │ │ │ │ │ failed │ .org/use │
│ │ │ │ │ │ │ to │ r_builds │
│ │ │ │ │ │ │ match │ /buildte │
│ │ │ │ │ │ │ returnc │ st/check │
│ │ │ │ │ │ │ ode 1 │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/pass_r │
│ │ │ │ │ │ │ │ eturncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit │ /home/do │
│ de_int_m │ │ local.ba │ │ │ │ 128 │ cs/check │
│ atch/6b7 │ │ sh │ │ │ │ matches │ outs/rea │
│ 066d4 │ │ │ │ │ │ returnc │ dthedocs │
│ │ │ │ │ │ │ ode 128 │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/pass_r │
│ │ │ │ │ │ │ │ eturncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_f │ script │ generic. │ None │ None │ None │ capture │ /home/do │
│ ile_rege │ │ local.ba │ │ │ │ result │ cs/check │
│ x_invali │ │ sh │ │ │ │ metric │ outs/rea │
│ d_file/b │ │ │ │ │ │ from │ dthedocs │
│ 75ebd48 │ │ │ │ │ │ file │ .org/use │
│ │ │ │ │ │ │ path │ r_builds │
│ │ │ │ │ │ │ when we │ /buildte │
│ │ │ │ │ │ │ have │ st/check │
│ │ │ │ │ │ │ invalid │ outs/lat │
│ │ │ │ │ │ │ file │ est/tuto │
│ │ │ │ │ │ │ path │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_fi │
│ │ │ │ │ │ │ │ le_regex │
│ │ │ │ │ │ │ │ _invalid │
│ │ │ │ │ │ │ │ _file.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ executor │ script │ generic. │ None │ None │ None │ Declari │ /home/do │
│ s_vars_e │ │ local.ba │ │ │ │ ng env │ cs/check │
│ nv_decla │ │ sh │ │ │ │ and │ outs/rea │
│ ration/5 │ │ │ │ │ │ vars by │ dthedocs │
│ 1ef1aac │ │ │ │ │ │ executo │ .org/use │
│ │ │ │ │ │ │ rs │ r_builds │
│ │ │ │ │ │ │ section │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/mu │
│ │ │ │ │ │ │ │ lti_exec │
│ │ │ │ │ │ │ │ utors/ex │
│ │ │ │ │ │ │ │ ecutors_ │
│ │ │ │ │ │ │ │ var_env_ │
│ │ │ │ │ │ │ │ declarat │
│ │ │ │ │ │ │ │ ion.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ executor │ script │ generic. │ None │ None │ None │ Declari │ /home/do │
│ s_vars_e │ │ local.sh │ │ │ │ ng env │ cs/check │
│ nv_decla │ │ │ │ │ │ and │ outs/rea │
│ ration/7 │ │ │ │ │ │ vars by │ dthedocs │
│ 57325b0 │ │ │ │ │ │ executo │ .org/use │
│ │ │ │ │ │ │ rs │ r_builds │
│ │ │ │ │ │ │ section │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/mu │
│ │ │ │ │ │ │ │ lti_exec │
│ │ │ │ │ │ │ │ utors/ex │
│ │ │ │ │ │ │ │ ecutors_ │
│ │ │ │ │ │ │ │ var_env_ │
│ │ │ │ │ │ │ │ declarat │
│ │ │ │ │ │ │ │ ion.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_g │ script │ generic. │ None │ None │ None │ Run │ /home/do │
│ t_exampl │ │ local.ba │ │ │ │ stream │ cs/check │
│ e/5082f2 │ │ sh │ │ │ │ test │ outs/rea │
│ 3a │ │ │ │ │ │ with │ dthedocs │
│ │ │ │ │ │ │ metrics │ .org/use │
│ │ │ │ │ │ │ example │ r_builds │
│ │ │ │ │ │ │ using │ /buildte │
│ │ │ │ │ │ │ assert │ st/check │
│ │ │ │ │ │ │ greater │ outs/lat │
│ │ │ │ │ │ │ than. │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _gt.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_f │ script │ generic. │ None │ None │ None │ capture │ /home/do │
│ ile_rege │ │ local.ba │ │ │ │ result │ cs/check │
│ x_with_l │ │ sh │ │ │ │ metric │ outs/rea │
│ inenum_e │ │ │ │ │ │ from │ dthedocs │
│ xample/f │ │ │ │ │ │ file │ .org/use │
│ 13a9f7e │ │ │ │ │ │ path │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_fi │
│ │ │ │ │ │ │ │ le_regex │
│ │ │ │ │ │ │ │ _with_li │
│ │ │ │ │ │ │ │ nenum.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ bash_env │ script │ generic. │ None │ None │ None │ Declare │ /home/do │
│ _variabl │ │ local.ba │ │ │ │ environ │ cs/check │
│ es/f5de9 │ │ sh │ │ │ │ ment │ outs/rea │
│ b01 │ │ │ │ │ │ variabl │ dthedocs │
│ │ │ │ │ │ │ es in │ .org/use │
│ │ │ │ │ │ │ default │ r_builds │
│ │ │ │ │ │ │ shell │ /buildte │
│ │ │ │ │ │ │ (bash) │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/en │
│ │ │ │ │ │ │ │ vironmen │
│ │ │ │ │ │ │ │ t.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ csh_env_ │ script │ generic. │ None │ None │ None │ csh │ /home/do │
│ declarat │ │ local.cs │ │ │ │ shell │ cs/check │
│ ion/4e44 │ │ h │ │ │ │ example │ outs/rea │
│ 98f5 │ │ │ │ │ │ to │ dthedocs │
│ │ │ │ │ │ │ declare │ .org/use │
│ │ │ │ │ │ │ environ │ r_builds │
│ │ │ │ │ │ │ ment │ /buildte │
│ │ │ │ │ │ │ variabl │ st/check │
│ │ │ │ │ │ │ es │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/en │
│ │ │ │ │ │ │ │ vironmen │
│ │ │ │ │ │ │ │ t.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ tcsh_env │ script │ generic. │ None │ None │ None │ tcsh │ /home/do │
│ _declara │ │ local.cs │ │ │ │ shell │ cs/check │
│ tion/fb5 │ │ h │ │ │ │ example │ outs/rea │
│ f1178 │ │ │ │ │ │ to │ dthedocs │
│ │ │ │ │ │ │ declare │ .org/use │
│ │ │ │ │ │ │ environ │ r_builds │
│ │ │ │ │ │ │ ment │ /buildte │
│ │ │ │ │ │ │ variabl │ st/check │
│ │ │ │ │ │ │ es │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/en │
│ │ │ │ │ │ │ │ vironmen │
│ │ │ │ │ │ │ │ t.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ pass_tes │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ t/f97000 │ │ local.ba │ │ │ │ test │ cs/check │
│ 83 │ │ sh │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ always │ dthedocs │
│ │ │ │ │ │ │ pass │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex3 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ fail_tes │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ t/fb91c8 │ │ local.ba │ │ │ │ test │ cs/check │
│ 84 │ │ sh │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ run if │ dthedocs │
│ │ │ │ │ │ │ test │ .org/use │
│ │ │ │ │ │ │ 'pass_t │ r_builds │
│ │ │ │ │ │ │ est' is │ /buildte │
│ │ │ │ │ │ │ in │ st/check │
│ │ │ │ │ │ │ state │ outs/lat │
│ │ │ │ │ │ │ 'PASS' │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex3 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ pass_and │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ _fail_te │ │ local.ba │ │ │ │ test │ cs/check │
│ st/b1c93 │ │ sh │ │ │ │ will │ outs/rea │
│ 56c │ │ │ │ │ │ run if │ dthedocs │
│ │ │ │ │ │ │ pass_te │ .org/use │
│ │ │ │ │ │ │ st is │ r_builds │
│ │ │ │ │ │ │ 'PASS' │ /buildte │
│ │ │ │ │ │ │ and │ st/check │
│ │ │ │ │ │ │ fail_te │ outs/lat │
│ │ │ │ │ │ │ st is │ est/tuto │
│ │ │ │ │ │ │ 'FAIL' │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex3 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ final_te │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ st/37671 │ │ local.ba │ │ │ │ will │ cs/check │
│ 117 │ │ sh │ │ │ │ run │ outs/rea │
│ │ │ │ │ │ │ after │ dthedocs │
│ │ │ │ │ │ │ 'pass_t │ .org/use │
│ │ │ │ │ │ │ est', │ r_builds │
│ │ │ │ │ │ │ 'fail_t │ /buildte │
│ │ │ │ │ │ │ est', │ st/check │
│ │ │ │ │ │ │ and │ outs/lat │
│ │ │ │ │ │ │ 'pass_a │ est/tuto │
│ │ │ │ │ │ │ nd_fail │ rials/jo │
│ │ │ │ │ │ │ _test' │ b_depend │
│ │ │ │ │ │ │ │ ency/ex3 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ stream_t │ script │ generic. │ None │ None │ None │ Run │ /home/do │
│ est/deda │ │ local.ba │ │ │ │ stream │ cs/check │
│ dc88 │ │ sh │ │ │ │ test │ outs/rea │
│ │ │ │ │ │ │ with │ dthedocs │
│ │ │ │ │ │ │ metrics │ .org/use │
│ │ │ │ │ │ │ example │ r_builds │
│ │ │ │ │ │ │ using │ /buildte │
│ │ │ │ │ │ │ assert │ st/check │
│ │ │ │ │ │ │ greater │ outs/lat │
│ │ │ │ │ │ │ equal │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _ge.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ hello_wo │ script │ generic. │ builtin_ │ None │ None │ Hello │ /home/do │
│ rld_c_cp │ │ local.ba │ gcc │ │ │ world │ cs/check │
│ p/b53a9b │ │ sh │ │ │ │ compila │ outs/rea │
│ 25 │ │ │ │ │ │ tion in │ dthedocs │
│ │ │ │ │ │ │ C and │ .org/use │
│ │ │ │ │ │ │ C++ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ mpilatio │
│ │ │ │ │ │ │ │ n/hello_ │
│ │ │ │ │ │ │ │ world_co │
│ │ │ │ │ │ │ │ mpilatio │
│ │ │ │ │ │ │ │ n.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ summary_ │ script │ generic. │ None │ None │ None │ The │ /home/do │
│ example/ │ │ local.ba │ │ │ │ summary │ cs/check │
│ 9901e9f8 │ │ sh │ │ │ │ field │ outs/rea │
│ │ │ │ │ │ │ can be │ dthedocs │
│ │ │ │ │ │ │ a │ .org/use │
│ │ │ │ │ │ │ multi-l │ r_builds │
│ │ │ │ │ │ │ ine │ /buildte │
│ │ │ │ │ │ │ string │ st/check │
│ │ │ │ │ │ │ and │ outs/lat │
│ │ │ │ │ │ │ exceed │ est/tuto │
│ │ │ │ │ │ │ 80 char │ rials/su │
│ │ │ │ │ │ │ │ mmary_ex │
│ │ │ │ │ │ │ │ ample.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ containe │ script │ generic. │ None │ None │ None │ run │ /home/do │
│ r_comman │ │ local.ba │ │ │ │ arbitra │ cs/check │
│ ds_ubunt │ │ sh │ │ │ │ ry │ outs/rea │
│ u/b2f9ae │ │ │ │ │ │ linux │ dthedocs │
│ 84 │ │ │ │ │ │ command │ .org/use │
│ │ │ │ │ │ │ s in │ r_builds │
│ │ │ │ │ │ │ ubuntu │ /buildte │
│ │ │ │ │ │ │ contain │ st/check │
│ │ │ │ │ │ │ er │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ ntainers │
│ │ │ │ │ │ │ │ /run_com │
│ │ │ │ │ │ │ │ mands.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ containe │ script │ generic. │ None │ None │ None │ run │ /home/do │
│ r_option │ │ local.ba │ │ │ │ arbitra │ cs/check │
│ s/e9d33f │ │ sh │ │ │ │ ry │ outs/rea │
│ 38 │ │ │ │ │ │ linux │ dthedocs │
│ │ │ │ │ │ │ command │ .org/use │
│ │ │ │ │ │ │ s in │ r_builds │
│ │ │ │ │ │ │ ubuntu │ /buildte │
│ │ │ │ │ │ │ contain │ st/check │
│ │ │ │ │ │ │ er │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ ntainers │
│ │ │ │ │ │ │ │ /run_com │
│ │ │ │ │ │ │ │ mands.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ foo_bar/ │ script │ generic. │ None │ None │ None │ prints │ /home/do │
│ 2f0868b1 │ │ local.sh │ │ │ │ variabl │ cs/check │
│ │ │ │ │ │ │ e $FOO │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/ma │
│ │ │ │ │ │ │ │ intainer │
│ │ │ │ │ │ │ │ s_exampl │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ executor │ script │ generic. │ None │ None │ None │ Declari │ /home/do │
│ s_sbatch │ │ local.ba │ │ │ │ ng env │ cs/check │
│ _declara │ │ sh │ │ │ │ and │ outs/rea │
│ tion/322 │ │ │ │ │ │ vars by │ dthedocs │
│ 69206 │ │ │ │ │ │ executo │ .org/use │
│ │ │ │ │ │ │ rs │ r_builds │
│ │ │ │ │ │ │ section │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/mu │
│ │ │ │ │ │ │ │ lti_exec │
│ │ │ │ │ │ │ │ utors/ex │
│ │ │ │ │ │ │ │ ecutor_s │
│ │ │ │ │ │ │ │ cheduler │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ executor │ script │ generic. │ None │ None │ None │ Declari │ /home/do │
│ s_sbatch │ │ local.sh │ │ │ │ ng env │ cs/check │
│ _declara │ │ │ │ │ │ and │ outs/rea │
│ tion/6c4 │ │ │ │ │ │ vars by │ dthedocs │
│ 5c704 │ │ │ │ │ │ executo │ .org/use │
│ │ │ │ │ │ │ rs │ r_builds │
│ │ │ │ │ │ │ section │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/mu │
│ │ │ │ │ │ │ │ lti_exec │
│ │ │ │ │ │ │ │ utors/ex │
│ │ │ │ │ │ │ │ ecutor_s │
│ │ │ │ │ │ │ │ cheduler │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ create_b │ script │ generic. │ None │ None │ None │ Create │ /home/do │
│ urst_buf │ │ local.ba │ │ │ │ a burst │ cs/check │
│ fer_exec │ │ sh │ │ │ │ buffer │ outs/rea │
│ utors/77 │ │ │ │ │ │ for │ dthedocs │
│ a18c66 │ │ │ │ │ │ multipl │ .org/use │
│ │ │ │ │ │ │ e │ r_builds │
│ │ │ │ │ │ │ executo │ /buildte │
│ │ │ │ │ │ │ rs │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/bu │
│ │ │ │ │ │ │ │ rstbuffe │
│ │ │ │ │ │ │ │ r_datawa │
│ │ │ │ │ │ │ │ rp_execu │
│ │ │ │ │ │ │ │ tors.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ create_b │ script │ generic. │ None │ None │ None │ Create │ /home/do │
│ urst_buf │ │ local.sh │ │ │ │ a burst │ cs/check │
│ fer_exec │ │ │ │ │ │ buffer │ outs/rea │
│ utors/01 │ │ │ │ │ │ for │ dthedocs │
│ 059c0c │ │ │ │ │ │ multipl │ .org/use │
│ │ │ │ │ │ │ e │ r_builds │
│ │ │ │ │ │ │ executo │ /buildte │
│ │ │ │ │ │ │ rs │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/bu │
│ │ │ │ │ │ │ │ rstbuffe │
│ │ │ │ │ │ │ │ r_datawa │
│ │ │ │ │ │ │ │ rp_execu │
│ │ │ │ │ │ │ │ tors.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_lin │ script │ generic. │ None │ None │ None │ Perform │ /home/do │
│ ecount/e │ │ local.ba │ │ │ │ linecou │ cs/check │
│ b6b127f │ │ sh │ │ │ │ nt │ outs/rea │
│ │ │ │ │ │ │ compari │ dthedocs │
│ │ │ │ │ │ │ son on │ .org/use │
│ │ │ │ │ │ │ files │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_l │
│ │ │ │ │ │ │ │ inecount │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_cou │ script │ generic. │ None │ None │ None │ file │ /home/do │
│ nt_by_ex │ │ local.ba │ │ │ │ count │ cs/check │
│ pression │ │ sh │ │ │ │ by │ outs/rea │
│ /9f0ac10 │ │ │ │ │ │ express │ dthedocs │
│ 6 │ │ │ │ │ │ ion │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_c │
│ │ │ │ │ │ │ │ ount_pat │
│ │ │ │ │ │ │ │ tern.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_ext │ script │ generic. │ None │ None │ None │ file │ /home/do │
│ ension_a │ │ local.ba │ │ │ │ count │ cs/check │
│ nd_filep │ │ sh │ │ │ │ by file │ outs/rea │
│ attern/8 │ │ │ │ │ │ extensi │ dthedocs │
│ bef82fc │ │ │ │ │ │ on and │ .org/use │
│ │ │ │ │ │ │ file │ r_builds │
│ │ │ │ │ │ │ pattern │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/file_c │
│ │ │ │ │ │ │ │ ount_pat │
│ │ │ │ │ │ │ │ tern.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ string_t │ script │ generic. │ None │ None │ None │ tags │ /home/do │
│ ag/a301a │ │ local.ba │ │ │ │ can be │ cs/check │
│ b6c │ │ sh │ │ │ │ a │ outs/rea │
│ │ │ │ │ │ │ string │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/ta │
│ │ │ │ │ │ │ │ gs_examp │
│ │ │ │ │ │ │ │ le.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ list_of_ │ script │ generic. │ None │ None │ None │ tags │ /home/do │
│ strings_ │ │ local.ba │ │ │ │ can be │ cs/check │
│ tags/ab8 │ │ sh │ │ │ │ a list │ outs/rea │
│ 3f7c4 │ │ │ │ │ │ of │ dthedocs │
│ │ │ │ │ │ │ strings │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/ta │
│ │ │ │ │ │ │ │ gs_examp │
│ │ │ │ │ │ │ │ le.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ assert_l │ script │ generic. │ None │ None │ None │ Run │ /home/do │
│ t_exampl │ │ local.ba │ │ │ │ stream │ cs/check │
│ e/5561b7 │ │ sh │ │ │ │ test │ outs/rea │
│ 64 │ │ │ │ │ │ with │ dthedocs │
│ │ │ │ │ │ │ metrics │ .org/use │
│ │ │ │ │ │ │ example │ r_builds │
│ │ │ │ │ │ │ using │ /buildte │
│ │ │ │ │ │ │ assert │ st/check │
│ │ │ │ │ │ │ less │ outs/lat │
│ │ │ │ │ │ │ than │ est/tuto │
│ │ │ │ │ │ │ │ rials/pe │
│ │ │ │ │ │ │ │ rf_check │
│ │ │ │ │ │ │ │ s/assert │
│ │ │ │ │ │ │ │ _lt.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_e │ script │ generic. │ None │ None │ None │ status │ /home/do │
│ xists/26 │ │ local.ba │ │ │ │ check │ cs/check │
│ e4fab1 │ │ sh │ │ │ │ based │ outs/rea │
│ │ │ │ │ │ │ for │ dthedocs │
│ │ │ │ │ │ │ file │ .org/use │
│ │ │ │ │ │ │ and │ r_builds │
│ │ │ │ │ │ │ directo │ /buildte │
│ │ │ │ │ │ │ ry │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/exists │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_e │ script │ generic. │ None │ None │ None │ status │ /home/do │
│ xists_fa │ │ local.ba │ │ │ │ check │ cs/check │
│ ilure/eb │ │ sh │ │ │ │ failure │ outs/rea │
│ 03f0c4 │ │ │ │ │ │ for │ dthedocs │
│ │ │ │ │ │ │ existen │ .org/use │
│ │ │ │ │ │ │ ce │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/exists │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ runtime_ │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ test/0b6 │ │ local.ba │ │ │ │ test │ cs/check │
│ c39d9 │ │ sh │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ sleep 5 │ dthedocs │
│ │ │ │ │ │ │ second │ .org/use │
│ │ │ │ │ │ │ but │ r_builds │
│ │ │ │ │ │ │ will │ /buildte │
│ │ │ │ │ │ │ fail │ st/check │
│ │ │ │ │ │ │ due to │ outs/lat │
│ │ │ │ │ │ │ runtime │ est/tuto │
│ │ │ │ │ │ │ 2sec │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex4 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ runtime_ │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ test_pas │ │ local.ba │ │ │ │ test │ cs/check │
│ s/5502bf │ │ sh │ │ │ │ will │ outs/rea │
│ 6a │ │ │ │ │ │ run │ dthedocs │
│ │ │ │ │ │ │ when │ .org/use │
│ │ │ │ │ │ │ runtime │ r_builds │
│ │ │ │ │ │ │ _test_p │ /buildte │
│ │ │ │ │ │ │ ass is │ st/check │
│ │ │ │ │ │ │ PASS │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex4 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ runtime_ │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ test_fai │ │ local.ba │ │ │ │ test │ cs/check │
│ l/f4b165 │ │ sh │ │ │ │ will │ outs/rea │
│ 07 │ │ │ │ │ │ run │ dthedocs │
│ │ │ │ │ │ │ when │ .org/use │
│ │ │ │ │ │ │ runtime │ r_builds │
│ │ │ │ │ │ │ _test_p │ /buildte │
│ │ │ │ │ │ │ ass is │ st/check │
│ │ │ │ │ │ │ FAIL │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex4 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ always_p │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ ass/c20a │ │ local.sh │ │ │ │ test │ cs/check │
│ 6a54 │ │ │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ always │ dthedocs │
│ │ │ │ │ │ │ 'PASS' │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/explic │
│ │ │ │ │ │ │ │ it_state │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ always_f │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ ail/7354 │ │ local.sh │ │ │ │ test │ cs/check │
│ 233b │ │ │ │ │ │ will │ outs/rea │
│ │ │ │ │ │ │ always │ dthedocs │
│ │ │ │ │ │ │ 'FAIL' │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/explic │
│ │ │ │ │ │ │ │ it_state │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ test_fai │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ l_return │ │ local.sh │ │ │ │ test │ cs/check │
│ code_mat │ │ │ │ │ │ will │ outs/rea │
│ ch/9614f │ │ │ │ │ │ 'FAIL' │ dthedocs │
│ 2e8 │ │ │ │ │ │ even if │ .org/use │
│ │ │ │ │ │ │ we have │ r_builds │
│ │ │ │ │ │ │ returnc │ /buildte │
│ │ │ │ │ │ │ ode │ st/check │
│ │ │ │ │ │ │ match │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/explic │
│ │ │ │ │ │ │ │ it_state │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ test_pas │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ s_return │ │ local.sh │ │ │ │ test │ cs/check │
│ code_mis │ │ │ │ │ │ will │ outs/rea │
│ match/6c │ │ │ │ │ │ 'PASS' │ dthedocs │
│ 60c1ac │ │ │ │ │ │ even if │ .org/use │
│ │ │ │ │ │ │ we have │ r_builds │
│ │ │ │ │ │ │ returnc │ /buildte │
│ │ │ │ │ │ │ ode │ st/check │
│ │ │ │ │ │ │ mismatc │ outs/lat │
│ │ │ │ │ │ │ h │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/explic │
│ │ │ │ │ │ │ │ it_state │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ gcc_vers │ script │ generic. │ None │ None │ None │ Print │ /home/do │
│ ion/65fe │ │ local.ba │ │ │ │ gcc │ cs/check │
│ fc60 │ │ sh │ │ │ │ version │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/gc │
│ │ │ │ │ │ │ │ c_versio │
│ │ │ │ │ │ │ │ n.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ csh_shel │ script │ generic. │ None │ None │ None │ csh │ /home/do │
│ l/db0cf7 │ │ local.cs │ │ │ │ shell │ cs/check │
│ 95 │ │ h │ │ │ │ example │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/cs │
│ │ │ │ │ │ │ │ h_shell_ │
│ │ │ │ │ │ │ │ examples │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ jobA/381 │ script │ generic. │ None │ None │ None │ no job │ /home/do │
│ f89cf │ │ local.ba │ │ │ │ depende │ cs/check │
│ │ │ sh │ │ │ │ ncy │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex1 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ jobB/91f │ script │ generic. │ None │ None │ None │ job │ /home/do │
│ 87365 │ │ local.ba │ │ │ │ depende │ cs/check │
│ │ │ sh │ │ │ │ ncy on │ outs/rea │
│ │ │ │ │ │ │ jobA │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex1 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ jobC/731 │ script │ generic. │ None │ None │ None │ job │ /home/do │
│ a0407 │ │ local.ba │ │ │ │ depende │ cs/check │
│ │ │ sh │ │ │ │ ncy on │ outs/rea │
│ │ │ │ │ │ │ jobA │ dthedocs │
│ │ │ │ │ │ │ and │ .org/use │
│ │ │ │ │ │ │ jobB │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/jo │
│ │ │ │ │ │ │ │ b_depend │
│ │ │ │ │ │ │ │ ency/ex1 │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ add_numb │ script │ generic. │ None │ None │ None │ Add X+Y │ /home/do │
│ ers/abda │ │ local.ba │ │ │ │ │ cs/check │
│ 6719 │ │ sh │ │ │ │ │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/ad │
│ │ │ │ │ │ │ │ d_number │
│ │ │ │ │ │ │ │ s.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ python_h │ script │ generic. │ None │ None │ None │ Hello │ /home/do │
│ ello/2a5 │ │ local.ba │ │ │ │ World │ cs/check │
│ eb08e │ │ sh │ │ │ │ python │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/py │
│ │ │ │ │ │ │ │ thon-hel │
│ │ │ │ │ │ │ │ lo.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_lin │ script │ generic. │ None │ None │ None │ Perform │ /home/do │
│ ecount_e │ │ local.ba │ │ │ │ ing │ cs/check │
│ xception │ │ sh │ │ │ │ file │ outs/rea │
│ s/550861 │ │ │ │ │ │ count │ dthedocs │
│ 8c │ │ │ │ │ │ on │ .org/use │
│ │ │ │ │ │ │ directo │ r_builds │
│ │ │ │ │ │ │ ry or │ /buildte │
│ │ │ │ │ │ │ invalid │ st/check │
│ │ │ │ │ │ │ files │ outs/lat │
│ │ │ │ │ │ │ can │ est/tuto │
│ │ │ │ │ │ │ result │ rials/te │
│ │ │ │ │ │ │ in │ st_statu │
│ │ │ │ │ │ │ failure │ s/file_l │
│ │ │ │ │ │ │ │ inecount │
│ │ │ │ │ │ │ │ _failure │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ post_run │ script │ generic. │ None │ None │ None │ post │ /home/do │
│ _example │ │ local.ba │ │ │ │ run │ cs/check │
│ /ebfd901 │ │ sh │ │ │ │ example │ outs/rea │
│ 1 │ │ │ │ │ │ that │ dthedocs │
│ │ │ │ │ │ │ will │ .org/use │
│ │ │ │ │ │ │ remove │ r_builds │
│ │ │ │ │ │ │ symboli │ /buildte │
│ │ │ │ │ │ │ c link │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/po │
│ │ │ │ │ │ │ │ st_run.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ sleep/3f │ script │ generic. │ None │ None │ None │ sleep 2 │ /home/do │
│ 0bfd1d │ │ local.ba │ │ │ │ seconds │ cs/check │
│ │ │ sh │ │ │ │ │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/sl │
│ │ │ │ │ │ │ │ eep.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ circle_a │ script │ generic. │ None │ None │ None │ Calcula │ /home/do │
│ rea/09fb │ │ local.ba │ │ │ │ te │ cs/check │
│ 19fa │ │ sh │ │ │ │ circle │ outs/rea │
│ │ │ │ │ │ │ of area │ dthedocs │
│ │ │ │ │ │ │ given a │ .org/use │
│ │ │ │ │ │ │ radius │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/py │
│ │ │ │ │ │ │ │ thon-she │
│ │ │ │ │ │ │ │ ll.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_r │ script │ generic. │ None │ None │ None │ invalid │ /home/do │
│ egex_lin │ │ local.ba │ │ │ │ linenum │ cs/check │
│ enum_fai │ │ sh │ │ │ │ can │ outs/rea │
│ lure_exa │ │ │ │ │ │ result │ dthedocs │
│ mple/7a5 │ │ │ │ │ │ in │ .org/use │
│ 6a9a7 │ │ │ │ │ │ failure │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_re │
│ │ │ │ │ │ │ │ gex_with │
│ │ │ │ │ │ │ │ _invalid │
│ │ │ │ │ │ │ │ _linenum │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ re.searc │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ h.stdout │ │ local.ba │ │ │ │ re.sear │ cs/check │
│ /26a00ed │ │ sh │ │ │ │ ch on │ outs/rea │
│ f │ │ │ │ │ │ stdout │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/specif │
│ │ │ │ │ │ │ │ y_regex_ │
│ │ │ │ │ │ │ │ type.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ re.match │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ .stdout/ │ │ local.ba │ │ │ │ re.matc │ cs/check │
│ ae59357e │ │ sh │ │ │ │ h on │ outs/rea │
│ │ │ │ │ │ │ stdout │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/specif │
│ │ │ │ │ │ │ │ y_regex_ │
│ │ │ │ │ │ │ │ type.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ re.fullm │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ atch.std │ │ local.ba │ │ │ │ re.full │ cs/check │
│ out/544a │ │ sh │ │ │ │ match │ outs/rea │
│ 2e5c │ │ │ │ │ │ on │ dthedocs │
│ │ │ │ │ │ │ stdout │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/specif │
│ │ │ │ │ │ │ │ y_regex_ │
│ │ │ │ │ │ │ │ type.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ re.match │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ _on_file │ │ local.ba │ │ │ │ re.matc │ cs/check │
│ _regex/a │ │ sh │ │ │ │ h on │ outs/rea │
│ ab0a5c8 │ │ │ │ │ │ file │ dthedocs │
│ │ │ │ │ │ │ regex │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/specif │
│ │ │ │ │ │ │ │ y_regex_ │
│ │ │ │ │ │ │ │ type.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ linux_st │ script │ generic. │ None │ None │ None │ This │ /home/do │
│ rict_tes │ │ local.ba │ │ │ │ example │ cs/check │
│ t/bd1e95 │ │ sh │ │ │ │ test │ outs/rea │
│ a2 │ │ │ │ │ │ will │ dthedocs │
│ │ │ │ │ │ │ show │ .org/use │
│ │ │ │ │ │ │ how │ r_builds │
│ │ │ │ │ │ │ returnc │ /buildte │
│ │ │ │ │ │ │ ode │ st/check │
│ │ │ │ │ │ │ will │ outs/lat │
│ │ │ │ │ │ │ change │ est/tuto │
│ │ │ │ │ │ │ when │ rials/st │
│ │ │ │ │ │ │ using │ rict_exa │
│ │ │ │ │ │ │ --stric │ mple.yml │
│ │ │ │ │ │ │ t flag │ │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/do │
│ s_bash/f │ │ local.ba │ │ │ │ shell │ cs/check │
│ f69b0fd │ │ sh │ │ │ │ variabl │ outs/rea │
│ │ │ │ │ │ │ es in │ dthedocs │
│ │ │ │ │ │ │ bash │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/va │
│ │ │ │ │ │ │ │ rs.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ run_scri │ script │ generic. │ None │ None │ None │ run a │ /home/do │
│ pt_in_co │ │ local.ba │ │ │ │ python │ cs/check │
│ ntainer/ │ │ sh │ │ │ │ script │ outs/rea │
│ a6f4fd98 │ │ │ │ │ │ in │ dthedocs │
│ │ │ │ │ │ │ contain │ .org/use │
│ │ │ │ │ │ │ er │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/co │
│ │ │ │ │ │ │ │ ntainers │
│ │ │ │ │ │ │ │ /run_scr │
│ │ │ │ │ │ │ │ ipt.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_r │ script │ generic. │ None │ None │ None │ Pass │ /home/do │
│ egex_std │ │ local.ba │ │ │ │ test │ cs/check │
│ out_pass │ │ sh │ │ │ │ based │ outs/rea │
│ /c416696 │ │ │ │ │ │ on │ dthedocs │
│ d │ │ │ │ │ │ regular │ .org/use │
│ │ │ │ │ │ │ express │ r_builds │
│ │ │ │ │ │ │ ion │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/status │
│ │ │ │ │ │ │ │ _regex.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_r │ script │ generic. │ None │ None │ None │ Pass │ /home/do │
│ egex_std │ │ local.ba │ │ │ │ test │ cs/check │
│ out_fail │ │ sh │ │ │ │ based │ outs/rea │
│ /69b2f26 │ │ │ │ │ │ on │ dthedocs │
│ b │ │ │ │ │ │ regular │ .org/use │
│ │ │ │ │ │ │ express │ r_builds │
│ │ │ │ │ │ │ ion │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/status │
│ │ │ │ │ │ │ │ _regex.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_r │ script │ generic. │ None │ None │ None │ Pass │ /home/do │
│ egex_std │ │ local.ba │ │ │ │ test │ cs/check │
│ err_pass │ │ sh │ │ │ │ based │ outs/rea │
│ /3622448 │ │ │ │ │ │ on │ dthedocs │
│ 8 │ │ │ │ │ │ regular │ .org/use │
│ │ │ │ │ │ │ express │ r_builds │
│ │ │ │ │ │ │ ion │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/status │
│ │ │ │ │ │ │ │ _regex.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ status_r │ script │ generic. │ None │ None │ None │ Pass │ /home/do │
│ egex_std │ │ local.ba │ │ │ │ test │ cs/check │
│ err_fail │ │ sh │ │ │ │ based │ outs/rea │
│ /691ff91 │ │ │ │ │ │ on │ dthedocs │
│ 0 │ │ │ │ │ │ regular │ .org/use │
│ │ │ │ │ │ │ express │ r_builds │
│ │ │ │ │ │ │ ion │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/status │
│ │ │ │ │ │ │ │ _regex.y │
│ │ │ │ │ │ │ │ ml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ regex_on │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ _multipl │ │ local.ba │ │ │ │ regex │ cs/check │
│ e_files/ │ │ sh │ │ │ │ on │ outs/rea │
│ 15070d99 │ │ │ │ │ │ multipl │ dthedocs │
│ │ │ │ │ │ │ e files │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/regex_ │
│ │ │ │ │ │ │ │ on_filen │
│ │ │ │ │ │ │ │ ame.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ regex_on │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ _directo │ │ local.ba │ │ │ │ regex │ cs/check │
│ ry_not_s │ │ sh │ │ │ │ on │ outs/rea │
│ upported │ │ │ │ │ │ directo │ dthedocs │
│ /ddd5983 │ │ │ │ │ │ ry is │ .org/use │
│ 0 │ │ │ │ │ │ not │ r_builds │
│ │ │ │ │ │ │ support │ /buildte │
│ │ │ │ │ │ │ ed │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/regex_ │
│ │ │ │ │ │ │ │ on_filen │
│ │ │ │ │ │ │ │ ame.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_exp │ script │ generic. │ None │ None │ None │ Test │ /home/do │
│ ansion_s │ │ local.ba │ │ │ │ regex │ cs/check │
│ upported │ │ sh │ │ │ │ with │ outs/rea │
│ /0bc881b │ │ │ │ │ │ variabl │ dthedocs │
│ d │ │ │ │ │ │ e and │ .org/use │
│ │ │ │ │ │ │ shell │ r_builds │
│ │ │ │ │ │ │ expansi │ /buildte │
│ │ │ │ │ │ │ on │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/te │
│ │ │ │ │ │ │ │ st_statu │
│ │ │ │ │ │ │ │ s/regex_ │
│ │ │ │ │ │ │ │ on_filen │
│ │ │ │ │ │ │ │ ame.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ file_tra │ script │ generic. │ None │ None │ None │ Use of │ /home/do │
│ verse_li │ │ local.ba │ │ │ │ file_tr │ cs/check │
│ mit/f0c6 │ │ sh │ │ │ │ averse_ │ outs/rea │
│ 0c3a │ │ │ │ │ │ limit │ dthedocs │
│ │ │ │ │ │ │ to │ .org/use │
│ │ │ │ │ │ │ limit │ r_builds │
│ │ │ │ │ │ │ number │ /buildte │
│ │ │ │ │ │ │ of │ st/check │
│ │ │ │ │ │ │ files │ outs/lat │
│ │ │ │ │ │ │ searche │ est/tuto │
│ │ │ │ │ │ │ d in a │ rials/te │
│ │ │ │ │ │ │ directo │ st_statu │
│ │ │ │ │ │ │ ry │ s/file_c │
│ │ │ │ │ │ │ │ ount_fil │
│ │ │ │ │ │ │ │ e_traver │
│ │ │ │ │ │ │ │ se_limit │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ metric_f │ script │ generic. │ None │ None │ None │ capture │ /home/do │
│ ile_rege │ │ local.ba │ │ │ │ result │ cs/check │
│ x_with_l │ │ sh │ │ │ │ metric │ outs/rea │
│ inenum_f │ │ │ │ │ │ from │ dthedocs │
│ ailure_e │ │ │ │ │ │ file │ .org/use │
│ xample/4 │ │ │ │ │ │ path │ r_builds │
│ b94e51a │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/me │
│ │ │ │ │ │ │ │ trics/me │
│ │ │ │ │ │ │ │ trics_fi │
│ │ │ │ │ │ │ │ le_regex │
│ │ │ │ │ │ │ │ _with_in │
│ │ │ │ │ │ │ │ valid_li │
│ │ │ │ │ │ │ │ nenum.ym │
│ │ │ │ │ │ │ │ l │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼─────────┼──────────┤
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/do │
│ rld/ad6b │ │ local.ba │ │ │ │ world │ cs/check │
│ cdbc │ │ sh │ │ │ │ example │ outs/rea │
│ │ │ │ │ │ │ │ dthedocs │
│ │ │ │ │ │ │ │ .org/use │
│ │ │ │ │ │ │ │ r_builds │
│ │ │ │ │ │ │ │ /buildte │
│ │ │ │ │ │ │ │ st/check │
│ │ │ │ │ │ │ │ outs/lat │
│ │ │ │ │ │ │ │ est/tuto │
│ │ │ │ │ │ │ │ rials/he │
│ │ │ │ │ │ │ │ llo_worl │
│ │ │ │ │ │ │ │ d.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴─────────┴──────────┘
──────────────────────────────── Building Test ─────────────────────────────────
file_and_dir_checks/86307084: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_and_dir_check/file_and_dir_checks/86307084
combined_file_and_dir_checks/68f1f38b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_and_dir_check/combined_file_and_dir_checks/68f1f38b
status_logical_and/d2060f8b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/mode/status_logical_and/d2060f8b
status_logical_or/10d80748: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/mode/status_logical_or/10d80748
file_count_on_directory/45f9b98f: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_count/file_count_on_directory/45f9b98f
file_count_by_extension/9a7d9a1c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_count/file_count_by_extension/9a7d9a1c
hello_world_singularity/aedbf2ab: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world_singularity/hello_world_singularity/aedbf2ab
'Unable to find singularity binary in PATH, this test will be not be executed.'
assert_ne_example/00eb5bbe: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_ne/assert_ne_example/00eb5bbe
metric_regex_example/94c81019: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_regex/metric_regex_example/94c81019
metric_file_regex/03e1c04a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_regex/metric_file_regex/03e1c04a
test1/8a964a1f: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex2/test1/8a964a1f
test2/1951d784: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex2/test2/1951d784
test3/a8459c0e: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex2/test3/a8459c0e
status_returncode_by_executors/637a2338: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/status_by_executors/status_returncode_by_executors/637a2338
status_returncode_by_executors/96b7f3d7: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/status_by_executors/status_returncode_by_executors/96b7f3d7
unskipped/70ef46de: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/skip_tests/unskipped/70ef46de
assert_eq_invalid_metric/7817beea: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_eq_exceptions/assert_eq_invalid_metric/7817beea
assert_eq_mismatch/1c74ffe0: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_eq_exceptions/assert_eq_mismatch/1c74ffe0
symlink_test/de5a8d44: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/is_symlink/symlink_test/de5a8d44
hello_world_docker/750fc5c0: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world_docker/750fc5c0
'Unable to find docker binary in PATH, this test will be not be executed.'
timelimit_min_max/e937c40d: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/runtime_status_test/timelimit_min_max/e937c40d
timelimit_min/dc86a7a7: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/runtime_status_test/timelimit_min/dc86a7a7
timelimit_max/6d8f921a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/runtime_status_test/timelimit_max/6d8f921a
timelimit_min_fail/9c2cf8f8: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/runtime_status_test/timelimit_min_fail/9c2cf8f8
timelimit_max_fail/47ef82cf: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/runtime_status_test/timelimit_max_fail/47ef82cf
contains_and_not_contains/c93a97e7: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/contains/contains_and_not_contains/c93a97e7
assert_contains_fail/ba27746d: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/contains/assert_contains_fail/ba27746d
bash_login_shebang/bff74fac: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/shebang/bash_login_shebang/bff74fac
bash_nonlogin_shebang/20e1229b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/shebang/bash_nonlogin_shebang/20e1229b
file_exists_pass/e7684521: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_exists_with_number/file_exists_pass/e7684521
linecount_stdout/8b9c9bc2: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/linecount/linecount_stdout/8b9c9bc2
linecount_stderr_mismatch/5b7ae61c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/linecount/linecount_stderr_mismatch/5b7ae61c
multiple_executors/96fbbfc6: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/executor_regex_script/multiple_executors/96fbbfc6
multiple_executors/489b9dad: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/executor_regex_script/multiple_executors/489b9dad
_bin_sh_shell/83b65bba: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/shell_examples/_bin_sh_shell/83b65bba
_bin_bash_shell/69f67972: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/shell_examples/_bin_bash_shell/69f67972
bash_shell/7fbf05d6: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/shell_examples/bash_shell/7fbf05d6
sh_shell/12d545b2: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/shell_examples/sh_shell/12d545b2
shell_options/74f65b80: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/shell_examples/shell_options/74f65b80
assert_range_ex/d1551812: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_range/assert_range_ex/d1551812
metric_regex_with_linenum_example/e1317f9a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_regex_with_linenum/metric_regex_with_linenum_example/e1317f9a
assert_eq_example/2bad8971: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_eq/assert_eq_example/2bad8971
assert_le_example/48996a0b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_le/assert_le_example/48996a0b
file_count_by_filetype/9193932b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_count_filetype/file_count_by_filetype/9193932b
metric_regex_example_with_re/9c180965: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_with_regex_type/metric_regex_example_with_re/9c180965
stream_openmp_c/dbbbf57e: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/stream/stream_openmp_c/dbbbf57e
bind_mount_in_container/a5ef4d5e: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/bind_mounts/bind_mount_in_container/a5ef4d5e
'Unable to find docker binary in PATH, this test will be not be executed.'
exit1_fail/6fde6acb: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/6fde6acb
exit1_pass/9bbc35a1: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/9bbc35a1
returncode_list_mismatch/18c43567: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/18c43567
returncode_int_match/6b7066d4: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/6b7066d4
metric_file_regex_invalid_file/b75ebd48: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_file_regex_invalid_file/metric_file_regex_invalid_file/b75ebd48
executors_vars_env_declaration/51ef1aac: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/executors_var_env_declaration/executors_vars_env_declaration/51ef1aac
executors_vars_env_declaration/757325b0: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/executors_var_env_declaration/executors_vars_env_declaration/757325b0
assert_gt_example/5082f23a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_gt/assert_gt_example/5082f23a
metric_file_regex_with_linenum_example/f13a9f7e: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_file_regex_with_linenum/metric_file_regex_with_linenum_example/f13a9f7e
bash_env_variables/f5de9b01: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/environment/bash_env_variables/f5de9b01
csh_env_declaration/4e4498f5: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/csh_env_declaration/4e4498f5
tcsh_env_declaration/fb5f1178: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.csh/environment/tcsh_env_declaration/fb5f1178
pass_test/f9700083: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex3/pass_test/f9700083
fail_test/fb91c884: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex3/fail_test/fb91c884
pass_and_fail_test/b1c9356c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex3/pass_and_fail_test/b1c9356c
final_test/37671117: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex3/final_test/37671117
stream_test/dedadc88: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_ge/stream_test/dedadc88
hello_world_c_cpp/b53a9b25: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world_compilation/hello_world_c_cpp/b53a9b25
summary_example/9901e9f8: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/summary_example/summary_example/9901e9f8
container_commands_ubuntu/b2f9ae84: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/run_commands/container_commands_ubuntu/b2f9ae84
'Unable to find docker binary in PATH, this test will be not be executed.'
container_options/e9d33f38: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/run_commands/container_options/e9d33f38
'Unable to find docker binary in PATH, this test will be not be executed.'
foo_bar/2f0868b1: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/maintainers_example/foo_bar/2f0868b1
executors_sbatch_declaration/32269206: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/executor_scheduler/executors_sbatch_declaration/32269206
executors_sbatch_declaration/6c45c704: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/executor_scheduler/executors_sbatch_declaration/6c45c704
create_burst_buffer_executors/77a18c66: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/burstbuffer_datawarp_executors/create_burst_buffer_executors/77a18c66
create_burst_buffer_executors/01059c0c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/burstbuffer_datawarp_executors/create_burst_buffer_executors/01059c0c
file_linecount/eb6b127f: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_linecount/file_linecount/eb6b127f
file_count_by_expression/9f0ac106: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_count_pattern/file_count_by_expression/9f0ac106
file_extension_and_filepattern/8bef82fc: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_count_pattern/file_extension_and_filepattern/8bef82fc
string_tag/a301ab6c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/tags_example/string_tag/a301ab6c
list_of_strings_tags/ab83f7c4: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/tags_example/list_of_strings_tags/ab83f7c4
assert_lt_example/5561b764: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/assert_lt/assert_lt_example/5561b764
status_exists/26e4fab1: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/exists/status_exists/26e4fab1
status_exists_failure/eb03f0c4: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/exists/status_exists_failure/eb03f0c4
runtime_test/0b6c39d9: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex4/runtime_test/0b6c39d9
runtime_test_pass/5502bf6a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex4/runtime_test_pass/5502bf6a
runtime_test_fail/f4b16507: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex4/runtime_test_fail/f4b16507
always_pass/c20a6a54: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/explicit_state/always_pass/c20a6a54
always_fail/7354233b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/explicit_state/always_fail/7354233b
test_fail_returncode_match/9614f2e8: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/explicit_state/test_fail_returncode_match/9614f2e8
test_pass_returncode_mismatch/6c60c1ac: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.sh/explicit_state/test_pass_returncode_mismatch/6c60c1ac
gcc_version/65fefc60: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/gcc_version/gcc_version/65fefc60
csh_shell/db0cf795: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.csh/csh_shell_examples/csh_shell/db0cf795
jobA/381f89cf: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex1/jobA/381f89cf
jobB/91f87365: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex1/jobB/91f87365
jobC/731a0407: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/ex1/jobC/731a0407
add_numbers/abda6719: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/add_numbers/add_numbers/abda6719
python_hello/2a5eb08e: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/2a5eb08e
file_linecount_exceptions/5508618c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_linecount_failure/file_linecount_exceptions/5508618c
post_run_example/ebfd9011: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/post_run/post_run_example/ebfd9011
post_run_example/ebfd9011: Writing Post Run Script: /tmp/tmpy0414mby/var/tests/generic.local.bash/post_run/post_run_example/ebfd9011/stage/post_run_example_postrun.sh
sleep/3f0bfd1d: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/3f0bfd1d
circle_area/09fb19fa: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/09fb19fa
metric_regex_linenum_failure_example/7a56a9a7: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_regex_with_invalid_linenum/metric_regex_linenum_failure_example/7a56a9a7
re.search.stdout/26a00edf: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/specify_regex_type/re.search.stdout/26a00edf
re.match.stdout/ae59357e: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/specify_regex_type/re.match.stdout/ae59357e
re.fullmatch.stdout/544a2e5c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/specify_regex_type/re.fullmatch.stdout/544a2e5c
re.match_on_file_regex/aab0a5c8: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/specify_regex_type/re.match_on_file_regex/aab0a5c8
linux_strict_test/bd1e95a2: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/bd1e95a2
variables_bash/ff69b0fd: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/ff69b0fd
run_script_in_container/a6f4fd98: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/run_script/run_script_in_container/a6f4fd98
'Unable to find docker binary in PATH, this test will be not be executed.'
status_regex_stdout_pass/c416696d: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/status_regex/status_regex_stdout_pass/c416696d
status_regex_stdout_fail/69b2f26b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/status_regex/status_regex_stdout_fail/69b2f26b
status_regex_stderr_pass/36224488: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/status_regex/status_regex_stderr_pass/36224488
status_regex_stderr_fail/691ff910: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/status_regex/status_regex_stderr_fail/691ff910
regex_on_multiple_files/15070d99: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/regex_on_filename/regex_on_multiple_files/15070d99
regex_on_directory_not_supported/ddd59830: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/regex_on_filename/regex_on_directory_not_supported/ddd59830
file_expansion_supported/0bc881bd: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/regex_on_filename/file_expansion_supported/0bc881bd
file_traverse_limit/f0c60c3a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/file_count_file_traverse_limit/file_traverse_limit/f0c60c3a
metric_file_regex_with_linenum_failure_example/4b94e51a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/metrics_file_regex_with_invalid_linenum/metric_file_regex_with_linenum_failure_example/4b94e51a
hello_world/ad6bcdbc: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/ad6bcdbc
Filter By Executor Type
In a HPC environment, you may want to run test locally on a login node or perhaps you only want to run batch jobs given a list of buildspecs specified on command line.
This can be done in buildtest via option buildtest build –executor-type which takes one of two values local or batch. If you want to filter all tests
by local executor you can do buildtest build --executor-type local
. buildtest will filter test based on the executor
property defined in the buildspec. Let’s assume
we want to run all test by python
tag on local executor you can do the following:
buildtest build -t python --executor-type local
$ buildtest build -t python --executor-type local
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:10 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs By Tag=python
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 2
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 2
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 2
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-hello.yml: VALID
Total builder objects created: 2
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ circle_a │ script │ generic. │ None │ None │ None │ Calculat │ /home/d │
│ rea/7545 │ │ local.ba │ │ │ │ e circle │ ocs/che │
│ d58c │ │ sh │ │ │ │ of area │ ckouts/ │
│ │ │ │ │ │ │ given a │ readthe │
│ │ │ │ │ │ │ radius │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/pytho │
│ │ │ │ │ │ │ │ n-shell │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ python_h │ script │ generic. │ None │ None │ None │ Hello │ /home/d │
│ ello/516 │ │ local.ba │ │ │ │ World │ ocs/che │
│ 314ac │ │ sh │ │ │ │ python │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/pytho │
│ │ │ │ │ │ │ │ n-hello │
│ │ │ │ │ │ │ │ .yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
circle_area/7545d58c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/7545d58c
python_hello/516314ac: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/516314ac
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
python_hello/516314ac does not have any dependencies adding test to queue
circle_area/7545d58c does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━┩
│ python_hello/516314ac │
│ circle_area/7545d58c │
└───────────────────────┘
python_hello/516314ac: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/516314ac/stage
python_hello/516314ac: Running Test via command: bash python_hello_build.sh
python_hello/516314ac: Test completed in 0.027478 seconds with returncode: 0
python_hello/516314ac: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/516314ac/python_hello.out
python_hello/516314ac: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/516314ac/python_hello.err
circle_area/7545d58c: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/7545d58c/stage
circle_area/7545d58c: Running Test via command: bash circle_area_build.sh
circle_area/7545d58c: Test completed in 0.027339 seconds with returncode: 0
circle_area/7545d58c: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/7545d58c/circle_area.out
circle_area/7545d58c: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/7545d58c/circle_area.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ circle_area/7545d58c │ generic.local.bash │ PASS │ 0 │ 0.027 │
├───────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ python_hello/516314ac │ generic.local.bash │ PASS │ 0 │ 0.027 │
└───────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 2/2 Percentage: 100.000%
Failed Tests: 0/2 Percentage: 0.000%
Adding 2 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_cphay49_.log
Now let’s say we want to rerun same command but now only run test that are batch, we can specify --executor-type batch
and buildtest will filter tests
by executor and find all batch executors. In this case we see that all tests were filtered out and we have no test run.
buildtest build -t python --executor-type batch
$ buildtest build -t python --executor-type batch
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:10 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs By Tag=python
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 2
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 2
────────────────────────────── Parsing Buildspecs ──────────────────────────────
circle_area/b7101d35 is excluded since its not using batch executor
python_hello/c92a5baa is excluded since its not using batch executor
Valid Buildspecs: 2
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-hello.yml: VALID
Buildspecs Filtered out
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ buildspecs ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │
└──────────────────────────────────────────────────────────────────────────────┘
buildtest is unable to create any tests because there are no valid buildspecs.
Please see logfile: /tmp/tmpy0414mby/var/buildtest.log
This option can be particularly useful if want to run a lot of tests and you are not sure which ones will run locally or batch. Let’s say you have all your buildspecs in a directory name tests and you want to run all test that will use local executor and you don’t want to run the batch jobs then you can do the following:
buildtest build -b tests --executor-type local
Configure Build Stages
We can control behavior of buildtest build
command to stop at certain phase
using --validate
and --dry-run
options.
Buildtest will validate all the buildspecs in the parse stage, so you can
instruct buildtest to stop at parse stage via --validate
. 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 --validate
$ buildtest build -b tutorials/vars.yml --validate
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:11 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/9 │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 0b434da │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
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 build -b tutorials/invalid_buildspec_section.yml ╭───────────────────────────── buildtest summary ──────────────────────────────╮ │ │ │ User: docs │ │ Hostname: build-26220537-project-280831-buildtest │ │ Platform: Linux │ │ Current Time: 2024/11/08 18:04:12 │ │ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ buildtest version: 2.1 │ │ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ python version: 3.10.14 │ │ Configuration File: /tmp/tmpy0414mby/config.yml │ │ Test Directory: /tmp/tmpy0414mby/var/tests │ │ Report File: /tmp/tmpy0414mby/var/report.json │ │ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ ─────────────────────────── Discovering Buildspecs ──────────────────────────── Discovered buildspecs ╔══════════════════════════════════════════════════════════════════════════════╗ ║ buildspec ║ ╟──────────────────────────────────────────────────────────────────────────────╢ ║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║ ║ tutorials/invalid_buildspec_section.yml ║ ╟──────────────────────────────────────────────────────────────────────────────╢ ║ Total: 1 ║ ╚══════════════════════════════════════════════════════════════════════════════╝ Total Discovered Buildspecs: 1 Total Excluded Buildspecs: 0 Detected Buildspecs after exclusion: 1 ────────────────────────────── Parsing Buildspecs ────────────────────────────── Valid Buildspecs: 0 Invalid Buildspecs: 1 /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_buildspec_section.yml: INVALID buildtest is unable to create any tests because there are no valid buildspecs. Please see logfile: /tmp/tmpy0414mby/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 build -b tutorials/invalid_executor.yml ╭───────────────────────────── buildtest summary ──────────────────────────────╮ │ │ │ User: docs │ │ Hostname: build-26220537-project-280831-buildtest │ │ Platform: Linux │ │ Current Time: 2024/11/08 18:04:12 │ │ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ buildtest version: 2.1 │ │ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ python version: 3.10.14 │ │ Configuration File: /tmp/tmpy0414mby/config.yml │ │ Test Directory: /tmp/tmpy0414mby/var/tests │ │ Report File: /tmp/tmpy0414mby/var/report.json │ │ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ ─────────────────────────── Discovering Buildspecs ──────────────────────────── Discovered buildspecs ╔══════════════════════════════════════════════════════════════════════════════╗ ║ buildspec ║ ╟──────────────────────────────────────────────────────────────────────────────╢ ║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║ ║ tutorials/invalid_executor.yml ║ ╟──────────────────────────────────────────────────────────────────────────────╢ ║ Total: 1 ║ ╚══════════════════════════════════════════════════════════════════════════════╝ Total Discovered Buildspecs: 1 Total Excluded Buildspecs: 0 Detected Buildspecs after exclusion: 1 ────────────────────────────── Parsing Buildspecs ────────────────────────────── Valid Buildspecs: 1 Invalid Buildspecs: 0 /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/invalid_executor.yml: VALID Buildspecs Filtered out ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ buildspecs ┃ ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ │ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest… │ └──────────────────────────────────────────────────────────────────────────────┘ buildtest is unable to create any tests because there are no valid buildspecs. Please see logfile: /tmp/tmpy0414mby/var/buildtest.log
Validate Tests (buildtest build --validate
)
When you use the buildtest build command, you have the option to enter a validate mode by
adding the --validate
option. In this mode, the command will validate given buildspecs
and stop after the parse stage. It’s particularly useful when you’re creating or editing a
buildspec file and want to check its validity before entering the build stage.
For instance, in the following example, we demonstrate how to instruct buildtest to halt after
the parse stage.
buildtest build -b tutorials/vars.yml --validate
$ buildtest build -b tutorials/vars.yml --validate
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:11 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/9 │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 0b434da │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
Dry Run (buildtest build --dry-run
)
When you use the buildtest build command, you have the option to enter a dry run mode by
adding the --dry-run
option. In this mode, the command will simulate the build process
but won’t execute the tests. It’s particularly useful when you’re creating or editing a
buildspec file and want to see how the test script is generated without actually running the tests.
For instance, in the following example, we demonstrate how to instruct buildtest to halt after
the build stage.
buildtest build -b tutorials/vars.yml --dry-run
$ buildtest build -b tutorials/vars.yml --dry-run
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:13 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/6 │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 0c612f4 │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/60c612f4: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/60c612f4
Rebuild Tests (buildtest build --rebuild
)
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 build -b tutorials/python-shell.yml --rebuild=3
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:13 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-shell.yml: VALID
Total builder objects created: 3
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ circle_a │ script │ generic. │ None │ None │ None │ Calculat │ /home/d │
│ rea/3dd5 │ │ local.ba │ │ │ │ e circle │ ocs/che │
│ b321 │ │ sh │ │ │ │ of area │ ckouts/ │
│ │ │ │ │ │ │ given a │ readthe │
│ │ │ │ │ │ │ radius │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/pytho │
│ │ │ │ │ │ │ │ n-shell │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ circle_a │ script │ generic. │ None │ None │ None │ Calculat │ /home/d │
│ rea/d72e │ │ local.ba │ │ │ │ e circle │ ocs/che │
│ e4bb │ │ sh │ │ │ │ of area │ ckouts/ │
│ │ │ │ │ │ │ given a │ readthe │
│ │ │ │ │ │ │ radius │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/pytho │
│ │ │ │ │ │ │ │ n-shell │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ circle_a │ script │ generic. │ None │ None │ None │ Calculat │ /home/d │
│ rea/9e81 │ │ local.ba │ │ │ │ e circle │ ocs/che │
│ 3e00 │ │ sh │ │ │ │ of area │ ckouts/ │
│ │ │ │ │ │ │ given a │ readthe │
│ │ │ │ │ │ │ radius │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/pytho │
│ │ │ │ │ │ │ │ n-shell │
│ │ │ │ │ │ │ │ .yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
circle_area/3dd5b321: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/3dd5b321
circle_area/d72ee4bb: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/d72ee4bb
circle_area/9e813e00: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/9e813e00
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
circle_area/d72ee4bb does not have any dependencies adding test to queue
circle_area/3dd5b321 does not have any dependencies adding test to queue
circle_area/9e813e00 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━┩
│ circle_area/d72ee4bb │
│ circle_area/3dd5b321 │
│ circle_area/9e813e00 │
└──────────────────────┘
circle_area/d72ee4bb: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/d72ee4bb/stage
circle_area/d72ee4bb: Running Test via command: bash circle_area_build.sh
circle_area/d72ee4bb: Test completed in 0.028666 seconds with returncode: 0
circle_area/d72ee4bb: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/d72ee4bb/circle_area.out
circle_area/d72ee4bb: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/d72ee4bb/circle_area.err
circle_area/3dd5b321: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/3dd5b321/stage
circle_area/3dd5b321: Running Test via command: bash circle_area_build.sh
circle_area/3dd5b321: Test completed in 0.0275 seconds with returncode: 0
circle_area/3dd5b321: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/3dd5b321/circle_area.out
circle_area/3dd5b321: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/3dd5b321/circle_area.err
circle_area/9e813e00: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/9e813e00/stage
circle_area/9e813e00: Running Test via command: bash circle_area_build.sh
circle_area/9e813e00: Test completed in 0.027377 seconds with returncode: 0
circle_area/9e813e00: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/9e813e00/circle_area.out
circle_area/9e813e00: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/9e813e00/circle_area.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ circle_area/3dd5b321 │ generic.local.bash │ PASS │ 0 │ 0.028 │
├──────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ circle_area/d72ee4bb │ generic.local.bash │ PASS │ 0 │ 0.029 │
├──────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ circle_area/9e813e00 │ generic.local.bash │ PASS │ 0 │ 0.027 │
└──────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 3/3 Percentage: 100.000%
Failed Tests: 0/3 Percentage: 0.000%
Adding 3 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_vzm9s29b.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 build -t fail --rebuild 2
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:14 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs By Tag=fail
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/pass_returncode.yml: VALID
Total builder objects created: 8
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ exit1_fa │ script │ generic. │ None │ None │ None │ exit 1 │ /home/d │
│ il/4cbad │ │ local.ba │ │ │ │ by │ ocs/che │
│ 7c0 │ │ sh │ │ │ │ default │ ckouts/ │
│ │ │ │ │ │ │ is FAIL │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ exit1_pa │ script │ generic. │ None │ None │ None │ report │ /home/d │
│ ss/c00f3 │ │ local.ba │ │ │ │ exit 1 │ ocs/che │
│ 186 │ │ sh │ │ │ │ as PASS │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 2 │ /home/d │
│ de_list_ │ │ local.ba │ │ │ │ failed │ ocs/che │
│ mismatch │ │ sh │ │ │ │ since it │ ckouts/ │
│ /5946457 │ │ │ │ │ │ failed │ readthe │
│ f │ │ │ │ │ │ to match │ docs.or │
│ │ │ │ │ │ │ returnco │ g/user_ │
│ │ │ │ │ │ │ de 1 │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 128 │ /home/d │
│ de_int_m │ │ local.ba │ │ │ │ matches │ ocs/che │
│ atch/ca2 │ │ sh │ │ │ │ returnco │ ckouts/ │
│ 8af40 │ │ │ │ │ │ de 128 │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ exit1_fa │ script │ generic. │ None │ None │ None │ exit 1 │ /home/d │
│ il/03393 │ │ local.ba │ │ │ │ by │ ocs/che │
│ fd6 │ │ sh │ │ │ │ default │ ckouts/ │
│ │ │ │ │ │ │ is FAIL │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ exit1_pa │ script │ generic. │ None │ None │ None │ report │ /home/d │
│ ss/be2e2 │ │ local.ba │ │ │ │ exit 1 │ ocs/che │
│ 62a │ │ sh │ │ │ │ as PASS │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 2 │ /home/d │
│ de_list_ │ │ local.ba │ │ │ │ failed │ ocs/che │
│ mismatch │ │ sh │ │ │ │ since it │ ckouts/ │
│ /96f15e1 │ │ │ │ │ │ failed │ readthe │
│ 9 │ │ │ │ │ │ to match │ docs.or │
│ │ │ │ │ │ │ returnco │ g/user_ │
│ │ │ │ │ │ │ de 1 │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 128 │ /home/d │
│ de_int_m │ │ local.ba │ │ │ │ matches │ ocs/che │
│ atch/c31 │ │ sh │ │ │ │ returnco │ ckouts/ │
│ 2858c │ │ │ │ │ │ de 128 │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
exit1_fail/4cbad7c0: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4cbad7c0
exit1_pass/c00f3186: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/c00f3186
returncode_list_mismatch/5946457f: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/5946457f
returncode_int_match/ca28af40: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/ca28af40
exit1_fail/03393fd6: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/03393fd6
exit1_pass/be2e262a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/be2e262a
returncode_list_mismatch/96f15e19: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/96f15e19
returncode_int_match/c312858c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/c312858c
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
returncode_int_match/c312858c does not have any dependencies adding test to queue
exit1_pass/be2e262a does not have any dependencies adding test to queue
returncode_int_match/ca28af40 does not have any dependencies adding test to queue
returncode_list_mismatch/96f15e19 does not have any dependencies adding test to queue
exit1_fail/4cbad7c0 does not have any dependencies adding test to queue
exit1_fail/03393fd6 does not have any dependencies adding test to queue
returncode_list_mismatch/5946457f does not have any dependencies adding test to queue
exit1_pass/c00f3186 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ returncode_int_match/c312858c │
│ exit1_pass/be2e262a │
│ returncode_int_match/ca28af40 │
│ returncode_list_mismatch/96f15e19 │
│ exit1_fail/4cbad7c0 │
│ exit1_fail/03393fd6 │
│ returncode_list_mismatch/5946457f │
│ exit1_pass/c00f3186 │
└───────────────────────────────────┘
returncode_int_match/c312858c: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/c312858c/stage
returncode_int_match/c312858c: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/c312858c: failed to submit job with returncode: 128
returncode_int_match/c312858c: Detected failure in running test, will attempt to retry test: 1 times
returncode_int_match/c312858c: Run - 1/1
returncode_int_match/c312858c: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/c312858c: failed to submit job with returncode: 128
returncode_int_match/c312858c: Test completed in 0.010139 seconds with returncode: 128
returncode_int_match/c312858c: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/c312858c/returncode_int_match.out
returncode_int_match/c312858c: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/c312858c/returncode_int_match.err
returncode_int_match/c312858c: Checking returncode - 128 is matched in list [128]
exit1_pass/be2e262a: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/be2e262a/stage
exit1_pass/be2e262a: Running Test via command: bash exit1_pass_build.sh
exit1_pass/be2e262a: failed to submit job with returncode: 1
exit1_pass/be2e262a: Detected failure in running test, will attempt to retry test: 1 times
exit1_pass/be2e262a: Run - 1/1
exit1_pass/be2e262a: Running Test via command: bash exit1_pass_build.sh
exit1_pass/be2e262a: failed to submit job with returncode: 1
exit1_pass/be2e262a: Test completed in 0.009573 seconds with returncode: 1
exit1_pass/be2e262a: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/be2e262a/exit1_pass.out
exit1_pass/be2e262a: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/be2e262a/exit1_pass.err
exit1_pass/be2e262a: Checking returncode - 1 is matched in list [1]
returncode_int_match/ca28af40: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/ca28af40/stage
returncode_int_match/ca28af40: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/ca28af40: failed to submit job with returncode: 128
returncode_int_match/ca28af40: Detected failure in running test, will attempt to retry test: 1 times
returncode_int_match/ca28af40: Run - 1/1
returncode_int_match/ca28af40: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/ca28af40: failed to submit job with returncode: 128
returncode_int_match/ca28af40: Test completed in 0.009245 seconds with returncode: 128
returncode_int_match/ca28af40: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/ca28af40/returncode_int_match.out
returncode_int_match/ca28af40: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/ca28af40/returncode_int_match.err
returncode_int_match/ca28af40: Checking returncode - 128 is matched in list [128]
returncode_list_mismatch/96f15e19: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/96f15e19/stage
returncode_list_mismatch/96f15e19: Running Test via command: bash returncode_list_mismatch_build.sh
returncode_list_mismatch/96f15e19: failed to submit job with returncode: 2
returncode_list_mismatch/96f15e19: Detected failure in running test, will attempt to retry test: 1 times
returncode_list_mismatch/96f15e19: Run - 1/1
returncode_list_mismatch/96f15e19: Running Test via command: bash returncode_list_mismatch_build.sh
returncode_list_mismatch/96f15e19: failed to submit job with returncode: 2
returncode_list_mismatch/96f15e19: Test completed in 0.00938 seconds with returncode: 2
returncode_list_mismatch/96f15e19: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/96f15e19/returncode_list_mismatch.out
returncode_list_mismatch/96f15e19: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/96f15e19/returncode_list_mismatch.err
returncode_list_mismatch/96f15e19: Checking returncode - 2 is matched in list [1, 3]
exit1_fail/4cbad7c0: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4cbad7c0/stage
exit1_fail/4cbad7c0: Running Test via command: bash exit1_fail_build.sh
exit1_fail/4cbad7c0: failed to submit job with returncode: 1
exit1_fail/4cbad7c0: Detected failure in running test, will attempt to retry test: 1 times
exit1_fail/4cbad7c0: Run - 1/1
exit1_fail/4cbad7c0: Running Test via command: bash exit1_fail_build.sh
exit1_fail/4cbad7c0: failed to submit job with returncode: 1
exit1_fail/4cbad7c0: Test completed in 0.009269 seconds with returncode: 1
exit1_fail/4cbad7c0: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4cbad7c0/exit1_fail.out
exit1_fail/4cbad7c0: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4cbad7c0/exit1_fail.err
exit1_fail/03393fd6: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/03393fd6/stage
exit1_fail/03393fd6: Running Test via command: bash exit1_fail_build.sh
exit1_fail/03393fd6: failed to submit job with returncode: 1
exit1_fail/03393fd6: Detected failure in running test, will attempt to retry test: 1 times
exit1_fail/03393fd6: Run - 1/1
exit1_fail/03393fd6: Running Test via command: bash exit1_fail_build.sh
exit1_fail/03393fd6: failed to submit job with returncode: 1
exit1_fail/03393fd6: Test completed in 0.010349 seconds with returncode: 1
exit1_fail/03393fd6: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/03393fd6/exit1_fail.out
exit1_fail/03393fd6: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/03393fd6/exit1_fail.err
returncode_list_mismatch/5946457f: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/5946457f/stage
returncode_list_mismatch/5946457f: Running Test via command: bash returncode_list_mismatch_build.sh
returncode_list_mismatch/5946457f: failed to submit job with returncode: 2
returncode_list_mismatch/5946457f: Detected failure in running test, will attempt to retry test: 1 times
returncode_list_mismatch/5946457f: Run - 1/1
returncode_list_mismatch/5946457f: Running Test via command: bash returncode_list_mismatch_build.sh
returncode_list_mismatch/5946457f: failed to submit job with returncode: 2
returncode_list_mismatch/5946457f: Test completed in 0.009549 seconds with returncode: 2
returncode_list_mismatch/5946457f: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/5946457f/returncode_list_mismatch.out
returncode_list_mismatch/5946457f: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/5946457f/returncode_list_mismatch.err
returncode_list_mismatch/5946457f: Checking returncode - 2 is matched in list [1, 3]
exit1_pass/c00f3186: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/c00f3186/stage
exit1_pass/c00f3186: Running Test via command: bash exit1_pass_build.sh
exit1_pass/c00f3186: failed to submit job with returncode: 1
exit1_pass/c00f3186: Detected failure in running test, will attempt to retry test: 1 times
exit1_pass/c00f3186: Run - 1/1
exit1_pass/c00f3186: Running Test via command: bash exit1_pass_build.sh
exit1_pass/c00f3186: failed to submit job with returncode: 1
exit1_pass/c00f3186: Test completed in 0.010054 seconds with returncode: 1
exit1_pass/c00f3186: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/c00f3186/exit1_pass.out
exit1_pass/c00f3186: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/c00f3186/exit1_pass.err
exit1_pass/c00f3186: Checking returncode - 1 is matched in list [1]
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ exit1_fail/03393fd6 │ generic.local.bash │ FAIL │ 1 │ 0.010 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ returncode_list_mismatc │ generic.local.bash │ FAIL │ 2 │ 0.010 │
│ h/5946457f │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ exit1_pass/c00f3186 │ generic.local.bash │ PASS │ 1 │ 0.010 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ exit1_fail/4cbad7c0 │ generic.local.bash │ FAIL │ 1 │ 0.009 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ returncode_list_mismatc │ generic.local.bash │ FAIL │ 2 │ 0.009 │
│ h/96f15e19 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ returncode_int_match/c3 │ generic.local.bash │ PASS │ 128 │ 0.010 │
│ 12858c │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ exit1_pass/be2e262a │ generic.local.bash │ PASS │ 1 │ 0.010 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ returncode_int_match/ca │ generic.local.bash │ PASS │ 128 │ 0.009 │
│ 28af40 │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 4/8 Percentage: 50.000%
Failed Tests: 4/8 Percentage: 50.000%
Adding 8 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_u_lcl9x_.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/test_status/pass_returncode.yml --rebuild 51
$ buildtest build -b tutorials/test_status/pass_returncode.yml --rebuild 51
╭───────────────────── Traceback (most recent call last) ──────────────────────╮
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ │
│ bin/buildtest:38 in <module> │
│ │
│ 35 │
│ 36 if __name__ == "__main__": │
│ 37 │
│ ❱ 38 sys.exit(main()) │
│ 39 │
│ │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │ buildtest_file = '/home/docs/checkouts/readthedocs.org/user_builds/buil… │ │
│ │ os = <module 'os' from │ │
│ │ '/home/docs/.asdf/installs/python/3.10.14/lib/python3.… │ │
│ │ prefix = '/home/docs/checkouts/readthedocs.org/user_builds/buil… │ │
│ │ sys = <module 'sys' (built-in)> │ │
│ ╰──────────────────────────────────────────────────────────────────────────╯ │
│ │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ │
│ buildtest/main.py:95 in main │
│ │
│ 92 │ │
│ 93 │ # buildtest build command │
│ 94 │ if args.subcommands in ["build", "bd"]: │
│ ❱ 95 │ │ handle_build_command(args, configuration, report_file) │
│ 96 │ │
│ 97 │ # buildtest build history │
│ 98 │ if args.subcommands in ["history", "hy"]: │
│ │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │ args = Namespace(subcommands='build', configfile=None, │ │
│ │ debug=False, loglevel='DEBUG', editor=None, │ │
│ │ view_log=False, logpath=False, print_log=False, │ │
│ │ color=None, no_color=False, helpcolor=False, │ │
│ │ report=None, listopts=False, verbose=False, │ │
│ │ buildspec=['tutorials/test_status/pass_returncode.ym… │ │
│ │ exclude=None, name=None, executor=None, │ │
│ │ exclude_tags=None, tags=None, rerun=False, │ │
│ │ filter=None, helpfilter=False, executor_type=None, │ │
│ │ module_purge=False, modules=None, │ │
│ │ unload_modules=None, account=None, maxpendtime=None, │ │
│ │ pollinterval=None, procs=None, nodes=None, │ │
│ │ display=None, dry_run=False, limit=None, │ │
│ │ max_jobs=None, profile=None, remove_stagedir=False, │ │
│ │ rebuild=51, retry=1, save_profile=None, strict=False, │ │
│ │ testdir=None, timeout=None, validate=False, │ │
│ │ write_config_file=None) │ │
│ │ buildtest_editor = '/usr/bin/vim' │ │
│ │ configuration = <buildtest.config.SiteConfiguration object at │ │
│ │ 0x7f00566a0b50> │ │
│ │ parser = <buildtest.cli.BuildTestParser object at │ │
│ │ 0x7f00587be6e0> │ │
│ │ report_file = None │ │
│ │ system = <buildtest.system.BuildTestSystem object at │ │
│ │ 0x7f00566a0b80> │ │
│ ╰──────────────────────────────────────────────────────────────────────────╯ │
│ │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ │
│ buildtest/main.py:292 in handle_build_command │
│ │
│ 289 │ if args.subcommands in ["build", "bd"]: │
│ 290 │ │ stdout_file = tempfile.NamedTemporaryFile(delete=True, suffix= │
│ 291 │ │ with Tee(stdout_file.name): │
│ ❱ 292 │ │ │ cmd = BuildTest( │
│ 293 │ │ │ │ account=args.account, │
│ 294 │ │ │ │ buildspecs=args.buildspec, │
│ 295 │ │ │ │ configuration=configuration, │
│ │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │ args = Namespace(subcommands='build', configfile=None, │ │
│ │ debug=False, loglevel='DEBUG', editor=None, │ │
│ │ view_log=False, logpath=False, print_log=False, │ │
│ │ color=None, no_color=False, helpcolor=False, │ │
│ │ report=None, listopts=False, verbose=False, │ │
│ │ buildspec=['tutorials/test_status/pass_returncode.yml'], │ │
│ │ exclude=None, name=None, executor=None, │ │
│ │ exclude_tags=None, tags=None, rerun=False, filter=None, │ │
│ │ helpfilter=False, executor_type=None, │ │
│ │ module_purge=False, modules=None, unload_modules=None, │ │
│ │ account=None, maxpendtime=None, pollinterval=None, │ │
│ │ procs=None, nodes=None, display=None, dry_run=False, │ │
│ │ limit=None, max_jobs=None, profile=None, │ │
│ │ remove_stagedir=False, rebuild=51, retry=1, │ │
│ │ save_profile=None, strict=False, testdir=None, │ │
│ │ timeout=None, validate=False, write_config_file=None) │ │
│ │ configuration = <buildtest.config.SiteConfiguration object at │ │
│ │ 0x7f00566a0b50> │ │
│ │ report_file = None │ │
│ │ stdout_file = <tempfile._TemporaryFileWrapper object at │ │
│ │ 0x7f00564e1f00> │ │
│ ╰──────────────────────────────────────────────────────────────────────────╯ │
│ │
│ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ │
│ buildtest/cli/build.py:712 in __init__ │
│ │
│ 709 │ │ │ │ raise BuildTestError(f"{rebuild} is not of type int") │
│ 710 │ │ │ │
│ 711 │ │ │ if rebuild > 50: │
│ ❱ 712 │ │ │ │ raise BuildTestError( │
│ 713 │ │ │ │ │ f"--rebuild {rebuild} exceeds maximum rebuild lim │
│ 714 │ │ │ │ ) │
│ 715 │
│ │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │ account = None │ │
│ │ arg_name = None │ │
│ │ buildspecs = ['tutorials/test_status/pass_returncode.yml'] │ │
│ │ configuration = <buildtest.config.SiteConfiguration object at │ │
│ │ 0x7f00566a0b50> │ │
│ │ display = None │ │
│ │ dry_run = False │ │
│ │ exclude_buildspecs = None │ │
│ │ exclude_tags = None │ │
│ │ executor_type = None │ │
│ │ executors = None │ │
│ │ filter_buildspecs = None │ │
│ │ helpfilter = False │ │
│ │ limit = None │ │
│ │ max_jobs = None │ │
│ │ maxpendtime = None │ │
│ │ modulepurge = False │ │
│ │ modules = None │ │
│ │ name = None │ │
│ │ numnodes = None │ │
│ │ numprocs = None │ │
│ │ poll_interval = None │ │
│ │ profile = None │ │
│ │ rebuild = 51 │ │
│ │ remove_stagedir = False │ │
│ │ report_file = None │ │
│ │ rerun = False │ │
│ │ retry = 1 │ │
│ │ save_profile = None │ │
│ │ self = <buildtest.cli.build.BuildTest object at │ │
│ │ 0x7f00564e1f30> │ │
│ │ strict = False │ │
│ │ tags = None │ │
│ │ testdir = None │ │
│ │ timeout = None │ │
│ │ unload_modules = None │ │
│ │ validate = False │ │
│ │ verbose = False │ │
│ │ write_config_file = None │ │
│ ╰──────────────────────────────────────────────────────────────────────────╯ │
╰──────────────────────────────────────────────────────────────────────────────╯
BuildTestError: '--rebuild 51 exceeds maximum rebuild limit of 50'
Limit Number of Tests (buildtest build --limit
)
The buildtest build command can limit the number of tests that can run via --limit
option. This
can be useful when running large number of tests and you have no idea
how many tests will run. The --limit <NUM>
option expects a positive number which will
limit number of tests to the total limit. If there are less tests to run than the
value specified by --limit
, then buildtest will run all the test. When buildtest has more
tests to run than the value specified by --limit
, then buildtest will exclude some tests.
To demonstrate this feature, we will run the same command with and without –limit option.
In first example, we will run a test that will run 4 tests.
buildtest build -b tutorials/test_status/pass_returncode.yml
$ buildtest build -b tutorials/test_status/pass_returncode.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:16 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/pass_returncode.yml: VALID
Total builder objects created: 4
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ exit1_fa │ script │ generic. │ None │ None │ None │ exit 1 │ /home/d │
│ il/4eeab │ │ local.ba │ │ │ │ by │ ocs/che │
│ 452 │ │ sh │ │ │ │ default │ ckouts/ │
│ │ │ │ │ │ │ is FAIL │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ exit1_pa │ script │ generic. │ None │ None │ None │ report │ /home/d │
│ ss/0b2f9 │ │ local.ba │ │ │ │ exit 1 │ ocs/che │
│ 825 │ │ sh │ │ │ │ as PASS │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 2 │ /home/d │
│ de_list_ │ │ local.ba │ │ │ │ failed │ ocs/che │
│ mismatch │ │ sh │ │ │ │ since it │ ckouts/ │
│ /75d6b1a │ │ │ │ │ │ failed │ readthe │
│ 0 │ │ │ │ │ │ to match │ docs.or │
│ │ │ │ │ │ │ returnco │ g/user_ │
│ │ │ │ │ │ │ de 1 │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 128 │ /home/d │
│ de_int_m │ │ local.ba │ │ │ │ matches │ ocs/che │
│ atch/be1 │ │ sh │ │ │ │ returnco │ ckouts/ │
│ 7df60 │ │ │ │ │ │ de 128 │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
exit1_fail/4eeab452: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4eeab452
exit1_pass/0b2f9825: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0b2f9825
returncode_list_mismatch/75d6b1a0: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/75d6b1a0
returncode_int_match/be17df60: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/be17df60
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
returncode_list_mismatch/75d6b1a0 does not have any dependencies adding test to queue
exit1_fail/4eeab452 does not have any dependencies adding test to queue
returncode_int_match/be17df60 does not have any dependencies adding test to queue
exit1_pass/0b2f9825 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ returncode_list_mismatch/75d6b1a0 │
│ exit1_fail/4eeab452 │
│ returncode_int_match/be17df60 │
│ exit1_pass/0b2f9825 │
└───────────────────────────────────┘
returncode_list_mismatch/75d6b1a0: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/75d6b1a0/stage
returncode_list_mismatch/75d6b1a0: Running Test via command: bash returncode_list_mismatch_build.sh
returncode_list_mismatch/75d6b1a0: failed to submit job with returncode: 2
returncode_list_mismatch/75d6b1a0: Detected failure in running test, will attempt to retry test: 1 times
returncode_list_mismatch/75d6b1a0: Run - 1/1
returncode_list_mismatch/75d6b1a0: Running Test via command: bash returncode_list_mismatch_build.sh
returncode_list_mismatch/75d6b1a0: failed to submit job with returncode: 2
returncode_list_mismatch/75d6b1a0: Test completed in 0.009956 seconds with returncode: 2
returncode_list_mismatch/75d6b1a0: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/75d6b1a0/returncode_list_mismatch.out
returncode_list_mismatch/75d6b1a0: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_list_mismatch/75d6b1a0/returncode_list_mismatch.err
returncode_list_mismatch/75d6b1a0: Checking returncode - 2 is matched in list [1, 3]
exit1_fail/4eeab452: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4eeab452/stage
exit1_fail/4eeab452: Running Test via command: bash exit1_fail_build.sh
exit1_fail/4eeab452: failed to submit job with returncode: 1
exit1_fail/4eeab452: Detected failure in running test, will attempt to retry test: 1 times
exit1_fail/4eeab452: Run - 1/1
exit1_fail/4eeab452: Running Test via command: bash exit1_fail_build.sh
exit1_fail/4eeab452: failed to submit job with returncode: 1
exit1_fail/4eeab452: Test completed in 0.00918 seconds with returncode: 1
exit1_fail/4eeab452: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4eeab452/exit1_fail.out
exit1_fail/4eeab452: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/4eeab452/exit1_fail.err
returncode_int_match/be17df60: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/be17df60/stage
returncode_int_match/be17df60: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/be17df60: failed to submit job with returncode: 128
returncode_int_match/be17df60: Detected failure in running test, will attempt to retry test: 1 times
returncode_int_match/be17df60: Run - 1/1
returncode_int_match/be17df60: Running Test via command: bash returncode_int_match_build.sh
returncode_int_match/be17df60: failed to submit job with returncode: 128
returncode_int_match/be17df60: Test completed in 0.009637 seconds with returncode: 128
returncode_int_match/be17df60: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/be17df60/returncode_int_match.out
returncode_int_match/be17df60: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/returncode_int_match/be17df60/returncode_int_match.err
returncode_int_match/be17df60: Checking returncode - 128 is matched in list [128]
exit1_pass/0b2f9825: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0b2f9825/stage
exit1_pass/0b2f9825: Running Test via command: bash exit1_pass_build.sh
exit1_pass/0b2f9825: failed to submit job with returncode: 1
exit1_pass/0b2f9825: Detected failure in running test, will attempt to retry test: 1 times
exit1_pass/0b2f9825: Run - 1/1
exit1_pass/0b2f9825: Running Test via command: bash exit1_pass_build.sh
exit1_pass/0b2f9825: failed to submit job with returncode: 1
exit1_pass/0b2f9825: Test completed in 0.009256 seconds with returncode: 1
exit1_pass/0b2f9825: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0b2f9825/exit1_pass.out
exit1_pass/0b2f9825: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/0b2f9825/exit1_pass.err
exit1_pass/0b2f9825: Checking returncode - 1 is matched in list [1]
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ returncode_list_mismatc │ generic.local.bash │ FAIL │ 2 │ 0.010 │
│ h/75d6b1a0 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ exit1_pass/0b2f9825 │ generic.local.bash │ PASS │ 1 │ 0.009 │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ returncode_int_match/be │ generic.local.bash │ PASS │ 128 │ 0.010 │
│ 17df60 │ │ │ │ │
├─────────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ exit1_fail/4eeab452 │ generic.local.bash │ FAIL │ 1 │ 0.009 │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 2/4 Percentage: 50.000%
Failed Tests: 2/4 Percentage: 50.000%
Adding 4 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_xvrf2b1v.log
Now let’s run this same test with --limit=2
and notice buildtest will run 2/4 tests
buildtest build -b tutorials/test_status/pass_returncode.yml --limit=2
$ buildtest build -b tutorials/test_status/pass_returncode.yml --limit=2
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:17 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/test_status/pass_returncode.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/test_status/pass_returncode.yml: VALID
Total builder objects created: 4
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ exit1_fa │ script │ generic. │ None │ None │ None │ exit 1 │ /home/d │
│ il/0c10a │ │ local.ba │ │ │ │ by │ ocs/che │
│ efb │ │ sh │ │ │ │ default │ ckouts/ │
│ │ │ │ │ │ │ is FAIL │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ exit1_pa │ script │ generic. │ None │ None │ None │ report │ /home/d │
│ ss/b2738 │ │ local.ba │ │ │ │ exit 1 │ ocs/che │
│ 780 │ │ sh │ │ │ │ as PASS │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 2 │ /home/d │
│ de_list_ │ │ local.ba │ │ │ │ failed │ ocs/che │
│ mismatch │ │ sh │ │ │ │ since it │ ckouts/ │
│ /dab0e97 │ │ │ │ │ │ failed │ readthe │
│ a │ │ │ │ │ │ to match │ docs.or │
│ │ │ │ │ │ │ returnco │ g/user_ │
│ │ │ │ │ │ │ de 1 │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ returnco │ script │ generic. │ None │ None │ None │ exit 128 │ /home/d │
│ de_int_m │ │ local.ba │ │ │ │ matches │ ocs/che │
│ atch/968 │ │ sh │ │ │ │ returnco │ ckouts/ │
│ f77c1 │ │ │ │ │ │ de 128 │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/test_ │
│ │ │ │ │ │ │ │ status/ │
│ │ │ │ │ │ │ │ pass_re │
│ │ │ │ │ │ │ │ turncod │
│ │ │ │ │ │ │ │ e.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
Limit number of tests to 2 for Building and Running.
──────────────────────────────── Building Test ─────────────────────────────────
exit1_fail/0c10aefb: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/0c10aefb
exit1_pass/b2738780: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/b2738780
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
exit1_pass/b2738780 does not have any dependencies adding test to queue
exit1_fail/0c10aefb does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━┩
│ exit1_pass/b2738780 │
│ exit1_fail/0c10aefb │
└─────────────────────┘
exit1_pass/b2738780: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/b2738780/stage
exit1_pass/b2738780: Running Test via command: bash exit1_pass_build.sh
exit1_pass/b2738780: failed to submit job with returncode: 1
exit1_pass/b2738780: Detected failure in running test, will attempt to retry test: 1 times
exit1_pass/b2738780: Run - 1/1
exit1_pass/b2738780: Running Test via command: bash exit1_pass_build.sh
exit1_pass/b2738780: failed to submit job with returncode: 1
exit1_pass/b2738780: Test completed in 0.009462 seconds with returncode: 1
exit1_pass/b2738780: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/b2738780/exit1_pass.out
exit1_pass/b2738780: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_pass/b2738780/exit1_pass.err
exit1_pass/b2738780: Checking returncode - 1 is matched in list [1]
exit1_fail/0c10aefb: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/0c10aefb/stage
exit1_fail/0c10aefb: Running Test via command: bash exit1_fail_build.sh
exit1_fail/0c10aefb: failed to submit job with returncode: 1
exit1_fail/0c10aefb: Detected failure in running test, will attempt to retry test: 1 times
exit1_fail/0c10aefb: Run - 1/1
exit1_fail/0c10aefb: Running Test via command: bash exit1_fail_build.sh
exit1_fail/0c10aefb: failed to submit job with returncode: 1
exit1_fail/0c10aefb: Test completed in 0.008982 seconds with returncode: 1
exit1_fail/0c10aefb: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/0c10aefb/exit1_fail.out
exit1_fail/0c10aefb: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/pass_returncode/exit1_fail/0c10aefb/exit1_fail.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ exit1_fail/0c10aefb │ generic.local.bash │ FAIL │ 1 │ 0.009 │
├─────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ exit1_pass/b2738780 │ generic.local.bash │ PASS │ 1 │ 0.009 │
└─────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/2 Percentage: 50.000%
Failed Tests: 1/2 Percentage: 50.000%
Adding 2 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_ua8u3jcz.log
If you specify 0 or negative number you will get an error as follows
buildtest build -b tutorials/test_status/pass_returncode.yml --limit=0
$ buildtest build -b tutorials/test_status/pass_returncode.yml --limit=0
usage: buildtest [options] [COMMANDS] build [-h] [-b BUILDSPEC] [-x EXCLUDE]
[-n NAME] [-e EXECUTOR]
[-xt EXCLUDE_TAGS] [-t TAGS]
[--rerun] [-f FILTER]
[--helpfilter] [-et {local,batch}]
[--module-purge] [-m MODULES]
[-u UNLOAD_MODULES]
[--account ACCOUNT]
[--maxpendtime MAXPENDTIME]
[--pollinterval POLLINTERVAL]
[--procs PROCS [PROCS ...]]
[--nodes NODES [NODES ...]]
[--display {output,test}]
[--dry-run] [--limit LIMIT]
[--max-jobs MAX_JOBS]
[--profile PROFILE]
[--remove-stagedir]
[--rebuild REBUILD]
[--retry RETRY]
[--save-profile SAVE_PROFILE]
[--strict] [--testdir TESTDIR]
[--timeout TIMEOUT] [--validate]
[--write-config-file WRITE_CONFIG_FILE]
buildtest [options] [COMMANDS] build: error: argument --limit: Input: 0 converted to int: 0 must be a positive number
Rerun Last Command (buildtest build --rerun
)
The buildtest build --rerun
command can be used to rerun last successful buildtest build
command, this can be useful if you want to repeat a certain
build without having to remember the command or going through your command history to find the command you ran. When using this option all other options passed
to buildtest will be ignored. In order to use –rerun option you must run buildtest build
command such that buildtest can rerun your last successful
command.
Let’s start by building a simple test.
buildtest build -b tutorials/vars.yml
$ buildtest build -b tutorials/vars.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:18 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/6 │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 34fb6b3 │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/634fb6b3: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/634fb6b3
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
variables_bash/634fb6b3 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/634fb6b3 │
└─────────────────────────┘
variables_bash/634fb6b3: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/634fb6b3/stage
variables_bash/634fb6b3: Running Test via command: bash variables_bash_build.sh
variables_bash/634fb6b3: Test completed in 0.007851 seconds with returncode: 0
variables_bash/634fb6b3: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/634fb6b3/variables_bash.out
variables_bash/634fb6b3: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/634fb6b3/variables_bash.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ variables_bash/634fb6b3 │ generic.local.bash │ PASS │ 0 │ 0.008 │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_vkxzhdep.log
Next let’s rerun the same command via buildtest build --rerun
and take note that it will rerun same command as before
buildtest build --rerun
$ buildtest build --rerun
Reading content of rerun file /tmp/tmpy0414mby/var/rerun.json all other options will be ignored.
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:19 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/e │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 851096d │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/e851096d: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/e851096d
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
variables_bash/e851096d does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/e851096d │
└─────────────────────────┘
variables_bash/e851096d: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/e851096d/stage
variables_bash/e851096d: Running Test via command: bash variables_bash_build.sh
variables_bash/e851096d: Test completed in 0.007536 seconds with returncode: 0
variables_bash/e851096d: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/e851096d/variables_bash.out
variables_bash/e851096d: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/e851096d/variables_bash.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ variables_bash/e851096d │ generic.local.bash │ PASS │ 0 │ 0.008 │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest__r539g23.log
If you pass additional options with --rerun
it will simply be ignored. In this case -t python --dry-run
will not be read by buildtest instead we will
rerun same command.
buildtest build --rerun -t python --dry-run
$ buildtest build --rerun -t python --dry-run
Reading content of rerun file /tmp/tmpy0414mby/var/rerun.json all other options will be ignored.
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:20 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/f │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 9fe149c │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/f9fe149c: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/f9fe149c
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
variables_bash/f9fe149c does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/f9fe149c │
└─────────────────────────┘
variables_bash/f9fe149c: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/f9fe149c/stage
variables_bash/f9fe149c: Running Test via command: bash variables_bash_build.sh
variables_bash/f9fe149c: Test completed in 0.007831 seconds with returncode: 0
variables_bash/f9fe149c: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/f9fe149c/variables_bash.out
variables_bash/f9fe149c: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/f9fe149c/variables_bash.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ variables_bash/f9fe149c │ generic.local.bash │ PASS │ 0 │ 0.008 │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_zegblytz.log
Note
The buildtest clean
will erase all history of builds and if you run buildtest build --rerun
will raise an exception
Specify Modules in command line
If your system supports modules
such as environment-modules or Lmod you can specify a list
of modules to load (module load
) in the test via buildtest build --modules
. You can specify
a comma separated list of modules to load, for example if you want to load gcc and python module in
your test you can run buildtest build --modules gcc,python
. You may specify full name of module with
version for instance you want test to load gcc/9.3.0 and python/3.7 you can run buildtest build --modules gcc/9.3.0,python/3.7
.
If you want test to run module purge
before running test you can specify buildtest build --module-purge
option. If you specify
--module-purge
and --modules
then module purge
will be run prior to loading any modules.
Similarly, you can unload modules before running any test via buildtest build --unload-modules
which is a list of modules to run
module unload
command and works similar to --modules
option. Buildtest will unload modules before loading modules if both –modules and
–unload-modules are specified. If –module-purge is also specified then we run module purge first before loading/unloading any modules.
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?.
Removing Stage Directory
buildtest will write the tests in stage directory where test will be executed, typically buildtest will keep the
stage directory but if you want to remove the directory you can use buildtest build --remove-stagedir
.
Specify Project Account for batch jobs (buildtest build --account
)
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
Test Timeout (buildtest build --timeout
)
Buildtest can terminate test based on timeout value specified via --timeout
option which can be used to terminate
long running test. The timeout is in seconds and value must be a positive integer which is applied to all
test that are run via buildtest build
command. If test exceeds the timeout value, then process will be terminated.
To demonstrate this behavior, we will run the following test with a timeout of 1 sec which is expected to fail. Take note of the test returncode of test.
buildtest build -b tutorials/sleep.yml --timeout 1
$ buildtest build -b tutorials/sleep.yml --timeout 1
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:20 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/sleep.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/sleep.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ sleep/77 │ script │ generic. │ None │ None │ None │ sleep 2 │ /home/d │
│ 617eea │ │ local.ba │ │ │ │ seconds │ ocs/che │
│ │ │ sh │ │ │ │ │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/sleep │
│ │ │ │ │ │ │ │ .yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
sleep/77617eea: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/77617eea
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
sleep/77617eea does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━┩
│ sleep/77617eea │
└────────────────┘
sleep/77617eea: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/77617eea/stage
sleep/77617eea: Running Test via command: bash sleep_build.sh
sleep/77617eea: failed to submit job with returncode: -9
sleep/77617eea: Detected failure in running test, will attempt to retry test: 1 times
sleep/77617eea: Run - 1/1
sleep/77617eea: Running Test via command: bash sleep_build.sh
sleep/77617eea: failed to submit job with returncode: -9
sleep/77617eea: Test completed in 2.005522 seconds with returncode: -9
sleep/77617eea: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/77617eea/sleep.out
sleep/77617eea: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/77617eea/sleep.err
Test Summary
┏━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ sleep/77617eea │ generic.local.bash │ FAIL │ -9 │ 2.006 │
└────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 0/1 Percentage: 0.000%
Failed Tests: 1/1 Percentage: 100.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_3_5jnbmz.log
Now if we run this test with a higher timeout value we will see this test will pass, if no timeout is specified then test will run until completion.
buildtest build -b tutorials/sleep.yml --timeout 10
$ buildtest build -b tutorials/sleep.yml --timeout 10
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:23 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/sleep.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/sleep.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ sleep/21 │ script │ generic. │ None │ None │ None │ sleep 2 │ /home/d │
│ 903771 │ │ local.ba │ │ │ │ seconds │ ocs/che │
│ │ │ sh │ │ │ │ │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/sleep │
│ │ │ │ │ │ │ │ .yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
sleep/21903771: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/21903771
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
sleep/21903771 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━┩
│ sleep/21903771 │
└────────────────┘
sleep/21903771: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/21903771/stage
sleep/21903771: Running Test via command: bash sleep_build.sh
sleep/21903771: Test completed in 2.018543 seconds with returncode: 0
sleep/21903771: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/21903771/sleep.out
sleep/21903771: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/sleep/sleep/21903771/sleep.err
Test Summary
┏━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ sleep/21903771 │ generic.local.bash │ PASS │ 0 │ 2.019 │
└────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_4228xe9_.log
Using Profiles (buildtest build --profile
)
Buildtest has a concept of profiles, which allows one to run a set of buildtest build
options without having to remember
all the options. This can be useful if you are running a set of tests repeatedly. In-order to use profiles you must first,
create a profile by using --save-profile
.
For example, let’s create a profile called python-tests for all tests with tag python
buildtest build -t python --save-profile=python-tests
$ buildtest build -t python --save-profile=python-tests
Saved profile python-tests to configuration file /tmp/tmpy0414mby/config.yml
Next, let’s see our configuration file, you will notice a new section called profiles
with a profile called python-tests
buildtest configuration with profile
$ buildtest config view
───────────────────────── /tmp/tmpy0414mby/config.yml ──────────────────────────
1 system:
2 generic:
3 # specify a list of hostnames that is a regular expression where buildtest can run.
4 hostnames: ['.*']
5 # system description
6 description: Generic System
7 # specify module system to use. Supported module systems are [lmod, environment-modules, none]
8 moduletool: none
9
10 # specify size of job pool (https://docs.python.org/3/library/multiprocessing.html#multiprocessing.pool.Pool). This will configure the number of processes that can run in parallel.
11 # If not specified then buildtest will use all available cores on the system.
12 poolsize: 1
13
14 # maximum number of jobs that can run in parallel. If not specified, buildtest will run all jobs in parallel.
15 #max_jobs: 1
16
17 # test timeout in number of seconds
18 # timeout: 3600
19
20 # enable pagination for buildtest
21 pager: false
22
23 # options for buildtest buildspec find command
24 buildspecs:
25 # determine whether to rebuild buildspec cache
26 rebuild: false
27 # determine number of records to display
28 count: 15
29
30 # specify format fields
31 #format: name,description
32
33 # display output in terse mode
34 terse: false
35
36 # list of paths to search for buildspecs where it can be file or directory
37 # search: ["$BUILDTEST_ROOT/tutorials/containers", "$BUILDTEST_ROOT/examples", "demo.yml"]
38
39 # options for buildtest report command
40 report:
41 # number of records to display
42 count: 25
43
44 # specify format fields
45 format: name,id,state,runtime,returncode
46
47 # specify directory paths to search for binaries
48 #paths:
49 # directory path to search for slurm binaries.
50 #slurm: "/usr/bin"
51
52 # directory path to search for lsf binaries.
53 #lsf: "/usr/bin"
54
55 # directory path to search for pbs binaries.
56 #pbs: "/usr/bin"
57
58 # directory path to search for torque binaries.
59 #torque: "/usr/bin"
60
61 # path to docker directory
62 #docker: "/usr/local/bin"
63
64 # path to singularity directory
65 #singularity: "/usr/local/bin"
66
67 # path to podman directory
68 #podman: "/usr/local/bin"
69
70 # start of executor configuration
71 executors:
72 # local executor is used to submit jobs on local machine. In this example we have 4 executors: bash, sh, csh, zsh that will submit jobs using bash, sh, csh, zsh shell respectively.
73 local:
74 bash:
75 description: submit jobs on local machine using bash shell
76 shell: bash
77 sh:
78 description: submit jobs on local machine using sh shell
79 shell: sh
80 csh:
81 description: submit jobs on local machine using csh shell
82 shell: csh
83 zsh:
84 description: submit jobs on local machine using zsh shell
85 shell: zsh
86 # specify compiler declaration
87 compilers:
88 compiler:
89 # declaration of all gcc compilers
90 gcc:
91 # name of compiler
92 builtin_gcc:
93 cc: gcc
94 fc: gfortran
95 cxx: g++
96 # specify CDASH configuration when using 'buildtest cdash upload'
97 cdash:
98 # CDASH server
99 url: https://my.cdash.org/
100 # name of CDASH project where to push test reports
101 project: buildtest
102 # specify the site name which should generally by name of your HPC system. This is used by CDASH to group test results by site
103 site: generic
104 # specify the build name which is used to group test results by build name
105 buildname: tutorials
106
Next, let’s build the tests via newly created profile and take note that it will run all tests with tag python
buildtest build --profile=python-tests
$ buildtest build --profile=python-tests
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:26 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Buildspecs By Tag=python
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-shell.yml ║
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/python-hello.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 2 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 2
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 2
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 2
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-shell.yml: VALID
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/python-hello.yml: VALID
Total builder objects created: 2
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ circle_a │ script │ generic. │ None │ None │ None │ Calculat │ /home/d │
│ rea/6ac1 │ │ local.ba │ │ │ │ e circle │ ocs/che │
│ 98e6 │ │ sh │ │ │ │ of area │ ckouts/ │
│ │ │ │ │ │ │ given a │ readthe │
│ │ │ │ │ │ │ radius │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/pytho │
│ │ │ │ │ │ │ │ n-shell │
│ │ │ │ │ │ │ │ .yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ python_h │ script │ generic. │ None │ None │ None │ Hello │ /home/d │
│ ello/ef6 │ │ local.ba │ │ │ │ World │ ocs/che │
│ 91f7b │ │ sh │ │ │ │ python │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/pytho │
│ │ │ │ │ │ │ │ n-hello │
│ │ │ │ │ │ │ │ .yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
circle_area/6ac198e6: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/6ac198e6
python_hello/ef691f7b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/ef691f7b
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
circle_area/6ac198e6 does not have any dependencies adding test to queue
python_hello/ef691f7b does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━┩
│ circle_area/6ac198e6 │
│ python_hello/ef691f7b │
└───────────────────────┘
circle_area/6ac198e6: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/6ac198e6/stage
circle_area/6ac198e6: Running Test via command: bash circle_area_build.sh
circle_area/6ac198e6: Test completed in 0.027708 seconds with returncode: 0
circle_area/6ac198e6: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/6ac198e6/circle_area.out
circle_area/6ac198e6: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-shell/circle_area/6ac198e6/circle_area.err
python_hello/ef691f7b: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/ef691f7b/stage
python_hello/ef691f7b: Running Test via command: bash python_hello_build.sh
python_hello/ef691f7b: Test completed in 0.027359 seconds with returncode: 0
python_hello/ef691f7b: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/ef691f7b/python_hello.out
python_hello/ef691f7b: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/python-hello/python_hello/ef691f7b/python_hello.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ circle_area/6ac198e6 │ generic.local.bash │ PASS │ 0 │ 0.028 │
├───────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ python_hello/ef691f7b │ generic.local.bash │ PASS │ 0 │ 0.027 │
└───────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 2/2 Percentage: 100.000%
Failed Tests: 0/2 Percentage: 0.000%
Adding 2 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_zvgmxvwu.log
You can also specify an alternate location to write configuration file via --write-config-file
when saving profile configuration.
This can be useful if one wants to use a new configuration file without overwriting the current file for testing purposes.
To demonstrate this, we will save the profile to configuration file /tmp/my_config.yml
buildtest build -t python --save-profile=python --write-config-file=/tmp/my_config.yml
$ buildtest build -t python --save-profile=python --write-config-file=/tmp/my_config.yml
Saved profile python to configuration file /tmp/my_config.yml
We can view the profile configuration file by specifying the path to the configuration file.
$ buildtest --config /tmp/my_config.yml config view
────────────────────────────── /tmp/my_config.yml ──────────────────────────────
1 system:
2 generic:
3 hostnames:
4 - .*
5 description: Generic System
6 moduletool: none
7 poolsize: 1
8 pager: false
9 buildspecs:
10 rebuild: false
11 count: 15
12 terse: false
13 report:
14 count: 25
15 format: name,id,state,runtime,returncode
16 executors:
17 local:
18 bash:
19 description: submit jobs on local machine using bash shell
20 shell: bash
21 sh:
22 description: submit jobs on local machine using sh shell
23 shell: sh
24 csh:
25 description: submit jobs on local machine using csh shell
26 shell: csh
27 compilers:
28 compiler:
29 gcc:
30 builtin_gcc:
31 cc: gcc
32 fc: gfortran
33 cxx: g++
34 cdash:
35 url: https://my.cdash.org/
36 project: buildtest
37 site: generic
38 buildname: tutorials
39 profiles:
40 python:
41 tags:
42 - python
43 validate: false
44 dry-run: false
45 testdir: /tmp/tmpy0414mby/var/tests
46 remove-stagedir: false
47 strict: false
48 prof1:
49 tags:
50 - python
51 validate: false
52 dry-run: false
53 testdir: /tmp/tmpy0414mby/var/tests
54 remove-stagedir: false
55 strict: false
56 prof2:
57 buildspecs:
58 - /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/shell_examples.yml
59 validate: false
60 dry-run: false
61 testdir: /tmp/tmpy0414mby/var/tests
62 remove-stagedir: false
63 strict: false
64 python-tests:
65 tags:
66 - python
67 validate: false
68 dry-run: false
69 testdir: /tmp/tmpy0414mby/var/tests
70 remove-stagedir: false
71 strict: false
72
Please note that when using -write-config-file
, the path must be a file path and file must not exist. If you specify
a directory path or file already exists you will get an error message.
Limit Maximum Jobs that can run concurrently (buildtest build --max-jobs
)
Buildtest can cap a limit on number of tests that can run concurrently. This can be set in configuration file via max_jobs
field or overridden on command line option via --max-jobs
. By default, buildtest will run all jobs concurrently, however with
--max-jobs
, buildtest will limit number of concurrent jobs specified by --max-jobs
.
Let’s limit the number of concurrent jobs to 2 tests, take note that buildtest will run 2 tests per iteration, and wait until test is completed and then proceed to next test.
buildtest build -b tutorials/hello_world.yml --rebuild=5 --max-jobs=2
$ buildtest build -b tutorials/hello_world.yml --rebuild=5 --max-jobs=2
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:28 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/hello_world.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/hello_world.yml: VALID
Total builder objects created: 5
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/d │
│ rld/0ef3 │ │ local.ba │ │ │ │ world │ ocs/che │
│ 0991 │ │ sh │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/hello │
│ │ │ │ │ │ │ │ _world. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/d │
│ rld/6b80 │ │ local.ba │ │ │ │ world │ ocs/che │
│ 589a │ │ sh │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/hello │
│ │ │ │ │ │ │ │ _world. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/d │
│ rld/d7ea │ │ local.ba │ │ │ │ world │ ocs/che │
│ 9f3e │ │ sh │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/hello │
│ │ │ │ │ │ │ │ _world. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/d │
│ rld/0b44 │ │ local.ba │ │ │ │ world │ ocs/che │
│ cdf3 │ │ sh │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/hello │
│ │ │ │ │ │ │ │ _world. │
│ │ │ │ │ │ │ │ yml │
├──────────┼────────┼──────────┼──────────┼───────┼───────┼──────────┼─────────┤
│ hello_wo │ script │ generic. │ None │ None │ None │ hello │ /home/d │
│ rld/fb29 │ │ local.ba │ │ │ │ world │ ocs/che │
│ 319b │ │ sh │ │ │ │ example │ ckouts/ │
│ │ │ │ │ │ │ │ readthe │
│ │ │ │ │ │ │ │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/hello │
│ │ │ │ │ │ │ │ _world. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
hello_world/0ef30991: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0ef30991
hello_world/6b80589a: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/6b80589a
hello_world/d7ea9f3e: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/d7ea9f3e
hello_world/0b44cdf3: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0b44cdf3
hello_world/fb29319b: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/fb29319b
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
hello_world/d7ea9f3e does not have any dependencies adding test to queue
hello_world/fb29319b does not have any dependencies adding test to queue
hello_world/6b80589a does not have any dependencies adding test to queue
hello_world/0b44cdf3 does not have any dependencies adding test to queue
hello_world/0ef30991 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━┩
│ hello_world/d7ea9f3e │
│ hello_world/fb29319b │
└──────────────────────┘
hello_world/d7ea9f3e: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/d7ea9f3e/stage
hello_world/d7ea9f3e: Running Test via command: bash hello_world_build.sh
hello_world/d7ea9f3e: Test completed in 0.004274 seconds with returncode: 0
hello_world/d7ea9f3e: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/d7ea9f3e/hello_world.out
hello_world/d7ea9f3e: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/d7ea9f3e/hello_world.err
hello_world/fb29319b: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/fb29319b/stage
hello_world/fb29319b: Running Test via command: bash hello_world_build.sh
hello_world/fb29319b: Test completed in 0.003999 seconds with returncode: 0
hello_world/fb29319b: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/fb29319b/hello_world.out
hello_world/fb29319b: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/fb29319b/hello_world.err
───────────────────────────────── Iteration 2 ──────────────────────────────────
hello_world/6b80589a does not have any dependencies adding test to queue
hello_world/0b44cdf3 does not have any dependencies adding test to queue
hello_world/0ef30991 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━┩
│ hello_world/0b44cdf3 │
│ hello_world/6b80589a │
└──────────────────────┘
hello_world/0b44cdf3: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0b44cdf3/stage
hello_world/0b44cdf3: Running Test via command: bash hello_world_build.sh
hello_world/0b44cdf3: Test completed in 0.004352 seconds with returncode: 0
hello_world/0b44cdf3: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0b44cdf3/hello_world.out
hello_world/0b44cdf3: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0b44cdf3/hello_world.err
hello_world/6b80589a: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/6b80589a/stage
hello_world/6b80589a: Running Test via command: bash hello_world_build.sh
hello_world/6b80589a: Test completed in 0.004249 seconds with returncode: 0
hello_world/6b80589a: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/6b80589a/hello_world.out
hello_world/6b80589a: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/6b80589a/hello_world.err
───────────────────────────────── Iteration 3 ──────────────────────────────────
hello_world/0ef30991 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━┩
│ hello_world/0ef30991 │
└──────────────────────┘
hello_world/0ef30991: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0ef30991/stage
hello_world/0ef30991: Running Test via command: bash hello_world_build.sh
hello_world/0ef30991: Test completed in 0.004301 seconds with returncode: 0
hello_world/0ef30991: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0ef30991/hello_world.out
hello_world/0ef30991: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/hello_world/hello_world/0ef30991/hello_world.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ hello_world/6b80589a │ generic.local.bash │ PASS │ 0 │ 0.004 │
├──────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ hello_world/d7ea9f3e │ generic.local.bash │ PASS │ 0 │ 0.004 │
├──────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ hello_world/fb29319b │ generic.local.bash │ PASS │ 0 │ 0.004 │
├──────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ hello_world/0b44cdf3 │ generic.local.bash │ PASS │ 0 │ 0.004 │
├──────────────────────┼────────────────────┼────────┼────────────┼─────────┤
│ hello_world/0ef30991 │ generic.local.bash │ PASS │ 0 │ 0.004 │
└──────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 5/5 Percentage: 100.000%
Failed Tests: 0/5 Percentage: 0.000%
Adding 5 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_o4sm1mmz.log
Strict Mode (buildtest build --strict
)
Buildtest has an option to enable strict mode for test execution which can be enabled via --strict
option. If this
is set, buildtest will instead set -eo pipefail
in the generated test which will cause test to exit immediately if any
commands fail. To demonstrate this we have the following buildspec, which runs an ls command for an invalid path followed by
an echo command.
buildspecs:
linux_strict_test:
type: script
executor: generic.local.bash
description: "This example test will show how returncode will change when using --strict flag"
run: |
echo "This is a test"
ls -l /BAD_PATH
echo "This is another test"
If we were to run this test without strict mode, we see the test will pass.
buildtest build -b tutorials/strict_example.yml
$ buildtest build -b tutorials/strict_example.yml
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:29 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/strict_example.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/strict_example.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ linux_st │ script │ generic. │ None │ None │ None │ This │ /home/d │
│ rict_tes │ │ local.ba │ │ │ │ example │ ocs/che │
│ t/4a1d94 │ │ sh │ │ │ │ test │ ckouts/ │
│ c1 │ │ │ │ │ │ will │ readthe │
│ │ │ │ │ │ │ show how │ docs.or │
│ │ │ │ │ │ │ returnco │ g/user_ │
│ │ │ │ │ │ │ de will │ builds/ │
│ │ │ │ │ │ │ change │ buildte │
│ │ │ │ │ │ │ when │ st/chec │
│ │ │ │ │ │ │ using │ kouts/l │
│ │ │ │ │ │ │ --strict │ atest/t │
│ │ │ │ │ │ │ flag │ utorial │
│ │ │ │ │ │ │ │ s/stric │
│ │ │ │ │ │ │ │ t_examp │
│ │ │ │ │ │ │ │ le.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
linux_strict_test/4a1d94c1: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/4a1d94c1
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
linux_strict_test/4a1d94c1 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ linux_strict_test/4a1d94c1 │
└────────────────────────────┘
linux_strict_test/4a1d94c1: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/4a1d94c1/stage
linux_strict_test/4a1d94c1: Running Test via command: bash linux_strict_test_build.sh
linux_strict_test/4a1d94c1: Test completed in 0.006107 seconds with returncode: 0
linux_strict_test/4a1d94c1: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/4a1d94c1/linux_strict_test.out
linux_strict_test/4a1d94c1: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/4a1d94c1/linux_strict_test.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ linux_strict_test/4a1d9 │ generic.local.bash │ PASS │ 0 │ 0.006 │
│ 4c1 │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_br1b1j32.log
Now let’s run the same test with strict mode enabled, we will see the test will fail with a different return code.
buildtest build -b tutorials/strict_example.yml --strict
$ buildtest build -b tutorials/strict_example.yml --strict
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:30 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/strict_example.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/strict_example.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ linux_st │ script │ generic. │ None │ None │ None │ This │ /home/d │
│ rict_tes │ │ local.ba │ │ │ │ example │ ocs/che │
│ t/7526fd │ │ sh │ │ │ │ test │ ckouts/ │
│ 69 │ │ │ │ │ │ will │ readthe │
│ │ │ │ │ │ │ show how │ docs.or │
│ │ │ │ │ │ │ returnco │ g/user_ │
│ │ │ │ │ │ │ de will │ builds/ │
│ │ │ │ │ │ │ change │ buildte │
│ │ │ │ │ │ │ when │ st/chec │
│ │ │ │ │ │ │ using │ kouts/l │
│ │ │ │ │ │ │ --strict │ atest/t │
│ │ │ │ │ │ │ flag │ utorial │
│ │ │ │ │ │ │ │ s/stric │
│ │ │ │ │ │ │ │ t_examp │
│ │ │ │ │ │ │ │ le.yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
linux_strict_test/7526fd69: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
linux_strict_test/7526fd69 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ linux_strict_test/7526fd69 │
└────────────────────────────┘
linux_strict_test/7526fd69: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69/stage
linux_strict_test/7526fd69: Running Test via command: bash linux_strict_test_build.sh
linux_strict_test/7526fd69: failed to submit job with returncode: 2
linux_strict_test/7526fd69: Detected failure in running test, will attempt to retry test: 1 times
linux_strict_test/7526fd69: Run - 1/1
linux_strict_test/7526fd69: Running Test via command: bash linux_strict_test_build.sh
linux_strict_test/7526fd69: failed to submit job with returncode: 2
linux_strict_test/7526fd69: Test completed in 0.012993 seconds with returncode: 2
linux_strict_test/7526fd69: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69/linux_strict_test.out
linux_strict_test/7526fd69: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69/linux_strict_test.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ linux_strict_test/7526f │ generic.local.bash │ FAIL │ 2 │ 0.013 │
│ d69 │ │ │ │ │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 0/1 Percentage: 0.000%
Failed Tests: 1/1 Percentage: 100.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_o9fcz9j9.log
We can see the generated test using buildtest inspect query -t and we will see the test script has set -eo pipefail in the generated test.
$ buildtest inspect query -t linux_strict_test
──────────── linux_strict_test/7526fd69-2486-4703-b9d7-19eaa3ea4cfe ────────────
Executor: generic.local.bash
Description: This example test will show how returncode will change when using --strict flag
State: FAIL
Returncode: 2
Runtime: 0.012993 sec
Starttime: 2024/11/08 18:04:30
Endtime: 2024/11/08 18:04:30
Command: bash linux_strict_test_build.sh
Test Script: /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69/stage/linux_strict_test.sh
Build Script: /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69/linux_strict_test_build.sh
Output File: /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69/linux_strict_test.out
Error File: /tmp/tmpy0414mby/var/tests/generic.local.bash/strict_example/linux_strict_test/7526fd69/linux_strict_test.err
Log File: /tmp/tmpy0414mby/var/logs/buildtest_o9fcz9j9.log
─ Buildspec File: /home/docs/checkouts/readthedocs.org/user_builds/buildtest/… ─
buildspecs:
linux_strict_test:
type: script
executor: generic.local.bash
description: "This example test will show how returncode will change when us
run: |
echo "This is a test"
ls -l /BAD_PATH
echo "This is another test"
────────────────────────────────────────────────────────────────────────────────
────────────────────────────────── Test File ──────────────────────────────────
#!/usr/bin/bash
set -eo pipefail
# Content of run section
echo "This is a test"
ls -l /BAD_PATH
echo "This is another test"
────────────────────────────────────────────────────────────────────────────────
Display Mode (buildtest build --display
)
Buildtest can display output of test content and stream outout and error file to console. This can be useful if you want to see how the test is generated for debugging purposes.
In order to use this functionality, you can specify the --display
option which takes either output
or test
.
When output
is specified, buildtest will display output and error files to console. When test
is specified, buildtest will display the content of the test and build script. You can append the --display
option
if you want to specify both options. Shown below we run a test and display both output and test.
buildtest build -b tutorials/vars.yml --display output --display test
$ buildtest build -b tutorials/vars.yml --display output --display test
╭───────────────────────────── buildtest summary ──────────────────────────────╮
│ │
│ User: docs │
│ Hostname: build-26220537-project-280831-buildtest │
│ Platform: Linux │
│ Current Time: 2024/11/08 18:04:31 │
│ buildtest path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ buildtest version: 2.1 │
│ python path: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ python version: 3.10.14 │
│ Configuration File: /tmp/tmpy0414mby/config.yml │
│ Test Directory: /tmp/tmpy0414mby/var/tests │
│ Report File: /tmp/tmpy0414mby/var/report.json │
│ Command: /home/docs/checkouts/readthedocs.org/user_builds/buildte │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
─────────────────────────── Discovering Buildspecs ────────────────────────────
Discovered buildspecs
╔══════════════════════════════════════════════════════════════════════════════╗
║ buildspec ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ /home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/ ║
║ tutorials/vars.yml ║
╟──────────────────────────────────────────────────────────────────────────────╢
║ Total: 1 ║
╚══════════════════════════════════════════════════════════════════════════════╝
Total Discovered Buildspecs: 1
Total Excluded Buildspecs: 0
Detected Buildspecs after exclusion: 1
────────────────────────────── Parsing Buildspecs ──────────────────────────────
Valid Buildspecs: 1
Invalid Buildspecs: 0
/home/docs/checkouts/readthedocs.org/user_builds/buildtest/checkouts/latest/tutorials/vars.yml: VALID
Total builder objects created: 1
Builders by type=script
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━┳━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ descript ┃ buildsp ┃
┃ builder ┃ type ┃ executor ┃ compiler ┃ nodes ┃ procs ┃ ion ┃ ecs ┃
┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━╇━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━┩
│ variable │ script │ generic. │ None │ None │ None │ Declare │ /home/d │
│ s_bash/4 │ │ local.ba │ │ │ │ shell │ ocs/che │
│ 757e695 │ │ sh │ │ │ │ variable │ ckouts/ │
│ │ │ │ │ │ │ s in │ readthe │
│ │ │ │ │ │ │ bash │ docs.or │
│ │ │ │ │ │ │ │ g/user_ │
│ │ │ │ │ │ │ │ builds/ │
│ │ │ │ │ │ │ │ buildte │
│ │ │ │ │ │ │ │ st/chec │
│ │ │ │ │ │ │ │ kouts/l │
│ │ │ │ │ │ │ │ atest/t │
│ │ │ │ │ │ │ │ utorial │
│ │ │ │ │ │ │ │ s/vars. │
│ │ │ │ │ │ │ │ yml │
└──────────┴────────┴──────────┴──────────┴───────┴───────┴──────────┴─────────┘
──────────────────────────────── Building Test ─────────────────────────────────
variables_bash/4757e695: Creating Test Directory: /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/4757e695
──────────────── variables_bash/4757e695: Start of Build Script ────────────────
#!/bin/bash
# Function to handle all signals and perform cleanup
function cleanup() {
echo "Signal trapped. Performing cleanup before exiting."
exitcode=$?
echo "buildtest: command '$BASH_COMMAND' failed (exit code: $exitcode)"
exit $exitcode
}
# Trap all signals and call the cleanup function
trap cleanup SIGINT SIGTERM SIGHUP SIGQUIT SIGABRT SIGKILL SIGALRM SIGPIPE SIGTE
export BUILDTEST_TEST_NAME=variables_bash
export BUILDTEST_TEST_ROOT=/tmp/tmpy0414mby/var/tests/generic.local.bash/vars/va
export BUILDTEST_BUILDSPEC_DIR=/home/docs/checkouts/readthedocs.org/user_builds/
export BUILDTEST_STAGE_DIR=/tmp/tmpy0414mby/var/tests/generic.local.bash/vars/va
source /tmp/tmpy0414mby/var/executor/generic.local.bash/before_script.sh
# Run generated script
bash /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/4757e695
# Get return code
returncode=$?
# Exit with return code
exit $returncode
────────────────────────────────────────────────────────────────────────────────
──────────────── variables_bash/4757e695: Start of Test Script ─────────────────
#!/usr/bin/bash
X="1"
Y="2"
literalstring="this is a literal string"
singlequote="\'singlequote\'"
doublequote="\"doublequote\""
current_user="$(whoami)"
num_files="`find $HOME -type f -maxdepth 1 | wc -l`"
multiline_string="Hello my name is Bob \n
I am 30 years old
"
# Content of run section
echo "$X+$Y="$(($X+$Y))
echo $literalstring
echo $singlequote
echo $doublequote
echo "current user:" $current_user
echo "number of files:" $num_files
echo -e $multiline_string
────────────────────────────────────────────────────────────────────────────────
──────────────────────────────── Running Tests ─────────────────────────────────
Spawning 1 processes for processing builders
───────────────────────────────── Iteration 1 ──────────────────────────────────
variables_bash/4757e695 does not have any dependencies adding test to queue
Builders Eligible to Run
┏━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Builder ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ variables_bash/4757e695 │
└─────────────────────────┘
variables_bash/4757e695: Current Working Directory : /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/4757e695/stage
variables_bash/4757e695: Running Test via command: bash variables_bash_build.sh
─────────────────── variables_bash/4757e695: Start of Output ───────────────────
1+2=3
this is a literal string
\'singlequote\'
"doublequote"
current user: docs
number of files: 4
Hello my name is Bob
I am 30 years old
────────────────────────────────────────────────────────────────────────────────
variables_bash/4757e695: Test completed in 0.010891 seconds with returncode: 0
variables_bash/4757e695: Writing output file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/4757e695/variables_bash.out
variables_bash/4757e695: Writing error file - /tmp/tmpy0414mby/var/tests/generic.local.bash/vars/variables_bash/4757e695/variables_bash.err
Test Summary
┏━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━┓
┃ builder ┃ executor ┃ status ┃ returncode ┃ runtime ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━┩
│ variables_bash/4757e695 │ generic.local.bash │ PASS │ 0 │ 0.011 │
└─────────────────────────┴────────────────────┴────────┴────────────┴─────────┘
Passed Tests: 1/1 Percentage: 100.000%
Failed Tests: 0/1 Percentage: 0.000%
Adding 1 test results to report file: /tmp/tmpy0414mby/var/report.json
Writing Logfile to /tmp/tmpy0414mby/var/logs/buildtest_hyp89q44.log