dstack icon indicating copy to clipboard operation
dstack copied to clipboard

[Meta]: Fleet-first UX

Open r4victor opened this issue 4 months ago • 0 comments

Currently, dstack fleets are optional for cloud backends, which means users have two ways of provisioning via dstack: using fleet configurations or run configurations. Moreover, fleet configurations are not supported for container-based backends, so the same users may have different provisioning UX depending on the backend. The proposal is to make provisioning UX fleet-first. Ultimately, this means that users always configure fleets explicitly, and run apply should not able to create new fleet. More specifically, this involves several steps:

  • [x] Support elastic cloud fleets, i.e. users can create fleets with 0 or more instances, empty fleets can be used by runs for provisioning (#1448).
  • [x] Implement smart fleet choice for runs – dstack should consider fleet capacity and prioritize fleets that can fit run without additional provisioning (currently only considers instance price, which leads to #2221 ).
  • [x] #3020
  • [x] Respect fleet spec when provisioning on run apply so that the instances do not contradict the fleet spec (#2969).
  • [x] Support fleet retry – dstack should maintain the specified min number of instances in the fleet (#2921).
  • [x] https://github.com/dstackai/dstack/labels/major #3056
  • [x] https://github.com/dstackai/dstack/labels/major #3256
  • [x] https://github.com/dstackai/dstack/labels/major #3294
  • [ ] https://github.com/dstackai/dstack/labels/major #2644
  • [x] Forbid creating new fleets on run apply (ultimate goal)

r4victor avatar Aug 12 '25 09:08 r4victor