4cd2d4af2b
Test Browser Use CLI Install / uv pip install (ubuntu-latest) (push) Failing after 1s
Test Browser Use CLI Install / uvx browser-use from local wheel (push) Failing after 1s
Test Browser Use CLI Install / uvx browser-use[cli] from PyPI (push) Failing after 1s
package / pip-install-on-macos-latest-py-3.11 (push) Has been skipped
package / pip-install-on-macos-latest-py-3.13 (push) Has been skipped
package / pip-install-on-ubuntu-latest-py-3.11 (push) Has been skipped
package / pip-install-on-windows-latest-py-3.13 (push) Has been skipped
cloud_evals / trigger_cloud_eval_image_build (push) Failing after 1s
docker / build_publish_image (push) Failing after 1s
Test Browser Use CLI Install / browser-use skill sync (push) Failing after 1s
lint / code-style (push) Failing after 0s
lint / type-checker (push) Failing after 1s
package / pip-build (push) Failing after 1s
lint / syntax-errors (push) Failing after 3s
package / pip-install-on-ubuntu-latest-py-3.13 (push) Has been skipped
package / pip-install-on-windows-latest-py-3.11 (push) Has been skipped
test / ${{ matrix.test_filename }} (push) Has been skipped
test / evaluate-tasks (push) Has been skipped
test / setup-chromium (push) Failing after 2s
test / find_tests (push) Failing after 2s
Test Browser Use CLI Install / uv pip install (windows-latest) (push) Has been cancelled
Test Browser Use CLI Install / uv pip install (macos-latest) (push) Has been cancelled
59 lines
1.8 KiB
Bash
Executable File
59 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# Build script for browser-use base images
|
|
set -euo pipefail
|
|
|
|
# Configuration
|
|
REGISTRY="${DOCKER_REGISTRY:-browseruse}"
|
|
PLATFORMS="${PLATFORMS:-linux/amd64}"
|
|
PUSH="${PUSH:-false}"
|
|
|
|
# Build function
|
|
build_image() {
|
|
local name=$1
|
|
local dockerfile=$2
|
|
local build_args="${3:-}"
|
|
|
|
echo "[INFO] Building ${name}..."
|
|
|
|
local build_cmd="docker build"
|
|
local tag_args="-t ${REGISTRY}/${name}:latest -t ${REGISTRY}/${name}:$(date +%Y%m%d)"
|
|
|
|
# Use buildx for multi-platform or push
|
|
if [[ "$PLATFORMS" == *","* ]] || [ "$PUSH" = "true" ]; then
|
|
build_cmd="docker buildx build --platform=$PLATFORMS"
|
|
[ "$PUSH" = "true" ] && build_cmd="$build_cmd --push" || build_cmd="$build_cmd"
|
|
fi
|
|
|
|
$build_cmd $tag_args $build_args -f $dockerfile ..
|
|
}
|
|
|
|
# Main
|
|
cd "$(dirname "$0")"
|
|
|
|
# Parse arguments
|
|
while [[ $# -gt 0 ]]; do
|
|
case $1 in
|
|
--push) PUSH=true; shift ;;
|
|
--registry) REGISTRY="$2"; shift 2 ;;
|
|
--platforms) PLATFORMS="$2"; shift 2 ;;
|
|
--help)
|
|
echo "Usage: $0 [--push] [--registry REG] [--platforms P]"
|
|
exit 0 ;;
|
|
*) echo "Unknown option: $1"; exit 1 ;;
|
|
esac
|
|
done
|
|
|
|
# Create buildx builder if needed
|
|
if [[ "$PLATFORMS" == *","* ]] || [ "$PUSH" = "true" ]; then
|
|
docker buildx inspect browseruse-builder >/dev/null 2>&1 || \
|
|
docker buildx create --name browseruse-builder --use
|
|
docker buildx use browseruse-builder
|
|
fi
|
|
|
|
# Build images in order
|
|
build_image "base-system" "base-images/system/Dockerfile"
|
|
build_image "base-chromium" "base-images/chromium/Dockerfile" "--build-arg BASE_TAG=latest"
|
|
build_image "base-python-deps" "base-images/python-deps/Dockerfile" "--build-arg BASE_TAG=latest"
|
|
|
|
echo "[INFO] Build complete. Use: FROM ${REGISTRY}/base-python-deps:latest"
|