- Update the installation instructions to use Python 3.11.3 and newer pip libraries.
- In the
gce createCLI command, implement LaunchPad configuri_modeby setting thehost,uri_mode, anddbmetadata fields.
- Update
startup.shand the installation instructions forpyenvchanges and to install the monitoring agent. - The gce API and CLI now support
=and,characters in metadata and options such as MongoDBhostURLs with query parameters...?retryWrites=true&w=majority. Using the CLI, changegce -m KEY=VALUE,KEY2=VAL2togce -m KEY=VALUE -m KEY2=VAL2. - Make
example_mongo_ssh.shtake an optional HOST name arg. - Update & simplify the installation instructions to use Debian, a smaller disk, newer machine type, and no Ubuntu
snapsteps.
- Add dnspython to requirements.txt so pymongo can access server clusters.
- Update other pips in requirements.txt for good measure.
- Let the GCE VM metadata override the MongoDB host, including is_uri mode.
- Add gce.py help text for using the
-o network-interface=no-addressoption to creates VMs without External IP addresses. - Update to Fireworks 1.9.7.
- Improve the how-to docs.
- Make Python 3.8 the minimum version.
- Require google-cloud-logging>=2.0.0 which changed the API. We recommend other pip updates, esp. FireWorks>=1.9.7 which fixes the
lpad webguibug on Python 3.8+ on macOS. - Don't auto-upgrade the pips when the Fireworker starts up. We need to be able to manually approve pip version upgrades. (
lpad webguiin FireWorks 1.9.7 requires MongoDB server 3.4+.) - Detect out-of-memory without relying on Docker's
OOMKilledstatus. - On out-of-memory, log instructions to allocate GCE VMs with more RAM or with swap space.
- Log more Firetask context info like the storage root, workflow name, mongo DB name, host name, the task completion timestamp, and exception details.
- If asked to create more GCE VMs than the max, just limit the number and print a warning rather than raising
AssertionError. The limit is there to avoid expensive accidents. - When creating GCE VMs, don't set the
subnet=defaultoption since that'd interferece with the-o network-interface=no-addressoption to create VMs no External IP address. Fireworkers without an External IP are more secure but you'll want to set up Cloud NAT so they can access Docker repositories and Identity Aware Proxy (IAP) so you can ssh in. - Update the docs since Cloud Console's Logs Explorer replaced its Logs Viewer.
- In
CloudStorage, add thelist_blobs()star=True/Falseglob option. - Use ruamel.yaml's newer API so it'll continue working on ruamel.yaml 0.17+.
- Log fireworker & firetask start/end at the INFO rather than WARNING level. Log task console output and other details at the DEBUG level.
- Don't log console blank lines since the Cloud Log Viewer now handles them strangely.
- Add tips & workarounds to the docs, e.g. use Python 3.7 so
gsutil -mwill work.
- Log an Error rather than a Warning on DockerTask failure.
- Clarify DockerTask exception messages.
- Add
example_mongo_ssh.sh. - More documentation progress.
- Refine CLI help text.
- Patch
README.mdrelative links to form absolute links for the PyPI description.
- Fix the
setup.pylink tochanges.md. - Documentation progress.
- Improved documentation.
- gce.py: More flexible
--metadataand--optionsCLI args. - storage.py: Faster directory placeholder creation using the new
if_generation_match=0API feature.
- DockerTask:
- Implement task timeouts.
- Log the elapsed runtime of the container process.
- Timestamp the log filename also in the "Pushing outputs to GCS" message and in the local filename (prep for caching output files locally).
- Raise an exception if a
>or>>capture path parameter names a directory.
- Fireworker:
- Allow the worker's
my_launchpad.yamlfile to set theidle_for_waitersandidle_for_rocketsparameters. This is good for configuring GCE workers in the Disk Image and off-GCE local workers in the local yaml file. - Add a
quit=soonfeature.gce.pycan set this metadata attribute to ask Fireworkers to quit gracefully between rockets.
- Allow the worker's
- Timestamp the captured log files to keep them all from multiple runs and so
ls -lsorts in time order.
- Add info to the logs.
- Python 2 compatibility fixes.
- Explain the
ConnectionErrorthat arises whenfireworkercan't contact the Docker server.
- Move the setup files from
borealis/installation/toborealis/setup/. - Add a
fireworker --setupoption to print the setup path to simplify the steps to copy those files when setting up a server Disk Image. - Add a
fireworker -l <launchpad_filename>option for compatibility withlpad. The default is back tomy_launchpad.yaml. - Add a
gce -l <launchpad_filename>option, likelpad, to read the db name, username, and password when creating VMs. The default ismy_launchpad.yaml.
- Bug fix in the
gce_my_launchpad.yamlfallback code.
- Read launchpad config info from
gce_my_launchpad.yamlif possible, falling back tomy_launchpad.yamlfor compatibility with previous releases. This lets people use one launchpad config file for their GCE workflows and another one for their other workflows. - Improve the server installation steps and augment the
fireworker --helptext to display its directory.
- Correct the pip name in
startup.sh. - Use
print()instead ofloggingin gce.py so the messages aren't filtered by the log level. - Refine the installation instructions.
- Initial dev build.