name: Install and CLI Compatibility on: workflow_call: env: DOCKER_IMAGE: archivebox-ci ARCHIVEBOX_IMAGE: archivebox-ci PYTHONIOENCODING: utf-8 PYTHONLEGACYWINDOWSSTDIO: utf-8 USE_COLOR: False UV_NO_SOURCES: "1" jobs: install_cli_platform: name: CLI install / ${{ matrix.os_name }} / Python ${{ matrix.python }} runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: include: - os: ubuntu-24.04 os_name: linux python: "3.14" - os: macos-15 os_name: macOS python: "3.13" - os: macos-15 os_name: macOS python: "3.14" steps: - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4 with: submodules: true fetch-depth: 1 ### Set up Python - name: Set up Python ${{ matrix.python }} uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5 with: python-version: ${{ matrix.python }} - name: Install uv uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7 with: version: "0.11.3" enable-cache: false cache-dependency-glob: uv.lock - name: Install dependencies with uv run: uv sync --no-cache --locked --dev - name: ArchiveBox full install check run: | set -Eeuo pipefail DATA_DIR="$PWD/tests/out/data" mkdir -p "$DATA_DIR" uv run --no-cache --directory "$DATA_DIR" --no-sync --no-sources archivebox init uv run --no-cache --directory "$DATA_DIR" --no-sync --no-sources archivebox install uv run --no-cache --directory "$DATA_DIR" --no-sync --no-sources archivebox version uv run --no-cache --directory "$DATA_DIR" --no-sync --no-sources archivebox status