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.6.0.tar.gz (5.2 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.6.0-py3-none-any.whl (42.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: octopize_deploy_tool-0.6.0.tar.gz
  • Upload date:
  • Size: 5.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","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.6.0.tar.gz
Algorithm Hash digest
SHA256 91e52a3f12e00ded882c5f399dfdb66012217b7ee3606370c72521df8e976660
MD5 d927edbc92b24df09a60bc08e8b3e341
BLAKE2b-256 5a01e08e5ede6f2d07c19937920f59ab6f02d891e3980545ba5c463835749574

See more details on using hashes here.

File details

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

File metadata

  • Download URL: octopize_deploy_tool-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 42.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","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.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f98166efb492ff22a846a4fd29ac4708426b42b2ee897e6a88ae1e3c56a118df
MD5 df256957d355190945144ff6b090f647
BLAKE2b-256 e51453b00dc0b96a15669ec1acb7545ef1aba645cf5612bdfe93dd005f3b388c

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