Deployment configuration tool for Octopize Avatar platform
Project description
Octopize Avatar Deployment Tool
octopize-deploy-tool generates the configuration files needed to run the Octopize Avatar platform with Docker Compose. It can also generate component-specific .env files for local development workflows.
Installation
Install the published package:
pip install octopize-deploy-tool
Then verify the CLI is available:
octopize-deploy-tool --help
Quick Start
Generate a Docker deployment configuration interactively:
octopize-deploy-tool deploy --output-dir /app/avatar
Then start the deployment:
cd /app/avatar
docker compose down --volumes --remove-orphans
docker compose up -d
Commands
The CLI has two explicit subcommands:
octopize-deploy-tool deploy [options]
octopize-deploy-tool generate-env [options]
Running the CLI without a subcommand is not supported.
deploy
Use deploy to generate a full Docker Compose deployment.
Example:
octopize-deploy-tool deploy --output-dir /app/avatar
Common deploy options:
--output-dir DIR Output directory for generated files
--config FILE YAML configuration file to load
--non-interactive Run without prompts, using config/defaults
--template-from PATH Use a local template directory instead of the default source
--save-config Save the resolved configuration to deployment-config.yaml
--verbose Show detailed progress output
--mode {production,dev} Generate production or dev deployment assets
generate-env
Use generate-env to create per-component .env files for local development without generating the full deployment bundle.
Example:
octopize-deploy-tool generate-env \
--component api \
--api-output-path ./avatar-local/api/.env \
--component web \
--web-output-path ./avatar-local/web/.env
Common generate-env options:
--config FILE YAML configuration file to load
--non-interactive Run without prompts, using config/defaults
--template-from PATH Use a local template directory instead of the default source
--verbose Show detailed progress output
--component NAME Generate only the selected component (repeatable; defaults to all)
--api-output-path PATH Override the API env output path for this run
--web-output-path PATH Override the web env output path for this run
--python-client-output-path PATH
Override the python_client env output path for this run
--output-path COMPONENT=PATH
Repeatable generic output-path override
--target NAME Load named URLs from the environments config section
--api-url URL Override the API URL
--storage-url URL Override the storage public URL
--sso-url URL Override the SSO provider URL
Non-Interactive Usage
You can provide configuration through a YAML file:
PUBLIC_URL: avatar.example.com
ENV_NAME: prod
ORGANIZATION_NAME: MyCompany
Then run:
octopize-deploy-tool deploy \
--output-dir /app/avatar \
--config config.yaml \
--non-interactive
Generated Files
The deploy command typically writes:
/app/avatar/
├── .env
├── docker-compose.yml
├── nginx/nginx.conf
├── authentik/
│ ├── octopize-avatar-blueprint.yaml
│ ├── custom-templates/
│ └── branding/
└── .secrets/
The generate-env command writes component env files directly to their resolved destinations, for example:
./avatar-local/
├── api/.env
└── web/.env
Typical Deployment Workflow
-
Generate configuration:
octopize-deploy-tool deploy --output-dir /app/avatar
-
Review the generated files:
cd /app/avatar cat .env ls -la .secrets/
-
Add any required TLS certificates for production.
-
Start the services:
docker compose up -d
-
Verify the deployment:
docker compose ps docker compose logs -f
Troubleshooting
Templates fail to download or validate
Retry with verbose output:
octopize-deploy-tool deploy --output-dir /app/avatar --verbose
Existing containers cause bind-mount or startup issues
Clean up old containers and volumes before retrying:
docker compose down --volumes --remove-orphans
docker compose up -d
Further Information
- Project repository: https://github.com/octopize/avatar-deployment
- Deployment documentation: https://docs.octopize.io/docs/deploying/self-hosted
Project details
Release history Release notifications | RSS feed
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 octopize_deploy_tool-1.4.0.tar.gz.
File metadata
- Download URL: octopize_deploy_tool-1.4.0.tar.gz
- Upload date:
- Size: 368.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.5 {"installer":{"name":"uv","version":"0.11.5","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f5adcac18bef041caf3151ac00ffa38a0a09d1e0cddaf960d8a74d5af2604ca6
|
|
| MD5 |
e6c40f1ea649937b69b36f5d2ac44b2a
|
|
| BLAKE2b-256 |
6faffc10472acdae80fa1eef71b7ed3bbaab3a0c31474cdb4d497ef0838cda09
|
File details
Details for the file octopize_deploy_tool-1.4.0-py3-none-any.whl.
File metadata
- Download URL: octopize_deploy_tool-1.4.0-py3-none-any.whl
- Upload date:
- Size: 60.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.5 {"installer":{"name":"uv","version":"0.11.5","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
434cdd0ee2da523096ab5c4cefd09eaa232c9af047b0cfcbf2a7d47a730250af
|
|
| MD5 |
5747116155653031f277b6c1b63aed08
|
|
| BLAKE2b-256 |
6ea0041963abe3ec8e35b8d3b493354e81bfb746a3d9960dbdd55db391a26c07
|