* Separate out file_mounts contents hashing into its own separate hash
Add an option to continuously sync file_mounts from head node to worker nodes:
monitor.py will re-sync file mounts whenver contents change but will only run setup_commands if the config also changes
* add test and default value for file_mounts_sync_continuously
* format code
* Update comments
* Add param to skip setup commands when only file_mounts content changed during monitor.py's update tick
Fixed so setup commands run when ray up is run and file_mounts content changes
* Refactor so that runtime_hash retains previous behavior
runtime_hash is almost identical as before this PR. It is used to determine if setup_commands need to run
file_mounts_contents_hash is an additional hash of the file_mounts content that is used to detect when only file syncing has to occur.
Note: runtime_hash value will have changed from before the PR because we hash the hash of the contents of the file_mounts as a performance optimization
* fix issue with hashing a hash
* fix bug where trying to set contents hash when it wasn't generated
* Fix lint error
Fix bug in command_runner where check_output was no longer returning the output of the command
* clear out provider between tests to get rid of flakyness
* reduce chance of race condition from node_launcher launching a node in the middle of an autoscaler.update call
* Fix SC2001: See if you can use ${variable//search/replace} instead.
* Fix SC2010: Don't use ls | grep. Use a glob or a for loop with a condition to allow non-alphanumeric filenames.
* Fix SC2012: Use find instead of ls to better handle non-alphanumeric filenames.
* Fix SC2015: Note that A && B || C is not if-then-else. C may run when A is true.
* Fix SC2028: echo may not expand escape sequences. Use printf.
* Fix SC2034: variable appears unused. Verify use (or export if used externally).
* Fix SC2035: Use ./*glob* or -- *glob* so names with dashes won't become options.
* Fix SC2071: > is for string comparisons. Use -gt instead.
* Fix SC2154: variable is referenced but not assigned
* Fix SC2164: Use 'cd ... || exit' or 'cd ... || return' in case cd fails.
* Fix SC2188: This redirection doesn't have a command. Move to its command (or use 'true' as no-op).
* Fix SC2236: Use -n instead of ! -z.
* Fix SC2242: Can only exit with status 0-255. Other data should be written to stdout/stderr.
* Fix SC2086: Double quote to prevent globbing and word splitting.
Co-authored-by: Mehrdad <noreply@github.com>
* Test actor plasma reconstruction
* Allow resubmission of actor tasks
* doc
* Test for actor constructor
* Kill PID before removing node
* Kill pid before node
* Fix SC2006: Use $(...) notation instead of legacy backticked `...`.
* Fix SC2016: Expressions don't expand in single quotes, use double quotes for that.
* Fix SC2046: Quote this to prevent word splitting.
* Fix SC2053: Quote the right-hand side of == in [[ ]] to prevent glob matching.
* Fix SC2068: Double quote array expansions to avoid re-splitting elements.
* Fix SC2086: Double quote to prevent globbing and word splitting.
* Fix SC2102: Ranges can only match single chars (mentioned due to duplicates).
* Fix SC2140: Word is of the form "A"B"C" (B indicated). Did you mean "ABC" or "A\"B\"C"?
* Fix SC2145: Argument mixes string and array. Use * or separate argument.
* Fix SC2209: warning: Use var=$(command) to assign output (or quote to assign string).
Co-authored-by: Mehrdad <noreply@github.com>
* Only delete old checkpoint if it is not the same as the new one
* Return early if old checkpoint value coincides with new checkpoint value
Co-authored-by: Kai Fricke <kai@anyscale.com>