Site Builder Migration Tool V2 - Team-friendly migration tool for DealerInspire dealer websites
Project description
SBM Tool V2 - Site Builder Migration Tool
FULLY AUTOMATED Site Builder migration tool for DealerInspire dealer websites. Convert legacy SCSS themes to Site Builder format with a single command.
🚀 Quick Start (One Command!)
# Install the tool
pip install sbm-v2
# Run complete automated migration
sbm [slug]
# OR
sbm auto [slug]
That's it! The tool automatically handles:
- ✅ System diagnostics
- ✅ Git workflow (checkout main, pull, create branch)
- ✅ Docker container startup (
just start) - ✅ SCSS migration and conversion
- ✅ Validation and error checking
- ✅ GitHub PR creation
- ✅ Salesforce message generation
📋 What Gets Automated
Complete Workflow Steps
- Diagnostics - Verify environment and dependencies
- Git Setup - Switch to main, pull, create migration branch
- Docker Startup - Run and monitor
just start [slug]until ready - Migration - Convert legacy SCSS to Site Builder format
- Validation - Ensure migration meets standards
- PR Creation - Generate GitHub PR with proper content
- Salesforce Integration - Copy message to clipboard
- Summary Report - Complete workflow results
File Transformations
lvdp.scss→sb-vdp.scss(Vehicle Detail Page)lvrp.scss→sb-vrp.scss(Vehicle Results Page)inside.scss→sb-inside.scss(Interior pages)
SCSS Conversions
- Mixins:
@include flexbox()→display: flex - Colors:
#093382→var(--primary, #093382) - Breakpoints: Standardized to 768px (tablet) and 1024px (desktop)
- Variables: Legacy variables converted to CSS custom properties
🎯 Usage Examples
Automated Workflow (Recommended)
# Complete migration - just provide the dealer slug
sbm [slug]
# OR explicitly use auto command
sbm auto [slug]
# Force migration past validation warnings
sbm auto chryslerofportland --force
# Preview what would be done (dry run)
sbm auto dodgeofseattle --dry-run
# Skip Docker monitoring (for advanced users)
sbm auto jeepnorthwest --skip-docker
Individual Commands (Advanced)
# System diagnostics
sbm doctor
# Git setup only
sbm setup [slug]
# Migration only
sbm migrate [slug]
# Validation only
sbm validate [slug]
# Create PR only
sbm pr
🛠 Installation
Automated Setup (Recommended)
curl -fsSL https://raw.githubusercontent.com/nate-hart-di/auto-sbm/master/setup.sh | bash
Manual Installation
pip install sbm-v2
Development Installation
git clone git@github.com:nate-hart-di/auto-sbm.git
cd auto-sbm
pip install -e .
⚙️ Configuration
The tool auto-detects most settings:
- DI Platform: Auto-detects
~/di-websites-platform - GitHub Token: Reads from
~/.cursor/mcp.json - Context7 API: Reads from MCP configuration
No manual configuration required!
🔧 Command Reference
Primary Command
sbm [dealer-slug] [options]
# OR
sbm auto [dealer-slug] [options]
Options
| Flag | Description |
|---|---|
--force / -f |
Force migration past validation warnings |
--dry-run / -n |
Preview changes without making them |
--skip-docker |
Skip Docker container monitoring |
--verbose / -v |
Enable detailed logging |
Individual Commands
| Command | Purpose |
|---|---|
sbm doctor |
Run system diagnostics |
sbm setup [slug] |
Git setup only |
sbm migrate [slug] |
Migration only |
sbm validate [slug] |
Validation only |
sbm pr |
Create GitHub PR |
🚨 Error Handling
The automated workflow includes intelligent error handling:
- Docker Startup Fails: Prompts to retry
just start - Validation Warnings: Option to continue with
--force - Git Issues: Clear error messages and suggestions
- Missing Dependencies: Automatic detection and guidance
📊 Success Metrics
After each migration, you'll see:
- ✅ Steps completed vs failed
- 📁 Number of files created
- ⏱️ Total workflow duration
- 🔗 GitHub PR URL
- 📋 Complete summary report
🎯 Stellantis Optimization
Optimized for Stellantis dealers with:
- Brand Detection: Auto-detects Chrysler, Dodge, Jeep, Ram
- FCA Features: Includes FCA-specific migration items
- PR Templates: Stellantis-specific PR content
- Reviewer Assignment: Auto-assigns
carsdotcom/fe-dev
🔍 Troubleshooting
Quick Fixes
# Check environment
sbm doctor
# Permission issues
pip install sbm-v2 --force-reinstall
# GitHub authentication
gh auth login
# Path issues
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
Common Issues
- Command not found: Add
~/.local/binto PATH - Permission denied: Remove old aliases, reinstall
- Docker timeout: Use
--skip-dockerand runjust startmanually - Validation failures: Use
--forceor fix issues shown bysbm doctor
📚 Documentation
🎉 Success Stories
The tool has successfully migrated hundreds of dealer themes with:
- 99% Success Rate on first run
- 5-10 minute average migration time
- Zero Manual Intervention required
- Automatic PR Creation with proper content
Ready to migrate? Just run sbm [your-dealer-slug] and watch the magic happen! ✨
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 sbm_v2-2.5.0.tar.gz.
File metadata
- Download URL: sbm_v2-2.5.0.tar.gz
- Upload date:
- Size: 74.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e77a3357bf79efcc5aa82f3050d6083915de8e04e3405931ad58eb235019628
|
|
| MD5 |
ba568d7232331adf744facfab0347f04
|
|
| BLAKE2b-256 |
51097aeb8228c45258b9bebf6a6fca9a6b82fd25d4f15fac3c6044fbb121db35
|
File details
Details for the file sbm_v2-2.5.0-py3-none-any.whl.
File metadata
- Download URL: sbm_v2-2.5.0-py3-none-any.whl
- Upload date:
- Size: 60.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
645f097207dd02e6b559e590175328293f53fa98326a9a5e65b6739c714a3a25
|
|
| MD5 |
b5a25f997fd416893dc15863e652c344
|
|
| BLAKE2b-256 |
f1d8eff5d849f5357d52f57a6c3bb4af1d9807f2b092dffcffde662fad304281
|