Notable Changes:
Better management of multiple jobs running at the same time.
- Cloudexec now manages multiple ssh config files, one for each job, all stored in
$HOME/.ssh/config.d/
. - We can now attach to other running jobs, even if they are not the latest job.
cloudexec attach
will still attach to the latest job as before, but now we can runcloudexec attach --job 1
to attach to a different job. (#33) - To ssh into the server running job 1, we now use
ssh cloudexec-1
instead of the oldssh cloudexec
- The cloudexec server's name now features the job id eg
cloudexec-myusername-2
instead of justcloudexec-myusername
, allowing easier distinction from the DigitalOcean dashboard.
More powerful bucket cleaning
- We can new clean the bucket of data associated with only one specific job by passing a
--job
flag to theclean
command. - The
cloudexec clean
command now asks for user confirmation for each job it's about to clean, instead of once before cleaning everything - A
--force
flag has been added to cancel/clean commands to bypass the usual request for user confirmations. - There is now a meta command
pull-and-clean
that pulls all data for a job and then deletes that jobs data from the bucket. (#37) - We paginate through the list of objects properly so we're no longer limited to cleaning 1000 objects at a time. (#35)
- A big has been fixed where some steps of the cancellation/cleaning processes would proceed even if the user rejected the confirmation. (#32)
Improved pulling
- The
path
argument that used to be passed to thepull
command has been replaced with a--path
flag. - The path is no longer a required argument while pulling. If omitted, it defaults to pulling the output from job 1 into a local folder at
cloudexec/job-1
. - The runtime logs have been added to the data pulled for easier debugging, look for a file called
cloudexec.log
in the pulled output.
Prettier, cleaner logs
- A colorful logger has been added. Green is good, red it bad, yellow means pay attention, blue means cloudexec is working on something that might take a while.
- Some unnecessary logs have been removed, other logs have been clarified.
Other odds and ends
- Some gaps in error-handling have been filled in. (#23)
- The simple medusa example was broken but has been fixed.
- The username used to name the bucket and droplets comes from the config file now, instead of the operating system user. (#36)
- The readme has been extended and clarified, especially the section regarding launch config.