3.9 KiB
3.9 KiB
Unattended Mode Quick Start
🚀 One-Command Installation
# Solo Developer (minimal setup)
provisioning-installer --unattended --config provisioning/config/installer-examples/solo.toml
# Team Collaboration
provisioning-installer --unattended --config provisioning/config/installer-examples/multi-user.toml
# CI/CD Pipeline
provisioning-installer --unattended --config provisioning/config/installer-examples/cicd.toml
# Enterprise Production
provisioning-installer --unattended --config provisioning/config/installer-examples/enterprise.toml
📋 Key Features
✅ Zero User Interaction - Completely automated ✅ Webhook Notifications - Real-time progress updates ✅ Failure Recovery - Automatic cleanup on errors ✅ Multi-Platform - Docker, Podman, Kubernetes, OrbStack
🔧 Basic Configuration
# my-config.toml
installation_id = "my-deployment"
verbose = false
fail_fast = true
cleanup_on_failure = true
[deployment]
platform = "Docker"
mode = "Solo"
domain = "localhost"
auto_generate_secrets = true
# Optional webhooks
[notifications]
webhook_url = "https://example.com/webhook"
notify_progress = true
notify_completion = true
notify_failure = true
🐳 Platform-Specific Commands
Docker
provisioning-installer --unattended --config config.toml
# Deploys using docker-compose
Kubernetes
provisioning-installer --unattended --config config.toml
# Deploys using kubectl apply
Podman
provisioning-installer --unattended --config config.toml
# Deploys using podman-compose
🤖 Kubernetes Self-Install
cd provisioning/extensions/taskservs/kubernetes
# Query MCP and install
./self-install.nu \
--mcp-url http://localhost:8084 \
--workspace production \
--infra k8s-cluster
# Generate sample config
./self-install.nu sample --output kubernetes-install.toml
# Dry-run (no installation)
./self-install.nu --dry-run
🔔 Webhook Integration
Slack
[notifications]
webhook_url = "https://hooks.slack.com/services/YOUR/WEBHOOK/URL"
Discord
[notifications]
webhook_url = "https://discord.com/api/webhooks/YOUR/WEBHOOK"
Custom API
[notifications]
webhook_url = "https://api.example.com/webhook"
[notifications.headers]
Authorization = "Bearer ${API_TOKEN}"
🔄 CI/CD Integration
GitHub Actions
- name: Deploy
run: |
provisioning-installer --unattended \
--config provisioning/config/installer-examples/cicd.toml
env:
WEBHOOK_URL: ${{ secrets.WEBHOOK_URL }}
GitLab CI
deploy:
script:
- provisioning-installer --unattended --config cicd.toml
Jenkins
sh 'provisioning-installer --unattended --config cicd.toml'
📊 Deployment Modes
| Mode | Services | Resources | Use Case |
|---|---|---|---|
| Solo | 5-7 | 2 CPU, 4GB | Development |
| MultiUser | 7-8 | 4 CPU, 8GB | Team collaboration |
| CICD | 8-10 | 8 CPU, 16GB | Automation |
| Enterprise | 15+ | 16 CPU, 32GB | Production |
🛠️ Troubleshooting
View Verbose Logs
provisioning-installer --unattended --config config.toml
# Edit config: verbose = true
Skip Cleanup on Failure
# Edit config: cleanup_on_failure = false
Continue on Errors
# Edit config: fail_fast = false
📚 Documentation
- Full Guide: UNATTENDED_MODE.md
- Implementation: IMPLEMENTATION_SUMMARY.md
- Examples:
provisioning/config/installer-examples/
🆘 Support
- Configuration issues: Check TOML syntax
- Webhook failures: Verify URL and authentication
- Platform errors: Check platform prerequisites
Quick Links: