Skip to main content

hostess

overview

hostess provides lightweight, Pythonic interfaces to distributed resources, system processes, and Python internals. It includes high-level modules that provide special functionality for working with EC2 instances and S3 buckets, and a framework (station) for workflow coordination -- along with all their lower-level building blocks.

hostess reduces syntactic headaches and boilerplate while still allowing low-level manipulation and, more broadly, still feeling like code. hostess has a special emphasis on fitting intuitively and idiomatically into common data science and scientific analysis workflows, but it is fundamentally a general-purpose utility and administration library.

installation

hostess is available on PyPI and conda-forge. We recommend installing it into a Conda environment using conda: conda install -n my_environment -c conda-forge hostess.

The conda-forge package installs all optional dependencies other than those for tests and Notebooks. If you require more granular control over dependencies, please install from PyPI or source.

documentation

Examples for working with EC2 instances can be found in this jupyter notebook.

Examples for working with S3 buckets can be found in this jupyter notebook.

You can find an API reference and full changelog on readthedocs. Documentation Status

compatibility

  1. hostess's core features are closely linked to the shell, so it is only fully compatible with Unix-scented operating systems. Linux and MacOS count, as does Windows Subsystem for Linux (WSL). Windows outside of WSL doesn't.
  2. Some hostess modules require network access, specifically ssh and the aws submodules. The aws submodules also require an AWS account. See the example Notebooks for more details on this.
  3. hostess requires Python >= 3.10.
  4. hostess is very lightweight. If a machine has enough resources to run a Python interpreter, it can probably run hostess.
  5. hostess.station is not fully compatible with MacOS or WSL. MacOS and WSL compatibility is planned. All other parts of hostess are compatible with MacOS and WSL.

cautions

hostess is a reliable and fairly feature-complete beta in active use on multiple projects. However, we do not yet guarantee interface stability or backwards compatibility.

Also, as with any system administration software, we recommend using it very carefully.

tests

hostess includes a simple test suite compatible with pytest. You can run the tests by executing pytest -s in the root directory. The -s flag is mandatory because pytest captures stdout by default, which breaks some hostess features covered by the tests.

Tests require two additional Python dependencies: pytest and pillow.

non-local tests

'Live' tests of non-local functionality provision AWS resources using the default AWS credentials (if any) available in the executing environment. These tests do not run by default. To execute these tests, pass --run-aws to pytest. They will only run successfully if the available AWS credentials are valid and if their associated account has the required permissions: ListObjectsV2, CreateBucket, DeleteBucket, GetObject, PutObject, DeleteObject, HeadObject, DescribeInstances, CreateFleet, StartInstances, StopInstances, TerminateInstances, CreateLaunchTemplate, and DeleteLaunchTemplate.

Warning: If the available AWS account has permissions to create but not delete resources, resources provisioned for tests will require manual cleanup. It is not in general possible to detect this permissions condition without actually creating and then attempting to delete a resource.

Manual cleanup may also be required if the OS kills the Python process running the tests, if the machine on which the tests are running fails, etc.

licensing

You can do almost anything with this software that you like, subject only to the extremely permissive terms of the BSD 3-Clause License.

Metadata

Release files for hostess 0.11.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hostess 0.11.6
File Size Uploaded Provenance Actions
hostess-0.11.6.tar.gz 505.8 kB Without provenance Details for hostess-0.11.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for hostess 0.11.6
File Interpreter ABI Platform Actions
hostess-0.11.6-py3-none-any.whl Python 3 none any Details for hostess-0.11.6-py3-none-any.whl

Total release size: 1.0 MB

Release files / hostess-0.11.6.tar.gz

Download URL hostess-0.11.6.tar.gz
Size 505.8 kB
Tags Source
SHA-256 checksum
How to use checksums
4273f440ef0c24b69b4be1011ce27f82c284de68dd09cf4831038ea9169b5fe0
BLAKE2b-256 checksum
How to use checksums
867e7e727128bba5e6f43c7279710732c8274be51a0563831d77112e4599fefc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release files / hostess-0.11.6-py3-none-any.whl

Download URL hostess-0.11.6-py3-none-any.whl
Size 522.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aedf1d14c8f85df9eb4eed4b0e27d6a95a8ea290bbf712aa1b345bb5c9a6f090
BLAKE2b-256 checksum
How to use checksums
69548b8b6735e3fd872db78efda35b0f50344a3e3a71abcb2d6c20cbd6d2dc45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Security for hostess 0.11.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page