1

I have a build definition used in a Gated Check-In build. Its CleanWorkspace parameter is set to None, i.e. the build is incremental.

The problem is that after the reboot TFS does not recognize that the complete workspace folder is gone (of course, it is RAM drive) and does not attempt to bring all the sources again, which results in a build failure until a full build is manually queued. After that everything is fine until the next reboot.

I am wondering whether there is a better way to have incremental build work on a RAM drive, specifically, is it possible to tell TFS to do the full build if the root workspace directory is missing? Other approaches are welcome as well.

Note, that I am not interested in the "write through" option, where the RAM drive is backed by a real HD space.

Vicky - MSFT
  • 4,970
  • 1
  • 14
  • 22
mark
  • 59,016
  • 79
  • 296
  • 580

1 Answers1

0

Normally, RAM disk will be lost when computer reboot. Additionally, in your scenario, you work with an incremental builds, just as you mentioned above, you need to run the first build to creates the required workspace and gets all the source files onto the build computer.

However, there is a tool called RAMDisk which is used to create ram disks. In this tool, you can set to keep files on disk on shutdown. See: enter image description here

With this setting, all files on the build agent working directory will be kept on ram disk even after reboot.

Vicky - MSFT
  • 4,970
  • 1
  • 14
  • 22
  • I know about this option and does not want it. What it does is persist the changes as they happen, this affects performance of the RAM drive. I know that I need to build everything following a restart, the problem is that TFS does not recognize that it has to get the entire workspace - a human must tell it. That is the problem I want to solve - _is it possible to tell TFS to do the full build if the root workspace directory is missing?_ – mark Sep 08 '15 at 12:03