Skip to main content

Nomad logo

PyPI version Tests Checked with mypy

Welcome to Nomad!

Nomad is the easiest way to run any code on the cloud! Nomad is designed to be used with Prism projects, but it can be used to any arbitrary code (e.g., functions, scripts, Jupyter notebooks, or entire projects)!

Getting Started

Nomad can be installed via pip. Nomad requires Python >= 3.8.

pip install --upgrade pip
pip install nomad-dev

Then, initialize a configuration file with the nomad init CLI command. This command will automatically prompt you for all the information needed to configure your cloud environment.

$ nomad init

What type of cloud environment do you want to use [ec2]? ec2
What would you like the name of your configuration file to be (default: nomad.yml)?

<HH:MM:SS> | INFO | Building configuration file...
<HH:MM:SS> | INFO | Done!

To run your project on your cloud environment, use the nomad build command. Under the hood, this command:

  1. Builds the cloud environment according to instructions contained in the configuration file, and
  2. Executes your project on the cloud.
$ nomad build -f nomad.yml
<HH:MM:SS> | INFO  | my_cloud_agent[build]  | Created key pair my_cloud_agent
<HH:MM:SS> | INFO  | my_cloud_agent[build]  | Created security group with ID sg-XXXXXXXXXXXXXXXXX in VPC vpc-XXXXXXXXXXXXXXXXX
<HH:MM:SS> | INFO  | my_cloud_agent[build]  | Created EC2 instance with ID i-XXXXXXXXXXXXXXXXX
<HH:MM:SS> | INFO  | my_cloud_agent[build]  | Instance i-XXXXXXXXXXXXXXXXX is pending... checking again in 5 seconds
<HH:MM:SS> | INFO  | my_cloud_agent[build]  | Instance i-XXXXXXXXXXXXXXXXX is pending... checking again in 5 seconds
<HH:MM:SS> | INFO  | my_cloud_agent[build]  | Instance i-XXXXXXXXXXXXXXXXX is pending... checking again in 5 seconds
<HH:MM:SS> | INFO  | my_cloud_agent[build]  | Instance i-XXXXXXXXXXXXXXXXX is pending... checking again in 5 seconds
...
...
<HH:MM:SS> | INFO  | my_cloud_agent[run]    | Done!
<HH:MM:SS> | INFO  | my_cloud_agent[delete] | Deleting key-pair my_cloud_agent at /../../../my_cloud_agent.pem
<HH:MM:SS> | INFO  | my_cloud_agent[delete] | Deleting instance i-XXXXXXXXXXXXXXXXX
<HH:MM:SS> | INFO  | my_cloud_agent[delete] | Deleting security group sg-XXXXXXXXXXXXXXXXX

Alternatively, you could use the nomad apply command to first build the cloud environment and then use nomad run to actually run the code.

Check out our documentation to see the full list of CLI command and their usage!

Cloud environments

Nomad currently supports the following cloud environments (which we call "Agents"):

  • ec2

Product Roadmap

We're always looking to improve our product. Here's what we're working on at the moment:

  • Additional Agents: GCP Virtual Machines, EMR clusters, Databricks clusters, and more!
  • Managed service: Managed platform to easily view, manage, and schedule your different cloud deployments

Let us know if you'd like to see another feature!

Metadata

Release files for nomad-dev 0.0.5

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

Source distribution (sdist)

Source distribution for nomad-dev 0.0.5
File Size Uploaded
nomad-dev-0.0.5.tar.gz 60.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nomad-dev 0.0.5
File Interpreter ABI Platform
nomad_dev-0.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 152.8 kB

Release files / nomad-dev-0.0.5.tar.gz

Download URL nomad-dev-0.0.5.tar.gz
Size 60.9 kB
Tags Source
SHA-256 checksum
How to use checksums
185d28ba695dcf9537c83e8568f2a338a0ea7a3cbc86435262f0cb532b981564
BLAKE2b-256 checksum
How to use checksums
9c83d2617d9618a153f16f483ca527f26bfa407bda3ae9ebee9d8f97723f81fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.12

Release files / nomad_dev-0.0.5-py3-none-any.whl

Download URL nomad_dev-0.0.5-py3-none-any.whl
Size 91.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e81ed2b45824ecef30292aec6382d5e300844113025a70292e198dc67cad083f
BLAKE2b-256 checksum
How to use checksums
5486f0d5b10fcc0e466f2dbf3a3660a90b5501e815ca9e874fdc391551ba1f06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.12

Release history Release notifications | RSS feed

This release

0.0.5 This release

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

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