A deployment tool for WheelOS.
Project description
🚀 Quick Start
whl-deploy simplifies Apollo deployment into two streamlined phases: Packaging (creating a portable release) and Deploying (setting up the host).
1. One-Step Deployment (Run/Install)
This is the standard scenario for end-users. Using a generated release bundle (e.g., wheelos_1.0.0_ubuntu22.04_x86_64_nvidia.tar), you can restore the entire environment—including source code, Docker images, and data—with a single command.
The tool automates the following workflow:
- 📦 Unpack: Extracts the bundle to the workspace.
- 📖 Configure: Loads the internal
manifest.yaml. - 🚀 Deploy: Installs artifacts (Source, Docker, Maps, Models).
- ⚙️ Post-Run: Executes setup scripts (e.g., GPU checks).
# Standard installation from a release bundle
whl-deploy run --bundle wheelos_1.0.0_ubuntu22.04_x86_64_nvidia.tar
# Using aliases (Short syntax)
whl-deploy r -b wheelos_1.0.0_ubuntu22.04_x86_64_nvidia.tar
💡 Tip: Development Mode If you are working in a development environment where the code is already present (git cloned) and you don't have a tarball, you can run deployment directly using the local manifest:
whl-deploy run --manifest whl_deploy/manifest.yaml
2. Creating a Release (Pack)
For developers or CI/CD pipelines, whl-deploy consolidates all resources defined in your manifest.yaml into a single, distributable file.
Key Features:
- Auto-Naming: Automatically generates names like
{project}_{ver}_{os}_{arch}_{gpu}.tar. - Smart Packing: Fetches remote resources and standardizes directory structures.
- No-Double-Compression: Uses uncompressed tar for the outer shell to speed up deployment.
# Pack using a specific manifest file
whl-deploy pack --manifest whl_deploy/manifest.yaml
# Using aliases
whl-deploy p -m whl_deploy/manifest.yaml
3. Configuration (Manifest)
whl-deploy adopts a "Configuration as Code" approach. The manifest.yaml defines what to pack (inputs) and where to deploy it (outputs).
📄 View the Example Manifest: 👉 whl_deploy/manifest.yaml
4. Command Reference
Global Options
These flags apply to all commands:
-m, --manifest <path>: Specify a custom manifest file path (Default:./manifest.yaml).-v, --verbose: Enable detailed debug logging.
Subcommands
| Command | Alias | Description | Key Flags |
|---|---|---|---|
run |
r, install, i |
Deploy artifacts to the host system. | -b, --bundle <path>: Path to the .tar file to unpack. |
pack |
p |
Create a consolidated release package. | N/A (Uses manifest settings) |
🤝 Contribution & Support
whl-deploy aims to standardize the complex deployment of autonomous driving software. If you have questions, suggestions, or wish to contribute:
- 🐛 Report Bugs: Submit an Issue.
- 🛠️ Contribute: Fork the repo and create a Pull Request.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file whl_deploy-0.0.5.tar.gz.
File metadata
- Download URL: whl_deploy-0.0.5.tar.gz
- Upload date:
- Size: 34.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0252f9e2b6d67beee8d8b83e294abd8ef2ce43e90cf63a6c7317c1e1c359257a
|
|
| MD5 |
928fd5f4b9e00835949904f956ddc100
|
|
| BLAKE2b-256 |
2508a771189f8d9166e5c2d6b3fdd8b11137a3b91b7330b3c24a1ffac97ef323
|
Provenance
The following attestation bundles were made for whl_deploy-0.0.5.tar.gz:
Publisher:
python-publish.yaml on wheelos-tools/whl-deploy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
whl_deploy-0.0.5.tar.gz -
Subject digest:
0252f9e2b6d67beee8d8b83e294abd8ef2ce43e90cf63a6c7317c1e1c359257a - Sigstore transparency entry: 747154022
- Sigstore integration time:
-
Permalink:
wheelos-tools/whl-deploy@ca9a2bc826cd80873900e22530fdb3c51f61aec7 -
Branch / Tag:
refs/tags/v0.0.5 - Owner: https://github.com/wheelos-tools
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yaml@ca9a2bc826cd80873900e22530fdb3c51f61aec7 -
Trigger Event:
release
-
Statement type:
File details
Details for the file whl_deploy-0.0.5-py3-none-any.whl.
File metadata
- Download URL: whl_deploy-0.0.5-py3-none-any.whl
- Upload date:
- Size: 52.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ff9906613633796013a3d70f8b76703ef15bac27221d610663381c6850caffbf
|
|
| MD5 |
39e4261d2b8856dd7731216792c1d518
|
|
| BLAKE2b-256 |
593037f6f9c2ae78ab6073ef34735b578078138baf5d7f5a1b01adb8661a4c0d
|
Provenance
The following attestation bundles were made for whl_deploy-0.0.5-py3-none-any.whl:
Publisher:
python-publish.yaml on wheelos-tools/whl-deploy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
whl_deploy-0.0.5-py3-none-any.whl -
Subject digest:
ff9906613633796013a3d70f8b76703ef15bac27221d610663381c6850caffbf - Sigstore transparency entry: 747154027
- Sigstore integration time:
-
Permalink:
wheelos-tools/whl-deploy@ca9a2bc826cd80873900e22530fdb3c51f61aec7 -
Branch / Tag:
refs/tags/v0.0.5 - Owner: https://github.com/wheelos-tools
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yaml@ca9a2bc826cd80873900e22530fdb3c51f61aec7 -
Trigger Event:
release
-
Statement type: