Features
- Add daemon Services Mode (`daemon --services-mode`) where the daemon spins a task in its own docker and verifies start-up and shut-down. This allows multiple tasks to be launched simultaneously on the same machine (currently in CPU mode only), where each task service will register itself as a worker for the lifetime of the task
- Enhance `build --docker` mode
- Add `--install-globally` option to install required packages in the docker's system python
- Add `--entry-point` option to allow automatic task cloning when running the docker
- Support PyTorch Nightly builds using the `agent.torch_nightly` configuration flag. If `true`, the agent looks for a nightly build when a stable torch wheel is not found
- Add environment variables support for git user/password
- Using `TRAINS_AGENT_GIT_USER`/`TRAINS_AGENT_GIT_PASS`
- Pass git credentials to dockerized experiment execution
- Support running code from module (i.e. `-m` in execution entry point)
- Add daemon `--create-queue` to automatically create a queue and use it if queue name doesn't exist in the server
- Move `--gpus` and `--cpu-only` to worker args (used by daemon, execute and build)
Bug Fixes
- Fix init wizard, correctly display the input servers 19
- Fix version control links in requirements when using `conda`
- Fix `build --docker` mode standalone docker execution
- Improve docker host-mount support, use `TRAINS_AGENT_DOCKER_HOST_MOUNT` environment variable
- Support `pip` v20.1 local/http package reference in `pip freeze`
- Fix detached mode to correctly use cache folder slots
- Fix `CUDA_VISIBLE_DEVICES` should never be set to "all" (Trains Slack channel [thread](https://allegroai-trains.slack.com/archives/CTK20V944/p1590563064305700))
- Do not monitor GPU when running with `--cpu-only`