Skip to main content

Deployment configuration tool for Octopize Avatar platform

Project description

Octopize Avatar Deployment Tool

Automated configuration tool for deploying Octopize Avatar platform using Docker Compose.

Quick Start

# Install
pip install octopize-avatar-deploy

# Run interactive configuration
octopize-avatar-deploy --output-dir /app/avatar

# Deploy
cd /app/avatar
docker compose down --volumes --remove-orphans  # Clean old containers if redeploying
docker compose up -d

Usage Options

Interactive Mode (Default)

octopize-avatar-deploy --output-dir /app/avatar

Non-Interactive Mode

# Create config file
cat > config.yaml << EOF
PUBLIC_URL: avatar.example.com
ENV_NAME: prod
ORGANIZATION_NAME: MyCompany
EOF

# Run with config
octopize-avatar-deploy --output-dir /app/avatar --config config.yaml --non-interactive

Command Line Options

--output-dir DIR           Output directory (default: current directory)
--config FILE              YAML configuration file
--non-interactive          Non-interactive mode (requires config file)
--template-from PATH       Use local templates instead of downloading from GitHub
--save-config              Save configuration to deployment-config.yaml
--verbose                  Show detailed output

What Gets Generated

/app/avatar/
├── .env                            # Environment configuration
├── docker-compose.yml              # Docker services
├── nginx/nginx.conf                # Nginx config
├── authentik/
│   ├── octopize-avatar-blueprint.yaml
│   ├── custom-templates/           # Email templates
│   └── branding/                   # Logo, favicon, background
└── .secrets/                       # Generated secrets (22 files)

Deployment Steps

  1. Generate configuration:

    octopize-avatar-deploy --output-dir /app/avatar
    
  2. Review generated files:

    cd /app/avatar
    cat .env
    ls -la .secrets/
    
  3. Add TLS certificates (production):

    mkdir -p tls
    cp /path/to/fullchain.pem tls/
    cp /path/to/privkey.pem tls/
    
  4. Start services:

    docker compose down --volumes --remove-orphans
    docker compose up -d
    
  5. Verify deployment:

    docker compose ps
    docker compose logs -f
    curl https://avatar.example.com/api/health
    

Troubleshooting

"bind source path does not exist" error

Old containers from previous deployment. Solution:

docker compose down --volumes --remove-orphans
docker compose up -d

Templates not downloading

rm -rf .avatar-templates/
octopize-avatar-deploy --output-dir /app/avatar --verbose

Development

# Clone
git clone https://github.com/octopize/avatar-deployment
cd avatar-deployment/deployment-tool

# Install dependencies
just install

# Run tests
just test-all

# Run locally
just run-interactive-local

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

octopize_deploy_tool-0.4.0.tar.gz (4.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

octopize_deploy_tool-0.4.0-py3-none-any.whl (35.7 kB view details)

Uploaded Python 3

File details

Details for the file octopize_deploy_tool-0.4.0.tar.gz.

File metadata

  • Download URL: octopize_deploy_tool-0.4.0.tar.gz
  • Upload date:
  • Size: 4.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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

Hashes for octopize_deploy_tool-0.4.0.tar.gz
Algorithm Hash digest
SHA256 677d608fbee269ba0c3bc09aed4674aa3845ef1a3d3754737fb00be360b50283
MD5 8d5a6dd7954c4e209fa03d317b00dec8
BLAKE2b-256 466b34514ab82defd183266e2846fca645f9f740b714dc189e5de0f0c90eb3a1

See more details on using hashes here.

File details

Details for the file octopize_deploy_tool-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: octopize_deploy_tool-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 35.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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

Hashes for octopize_deploy_tool-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 97047b5f15ece0eb357b8358107002043987b0942e0e46e3c59384daca2f7aa2
MD5 9c0a45f69699119614d89f19c5ed2f05
BLAKE2b-256 88fbb4b2ceaea786f5383efce23255c0da08c430ea8600103b30b0f756791a1d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page