|
| 1 | +# Migration guide |
| 2 | + |
| 3 | +<!-- TODO: Add general sections on how to migrate to newer releases and how major and minor versions compatibility and deprecation policy is handled --> |
| 4 | + |
| 5 | +## 0.20.* { #0_20 } |
| 6 | + |
| 7 | +### CLI compatibility |
| 8 | + |
| 9 | +- CLI versions `0.19.*` and earlier remain backward compatible with the `0.20.*` `dstack` server. |
| 10 | +- CLI versions `0.20.` are not compatible with server versions prior to `0.20.*`. |
| 11 | + |
| 12 | +> Do not upgrade the CLI to `0.20.*` until the server has been upgraded. |
| 13 | +
|
| 14 | +### Fleets |
| 15 | + |
| 16 | +* Prior to `0.20`, `dstack` automatically provisioned a fleet if one did not exist at run time. |
| 17 | + Beginning with `0.20`, `dstack` will only use existing fleets. |
| 18 | + |
| 19 | +> Create fleets before submitting runs. To enable on-demand instance provisioning, configure `nodes` as a range in the [backend fleet](../concepts/fleets.md#backend-fleets) configuration. |
| 20 | +
|
| 21 | +### Working directory |
| 22 | + |
| 23 | +- Previously, when `working_dir` was not specified, `dstack` defaulted to `/workflow`. As of `0.20`, `dstack` uses the working directory defined in the Docker image. If the image does not define a working directory, `dstack` falls back to `/`. |
| 24 | +- The default image introduced in `0.20` uses `/dstack/run` as its default working directory. |
| 25 | + |
| 26 | +> To override the directory defined in the Docker image, specify [`working_dir`](../concepts/dev-environments.md#working-directory) explicitly. |
| 27 | +
|
| 28 | +### Repo directory |
| 29 | + |
| 30 | +- Previously, if no [repo directory](../concepts/dev-environments.md#repos) was specified, `dstack` cloned the repository into `/workflow`. With `0.20`, the working directory becomes the default repo directory. |
| 31 | +- In earlier versions, cloning was skipped if the repo directory was non-empty. Starting with `0.20`, this results in a `runner error` unless `if_exists` is set to `skip` in the repo configuration. |
| 32 | + |
| 33 | +> Ensure repo directories are empty, or explicitly set `if_exists` to `skip`. |
| 34 | +
|
| 35 | +### Deprecated feature removal |
| 36 | + |
| 37 | +The following deprecated commands have been removed in **0.20**: |
| 38 | + |
| 39 | +- `dstack config` |
| 40 | +- `dstack stats` |
| 41 | +- `dstack gateway create` |
| 42 | + |
| 43 | +Use the corresponding replacements: |
| 44 | + |
| 45 | +- `dstack project` |
| 46 | +- `dstack metrics` |
| 47 | +- `dstack apply` |
| 48 | + |
| 49 | +> For more details on the changes, see the [release notes](https://github.com/dstackai/dstack/releases). |
0 commit comments