claude-configs/skills/deploy/SKILL.md
Cal Corum 8a1d15911f Initial commit: Claude Code configuration backup
Version control Claude Code configuration including:
- Global instructions (CLAUDE.md)
- User settings (settings.json)
- Custom agents (architect, designer, engineer, etc.)
- Custom skills (create-skill templates and workflows)

Excludes session data, secrets, cache, and temporary files per .gitignore.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-03 16:34:21 -06:00

4.1 KiB

name description
deploy Deploy Major Domo or Paper Dynasty services to production. Handles version bumping, Docker build/push, and production deployment. USE WHEN user says "deploy discord bot", "deploy database", "deploy major domo", "deploy paper dynasty", "release", "bump version and deploy", "/deploy", or wants to push a new version to production.

Deploy Services to Production

When to Activate This Skill

  • "Deploy discord bot" / "Deploy md-discord" / "Deploy pd-discord"
  • "Deploy database" / "Deploy md-database" / "Deploy pd-database"
  • "Deploy major domo" / "Deploy paper dynasty"
  • "Release new version"
  • "Bump version and deploy"
  • "/deploy" followed by service name
  • "Push to production"

Available Services

Service Project Docker Hub Host Production Path
md-discord Major Domo manticorum67/major-domo-discordapp akamai /root/container-data/major-domo
md-database Major Domo manticorum67/major-domo-database akamai /root/container-data/sba-database
pd-discord Paper Dynasty manticorum67/paper-dynasty-discordapp sba-bots /home/cal/container-data/paper-dynasty
pd-database Paper Dynasty manticorum67/paper-dynasty-database akamai /root/container-data/paper-dynasty

Quick Start

# Dry run (see what would happen)
~/.claude/skills/deploy/deploy.sh md-discord patch --dry-run
~/.claude/skills/deploy/deploy.sh pd-database minor --dry-run

# Actual deployment
~/.claude/skills/deploy/deploy.sh md-discord patch
~/.claude/skills/deploy/deploy.sh pd-database minor

Version Bump Types

Type Example When to Use
patch 2.28.3 → 2.28.4 Bug fixes, minor changes
minor 2.28.3 → 2.29.0 New features, backwards compatible
major 2.28.3 → 3.0.0 Breaking changes

Deployment Workflow

The script executes these steps automatically:

  1. Check git status - Warns about uncommitted changes
  2. Update VERSION - Increments based on bump type
  3. Build Docker image - Tags with version and latest
  4. Push to Docker Hub - Both version and latest tags
  5. Deploy to production - SSH to host, pull and restart
  6. Git commit & tag - Commits VERSION bump, creates git tag
  7. Verify - Shows running container status

Service Details

Major Domo Discord Bot (md-discord)

  • Local: /mnt/NV2/Development/major-domo/discord-app-v2
  • Container: major-domo-discord-app-1
  • Compose service: discord-app

Major Domo Database API (md-database)

  • Local: /mnt/NV2/Development/major-domo/database
  • Container: sba_db_api
  • Compose service: api

Paper Dynasty Discord Bot (pd-discord)

  • Local: /mnt/NV2/Development/paper-dynasty/discord-app
  • Host: sba-bots (10.10.0.88, user: cal)
  • Container: paper-dynasty_discord-app_1
  • Compose service: discord-app

Paper Dynasty Database API (pd-database)

  • Local: /mnt/NV2/Development/paper-dynasty/database
  • Host: akamai
  • Container: pd_api
  • Compose service: api

Important Notes

  • Always verify tests pass before deploying
  • Check git status is clean before starting
  • SSH session detection: Automatically disables BuildKit to avoid credential prompts
  • Dry run: Always available with --dry-run flag

Viewing Logs

# Major Domo Discord Bot
ssh akamai "docker logs major-domo-discord-app-1 --tail 100 -f"

# Major Domo Database API
ssh akamai "docker logs sba_db_api --tail 100 -f"

# Paper Dynasty Discord Bot
ssh sba-bots "docker logs paper-dynasty_discord-app_1 --tail 100 -f"

# Paper Dynasty Database API
ssh akamai "docker logs pd_api --tail 100 -f"

Rollback Procedure

If deployment fails, edit the docker-compose.yml on the production host to use a specific version tag:

# Example: rollback to previous version
image: manticorum67/major-domo-discordapp:2.28.2

Then pull and restart:

ssh HOST "cd PATH && docker compose pull SERVICE && docker compose up -d SERVICE"