1DUNE-RUNTEST(1) Dune Manual DUNE-RUNTEST(1)
2
3
4
6 dune-runtest - Run tests.
7
9 dune runtest [OPTION]... [DIR]...
10
12 This is a short-hand for calling:
13
14 dune build @runtest
15
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
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
185 Use `dune COMMAND --help' for help on a single command.
186
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
227 Check bug reports at https://github.com/ocaml/dune/issues
228
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)