fix: vendor-based Docker build, playwright upgrade, and CI cross-repo checkout
Some checks failed
Build and Push Docker Image / build (push) Failing after 34s

- Dockerfile now installs schwab-scraper from vendor/ dir (no git needed)
- Upgrade playwright to latest to match browserless chromium container
- CI workflow checks out schwab-scraper into vendor/ before build
- Add scripts/build.sh for local builds via docker-test
- Add curl to runtime image for compose healthcheck
- Increase memory limit to 512M for large account position scraping
This commit is contained in:
2026-04-25 01:16:55 +00:00
parent 9b453e5bb6
commit 61073b2b69
5 changed files with 56 additions and 21 deletions

37
scripts/build.sh Executable file
View File

@@ -0,0 +1,37 @@
#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
SCRAPER_DIR="/home/b3nw/projects/financial/schwab-scraper"
IMAGE="gitea.ext.ben.io/b3nw/schwab-mcp-custom:latest"
BUILD_HOST="${BUILD_HOST:-docker-test}"
cd "$PROJECT_DIR"
echo "==> Preparing vendor directory..."
rm -rf vendor/schwab-scraper
mkdir -p vendor/schwab-scraper
git -C "$SCRAPER_DIR" archive HEAD | tar -x -C vendor/schwab-scraper
echo "==> Syncing build context to $BUILD_HOST..."
rsync -az --delete \
--exclude '.venv' \
--exclude '.git' \
--exclude '__pycache__' \
--exclude 'cookies.json' \
--exclude 'config.json' \
--exclude '.env' \
"$PROJECT_DIR/" "$BUILD_HOST:/tmp/schwab-mcp-build/"
echo "==> Building Docker image on $BUILD_HOST..."
ssh "$BUILD_HOST" "cd /tmp/schwab-mcp-build && docker build -t $IMAGE ."
echo "==> Pushing image to registry..."
ssh "$BUILD_HOST" "docker push $IMAGE"
echo "==> Cleaning up..."
rm -rf vendor/schwab-scraper
ssh "$BUILD_HOST" "rm -rf /tmp/schwab-mcp-build"
echo "==> Done! Image pushed: $IMAGE"