Skip to main content

roto

An AWS simulator written in Rust: a from-scratch rewrite of moto's server mode. One static binary, AWS wire-protocol compatible, persistent by default (SQLite + real-filesystem S3).

Status: under active development. See STATUS.md for current coverage and PLAN.md for the roadmap.

Documentation: The roto book (sources).

cargo run -p roto-server -- --port 5070        # persistent: ./roto-data ; add --ephemeral for in-memory
aws --endpoint-url http://localhost:5070 sts get-caller-identity
scripts/run-moto-tests.sh test_sts              # moto's own tests, run against roto

Documentation

python3 -m venv .venv-docs
.venv-docs/bin/python -m pip install -r requirements-docs.txt
.venv-docs/bin/zensical serve

GitHub Actions builds the book on pull requests and deploys main to GitHub Pages. Set the repository's Pages source to GitHub Actions. See the documentation guide for details.

Python package releases

The maturin package roto-aws installs the roto-server command. After the first PyPI release, install it with pip install roto-aws or run uvx --from roto-aws roto-server --ephemeral.

Push a Cargo-compatible version tag such as v0.0.1 to trigger .github/workflows/release.yml. The shared workflow sets the workspace version from the tag, builds Linux x64/ARM64, Windows x64, macOS Intel/ARM64 wheels and a source distribution, then the local publishing job uploads them to PyPI. The shared components are pinned to a commit in vivainio/actions.

Before the first release, create the GitHub environment pypi and configure a PyPI Trusted Publisher (or pending publisher for a new project) with:

  • Project: roto-aws
  • Owner: vivainio
  • Repository: roto
  • Workflow filename: release.yml
  • Environment: pypi

Release tags should point to commits that pass the existing CI checks.

Build locally with uvx maturin build --release --locked --out dist or uvx maturin sdist --out dist.

License

MIT. See LICENSE.

Metadata

Release files for roto-aws 0.0.1

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

Source distribution (sdist)

Source distribution for roto-aws 0.0.1
File Size Uploaded
roto_aws-0.0.1.tar.gz 360.6 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for roto-aws 0.0.1
File
roto_aws-0.0.1-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
roto_aws-0.0.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
roto_aws-0.0.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
roto_aws-0.0.1-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
roto_aws-0.0.1-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 24.7 MB

Release files / roto_aws-0.0.1.tar.gz

Download URL roto_aws-0.0.1.tar.gz
Size 360.6 kB
Tags Source
SHA-256 checksum
How to use checksums
e5dc6964fb6a658c852fdb72c06e0cfb0a8e8147f63f04049ce5b887042e9158
BLAKE2b-256 checksum
How to use checksums
665b5cb45f86de22904de2609e3932d0e97d98a74b90f424c4582bd508f378b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / roto_aws-0.0.1-py3-none-win_amd64.whl

Download URL roto_aws-0.0.1-py3-none-win_amd64.whl
Size 4.6 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
35fd7aa503de27b6b156528ae8e062a2cfdad29aebfcadc297815016ed242e21
BLAKE2b-256 checksum
How to use checksums
44ae6c199fa2a235640aecd64c6eec6c393c94df50c71c977ea9b541fafd338c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / roto_aws-0.0.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL roto_aws-0.0.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 5.1 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
dc4805cb71cab059ed35db0d13948a637de4caeaa56e3ae0a2689976b2043c46
BLAKE2b-256 checksum
How to use checksums
d67fbd0cb927819c6f57d92e45283916dd5c664163ccebf354aed03f86cada5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / roto_aws-0.0.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL roto_aws-0.0.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 5.0 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
4a9d83ee1025b3719ae1042cc347e587ecd0a6534f16fb1e19662895e636e9da
BLAKE2b-256 checksum
How to use checksums
f5ca4560c9bf63753255ef9c2c55f1e833cd25384c7512d063c0dd6eab850357
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / roto_aws-0.0.1-py3-none-macosx_11_0_arm64.whl

Download URL roto_aws-0.0.1-py3-none-macosx_11_0_arm64.whl
Size 4.7 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1818099393dc2cc5c7ef8c20a7c067734f0fb07ea9898b41603c669a17a36aa9
BLAKE2b-256 checksum
How to use checksums
22aa8d9a8c57d27d5adca3d4c3c7a5ab7cca4bd009ba34a5fe345601b32737eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / roto_aws-0.0.1-py3-none-macosx_10_12_x86_64.whl

Download URL roto_aws-0.0.1-py3-none-macosx_10_12_x86_64.whl
Size 4.9 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
f8d5d5e786b99a36606ca702482baddad78a5a6f3520972f991b5ed9da46521c
BLAKE2b-256 checksum
How to use checksums
8f4a665bc78a8c01fdd41191d3c2b38b86c5c7f86f95d9bf82528a6462e129a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.1.1

6 release files

0.1.0

6 release files

0.0.2

6 release files

This release

0.0.1 This release

6 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