You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+30-5Lines changed: 30 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -259,10 +259,20 @@ Use the command that matches the lifecycle you want:
259
259
|`generate-install`| Yes | Yes, via install | First setup, or after intentional Appraisals changes |
260
260
|`generate-update`| Yes | Yes, via update | Regenerate gemfiles, then update dependency locks |
261
261
262
-
`generate`, `generate-install`, and `generate-update` can generate appraisal
263
-
gemfiles in parallel with `--jobs` / `-j`, or with `APPRAISAL_JOBS` when no
264
-
CLI value is provided. `generate-install` and `generate-update` parallelize the
265
-
generation phase, then resolve dependencies with the selected gem manager.
262
+
Appraisal2 can process appraisals in parallel with `--appraisal-jobs` / `-n`,
263
+
or with `APPRAISAL_JOBS` when no CLI value is provided. `generate`,
264
+
`generate-install`, and `generate-update` use this for generation. `install`,
265
+
`update`, `generate-install`, and `generate-update` use it to fan out dependency
266
+
resolution across appraisals. External commands run across all appraisals, such
267
+
as `bundle exec appraisal rake test`, use `APPRAISAL_JOBS`. Appraisal-level
268
+
parallelism defaults to 2 workers; use `-n 1` to run serially. When Appraisal2
269
+
is running under Bundler older than 2.1, Appraisal2 falls back to serial
270
+
processing because those Bundler versions do not provide the modern environment
271
+
helpers used to isolate parallel Bundler subprocesses.
272
+
273
+
Install commands keep `--jobs` / `-j` for the selected gem manager. With
274
+
Bundler, `-j` controls `bundle install --jobs`, while `-n` controls how many
275
+
appraisal gemfiles Appraisal2 processes at the same time.
266
276
267
277
The deprecated rake task `rake appraisal:install` now delegates to `appraisal generate-install`, preserving its historical generate-and-install behavior while the CLI commands remain explicit.
268
278
@@ -275,12 +285,27 @@ Built-in dependency commands support the following options:
275
285
| Option | Description |
276
286
|--------|-------------|
277
287
|`--gem-manager`, `-g`| Gem manager to use: `bundler` (default) or `ore`; applies to `install`, `update`, `generate-install`, and `generate-update`|
278
-
|`--jobs`, `-j`| Generate appraisal gemfiles in parallel for `generate`, `generate-install`, and `generate-update`; also installs gems in parallel for `install` and `generate-install` when supported by the selected gem manager |
288
+
|`--appraisal-jobs`, `-n`| Process appraisals in parallel for `generate`, `install`, `update`, `generate-install`, and `generate-update` (default: 2; use `-n 1` for serial execution; Bundler < 2.1 falls back to serial processing) |
289
+
|`--jobs`, `-j`| Pass a parallel job count to the selected gem manager; applies to `install` and `generate-install`|
279
290
|`--retry`| Retry network and git requests that have failed; applies to `install` and `generate-install` (default: 1) |
280
291
|`--without`| A space-separated list of groups to skip during installation; applies to `install` and `generate-install`|
281
292
|`--full-index`| Run bundle install with the full-index argument; applies to `install` and `generate-install`|
282
293
|`--path`| Install gems in the specified directory; applies to `install` and `generate-install`|
283
294
295
+
```bash
296
+
# Process two appraisals at a time, using the default Appraisal worker count
297
+
bundle exec appraisal generate-install
298
+
299
+
# Process four appraisals at a time
300
+
bundle exec appraisal generate-install -n 4
301
+
302
+
# Process two appraisals at a time, and give each Bundler install four jobs
303
+
bundle exec appraisal generate-install -n 2 -j 4
304
+
305
+
# Run Appraisal serially when parallel appraisal processing is not desired
306
+
bundle exec appraisal generate-install -n 1
307
+
```
308
+
284
309
### Using Commands with Named Appraisals
285
310
286
311
#### Using Appraisal's built-in commands with named appraisals
0 commit comments