Now AWS and GCP instances are on-demand by default (!). To run a spot instance use the spotInstance: true parameter for AWS and preemptibleInstance: true for GCP.
AWS EC2 volumes and GCP disks are retained by default
Changes for the "spotty run" command:
Now it syncs the project before running a script by default. The "--sync" flag was replaced with the "--no-sync" flag.
Added support for custom arguments. They can be provided to the script after the double-dash ("--") argument.
Scripts now support shebang (!#) to use custom interpreters.
The "restart" flag is removed as it doesn't work well with the "docker exec" process.
Added the "spotty exec" command to execute custom commands in the container (for example, to run python scripts in the container with PyCharm)
Added the "-C" flag for the "spotty start" command to start or restart the container without restarting the instance itself.
Added the instanceProfileArn parameter to specify custom instance profiles for AWS instances (@tsdalton, #42)
Nitro-based instances support (#64, #66)
Added support for several container configurations in the spotty.yaml file (#44)
cfn-init logs automatically downloaded to the local machine if the instance failed to start (#52, #44, #48)
Added support for the spotty.override.yaml file. It overrides the values of the main spotty.yaml file and supposed to be added to the .gitignore file.
Added the "local" provider. Now it's possible to build and run docker containers locally.
Added the "remote" provider. Containers can be run on any accessible via SSH machine with the Docker installed.
The "spotty ssh" command was renamed to "spotty sh" as it didn't make sense for the "local" provider and also it's shorter.
The "ports" parameter moved from the container config to the instance config
GCP provider uses the "common-gce-gpu-image" image as a base image by default
Dropped support for the custom AWS AMI and the custom GCP image
Disabled the host network mode by default as it doesn't work on macOS and Windows (added the "ports" parameter to container configuration to publish specific ports to the host OS)
Added a parameter to run containers as a host user
Added the "-u" flag for "spotty run" and "spotty sh" commands to connect to the container as a root user
spotInstance: true
parameter for AWS andpreemptibleInstance: true
for GCP.instanceProfileArn
parameter to specify custom instance profiles for AWS instances (@tsdalton, #42)spotty.yaml
file (#44)cfn-init
logs automatically downloaded to the local machine if the instance failed to start (#52, #44, #48)spotty.override.yaml
file. It overrides the values of the mainspotty.yaml
file and supposed to be added to the.gitignore
file.