|
| 1 | +#!/bin/bash |
| 2 | +# post-create.sh - One-time setup after container creation |
| 3 | +set -e |
| 4 | + |
| 5 | +echo "==========================================" |
| 6 | +echo "Sourcebot Dev Container: Post-Create Setup" |
| 7 | +echo "==========================================" |
| 8 | + |
| 9 | +cd /workspaces/sourcebot |
| 10 | + |
| 11 | +# 1. Initialize git submodules (in case initializeCommand didn't run) |
| 12 | +echo "" |
| 13 | +echo "[1/5] Initializing git submodules..." |
| 14 | +git submodule update --init --recursive |
| 15 | + |
| 16 | +# 2. Build Zoekt and install dependencies (uses Makefile) |
| 17 | +echo "" |
| 18 | +echo "[2/5] Building Zoekt and installing dependencies..." |
| 19 | +make |
| 20 | + |
| 21 | +echo "" |
| 22 | +echo "[3/5] Running database migrations..." |
| 23 | +yarn dev:prisma:migrate:dev |
| 24 | + |
| 25 | +echo "" |
| 26 | +echo "[4/5] Creating default config.json..." |
| 27 | +cat > config.json << 'EOF' |
| 28 | +{ |
| 29 | + "$schema": "https://raw.githubusercontent.com/sourcebot-dev/sourcebot/main/schemas/v3/index.json", |
| 30 | + "connections": { |
| 31 | + "github": { |
| 32 | + "type": "github", |
| 33 | + "repos": ["sourcebot-dev/sourcebot"] |
| 34 | + } |
| 35 | + } |
| 36 | +} |
| 37 | +EOF |
| 38 | + |
| 39 | +echo "" |
| 40 | +echo "[5/5] Configuring Claude Code to skip onboarding..." |
| 41 | +# Create or update ~/.claude.json to skip onboarding |
| 42 | +if [ -f ~/.claude.json ]; then |
| 43 | + # Update existing file |
| 44 | + node -e "const fs=require('fs');const cfg=JSON.parse(fs.readFileSync('$HOME/.claude.json','utf8'));cfg.hasCompletedOnboarding=true;fs.writeFileSync('$HOME/.claude.json',JSON.stringify(cfg,null,2));" |
| 45 | +else |
| 46 | + # Create minimal config with onboarding skipped |
| 47 | + cat > ~/.claude.json << 'EOF' |
| 48 | +{ |
| 49 | + "hasCompletedOnboarding": true |
| 50 | +} |
| 51 | +EOF |
| 52 | +fi |
| 53 | + |
| 54 | +echo "" |
| 55 | +echo "==========================================" |
| 56 | +echo "Post-create setup complete!" |
| 57 | +echo "" |
| 58 | +echo "To start the development server, run:" |
| 59 | +echo " yarn dev" |
| 60 | +echo "" |
| 61 | +echo "Services will be available at:" |
| 62 | +echo " - Web App: http://localhost:3000" |
| 63 | +echo " - Zoekt: http://localhost:6070" |
| 64 | +echo "==========================================" |
0 commit comments