1DUNE-RUNTEST(1)                   Dune Manual                  DUNE-RUNTEST(1)
2
3
4

NAME

6       dune-runtest - Run tests.
7

SYNOPSIS

9       dune runtest [OPTION]... [DIR]...
10

DESCRIPTION

12       This is a short-hand for calling:
13
14         dune build @runtest
15

OPTIONS

17       --build-info
18           Show build information.
19
20       -f, --force
21           Force actions associated to aliases to be re-executed even if their
22           dependencies haven't changed.
23
24       --help[=FMT] (default=auto)
25           Show this help in format FMT. The value FMT must be one of `auto',
26           `pager', `groff' or `plain'. With `auto', the format is `pager` or
27           `plain' whenever the TERM env var is `dumb' or undefined.
28
29       --sandbox=VAL (absent DUNE_SANDBOX env)
30           Sandboxing mode to use by default. Some actions require a certain
31           sandboxing mode, so they will ignore this setting. The allowed
32           values are: none, symlink, copy.
33
34       --version
35           Show version information.
36
37       -w, --watch
38           Instead of terminating build after completion, wait continuously
39           for file changes.
40

COMMON OPTIONS

42       These options are common to all commands.
43
44       --always-show-command-line
45           Always show the full command lines of programs executed by dune
46
47       --auto-promote
48           Automatically promote files. This is similar to running dune
49           promote after the build.
50
51       --build-dir=FILE (absent DUNE_BUILD_DIR env)
52           Specified build directory. _build if unspecified
53
54       --cache=VAL (absent DUNE_CACHE env)
55           Activate binary cache (either `disabled' or `enabled'). Default is
56           `disabled'.
57
58       --cache-check-probability=VAL (absent=0. or
59       DUNE_CACHE_CHECK_PROBABILITY env)
60           Probability cached rules are rerun to check for reproducibility
61
62       --cache-duplication=VAL (absent DUNE_CACHE_DUPLICATION env)
63           Binary cache duplication mode
64
65       --cache-transport=VAL (absent DUNE_CACHE_TRANSPORT env)
66           Binary cache protocol
67
68       --config-file=FILE
69           Load this configuration file instead of the default one.
70
71       --debug-artifact-substitution
72           Print debugging info about artifact substitution
73
74       --debug-backtraces
75           Always print exception backtraces.
76
77       --debug-dependency-path
78           In case of error, print the dependency path from the targets on the
79           command line to the rule that failed.
80
81       --debug-findlib
82           Debug the findlib sub-system.
83
84       --default-target=TARGET (absent=@@default)
85           Set the default target that when none is specified to dune build.
86
87       --diff-command=VAL
88           Shell command to use to diff files. Use - to disable printing the
89           diff.
90
91       --disable-promotion (absent DUNE_DISABLE_PROMOTION env)
92           Disable all promotion rules
93
94       --display=MODE
95           Control the display mode of Dune. See dune-config(5) for more
96           details.
97
98       --ignore-promoted-rules
99           Ignore rules with (mode promote), except ones with (only ...). The
100           variable %{ignoring_promoted_rules} in dune files reflects whether
101           this option was passed or not.
102
103       --instrument-with=BACKENDS (absent DUNE_INSTRUMENT_WITH env)
104           "Enable instrumentation by BACKENDS. BACKENDS is a comma-separated
105           list of library names, each one of which must declare an
106           instrumentation backend.
107
108       -j JOBS
109           Run no more than JOBS commands simultaneously.
110
111       --no-buffer
112           Do not buffer the output of commands executed by dune. By default
113           dune buffers the output of subcommands, in order to prevent
114           interleaving when multiple commands are executed in parallel.
115           However, this can be an issue when debugging long running tests.
116           With --no-buffer, commands have direct access to the terminal. Note
117           that as a result their output won't be captured in the log file.
118           You should use this option in conjunction with -j 1, to avoid
119           interleaving. Additionally you should use --verbose as well, to
120           make sure that commands are printed before they are being executed.
121
122       --no-config
123           Do not load the configuration file
124
125       --no-print-directory
126           Suppress "Entering directory" messages
127
128       --only-packages=PACKAGES
129           Ignore stanzas referring to a package that is not in PACKAGES.
130           PACKAGES is a comma-separated list of package names. Note that this
131           has the same effect as deleting the relevant stanzas from dune
132           files. It is mostly meant for releases. During development, it is
133           likely that what you want instead is to build a particular
134           <package>.install target.
135
136       -p PACKAGES, --for-release-of-packages=PACKAGES (required)
137           Shorthand for --release --only-packages PACKAGE. You must use this
138           option in your <package>.opam files, in order to build only what's
139           necessary when your project contains multiple packages as well as
140           getting reproducible builds.
141
142       --profile=VAL (absent DUNE_PROFILE env)
143           Select the build profile, for instance dev or release. The default
144           is dev.
145
146       --promote-install-files[=VAL] (default=true)
147           Promote the generated <package>.install files to the source tree
148
149       --release
150           Put dune into a reproducible release mode. This is in fact a
151           shorthand for --root . --ignore-promoted-rules --no-config
152           --profile release --always-show-command-line
153           --promote-install-files --default-target @install. You should use
154           this option for release builds. For instance, you must use this
155           option in your <package>.opam files. Except if you already use -p,
156           as -p implies this option.
157
158       --root=DIR
159           Use this directory as workspace root instead of guessing it. Note
160           that this option doesn't change the interpretation of targets given
161           on the command line. It is only intended for scripts.
162
163       --store-orig-source-dir (absent DUNE_STORE_ORIG_SOURCE_DIR env)
164           Store original source location in dune-package metadata
165
166       --terminal-persistence=MODE
167           Changes how the log of build results are displayed to the console
168           between rebuilds while in --watch mode. Supported modes: preserve,
169           clear-on-rebuild.
170
171       --trace-file=FILE
172           Output trace data in catapult format (compatible with
173           chrome://tracing)
174
175       --verbose
176           Same as --display verbose
177
178       --workspace=FILE (absent DUNE_WORKSPACE env)
179           Use this specific workspace file instead of looking it up.
180
181       -x VAL
182           Cross-compile using this toolchain.
183

MORE HELP

185       Use `dune COMMAND --help' for help on a single command.
186

ENVIRONMENT

188       These environment variables affect the execution of runtest:
189
190       DUNE_BUILD_DIR
191           Specified build directory. _build if unspecified
192
193       DUNE_CACHE
194           Activate binary cache (either `disabled' or `enabled'). Default is
195           `disabled'.
196
197       DUNE_CACHE_CHECK_PROBABILITY
198           Probability cached rules are rerun to check for reproducibility
199
200       DUNE_CACHE_DUPLICATION
201           Binary cache duplication mode
202
203       DUNE_CACHE_TRANSPORT
204           Binary cache protocol
205
206       DUNE_DISABLE_PROMOTION
207           Disable all promotion rules
208
209       DUNE_INSTRUMENT_WITH
210           "Enable instrumentation by BACKENDS. BACKENDS is a comma-separated
211           list of library names, each one of which must declare an
212           instrumentation backend.
213
214       DUNE_PROFILE
215           Build profile. dev if unspecified or release if -p is set.
216
217       DUNE_SANDBOX
218           Sandboxing mode to use by default. (see --sandbox)
219
220       DUNE_STORE_ORIG_SOURCE_DIR
221           Store original source location in dune-package metadata
222
223       DUNE_WORKSPACE
224           Use this specific workspace file instead of looking it up.
225

BUGS

227       Check bug reports at https://github.com/ocaml/dune/issues
228

EXAMPLES

230       1.  Run all tests in the current source tree (including those that
231           passed on the last run):
232
233             dune runtest --force
234
235       2.  Run tests sequentially without output buffering:
236
237             dune runtest --no-buffer -j 1
238
239
240
241Dune n/a                                                       DUNE-RUNTEST(1)
Impressum