diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 700744ea..2633e39d 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -23,14 +23,6 @@ cd ArchiveBox pip install -e '.[dev]' # or use: pipenv install --dev ``` -### Running Tests - -```bash -./bin/test.sh -``` - -For more common tasks see the `Development` section at the bottom of the README. - ### Getting Help Open issues on Github or message me https://sweeting.me/#contact. diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index cf595a21..00000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,148 +0,0 @@ -name: Run tests -on: [push] - -env: - DOCKER_IMAGE: archivebox-ci - PYTHONIOENCODING: utf-8 - PYTHONLEGACYWINDOWSSTDIO: utf-8 - USE_COLOR: False - -jobs: - python_tests: - runs-on: ${{ matrix.os }} - - strategy: - matrix: - os: [ubuntu-20.04, macos-latest, windows-latest] - python: [3.9] - - steps: - - uses: actions/checkout@v2 - with: - submodules: true - fetch-depth: 1 - - ### Setup Python & JS Languages - - name: Set up Python ${{ matrix.python }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python }} - architecture: x64 - - - name: Set up Node JS 14.7.0 - uses: actions/setup-node@v3 - with: - node-version: 18.12.0 - - - name: Setup PDM - uses: pdm-project/setup-pdm@v3 - - ### Install Python & JS Dependencies - - name: Get pip cache dir - id: pip-cache - run: | - echo "::set-output name=dir::$(pip cache dir)" - - - name: Cache pip - uses: actions/cache@v2 - id: cache-pip - with: - path: ${{ steps.pip-cache.outputs.dir }} - key: ${{ runner.os }}-${{ matrix.python }}-venv-${{ hashFiles('setup.py') }} - restore-keys: | - ${{ runner.os }}-${{ matrix.python }}-venv- - - - name: Install pip dependencies - run: | - python -m pip install --upgrade pip setuptools wheel pytest bottle build - pdm install - - - name: Get npm cache dir - id: npm-cache - run: | - echo "::set-output name=dir::$GITHUB_WORKSPACE/node_modules" - - - name: Cache npm - uses: actions/cache@v2 - id: cache-npm - with: - path: ${{ steps.npm-cache.outputs.dir }} - key: ${{ runner.os }}-node_modules-${{ hashFiles('package-lock.json') }} - restore-keys: | - ${{ runner.os }}-node_modules - - - name: Install npm requirements - run: | - npm install - echo "SINGLEFILE_BINARY=$GITHUB_WORKSPACE/node_modules/.bin/single-file" >> $GITHUB_ENV - echo "READABILITY_BINARY=$GITHUB_WORKSPACE/node_modules/.bin/readability-extractor" >> $GITHUB_ENV - echo "MERCURY_BINARY=$GITHUB_WORKSPACE/node_modules/.bin/mercury-parser" >> $GITHUB_ENV - - ### Run the tests - - name: Directory listing for debugging - run: | - pwd - ls - - - name: Archivebox version - run: | - archivebox version - - - name: Test built package with pytest - # TODO: remove this exception for windows once we get tests passing on that platform - if: ${{ !contains(matrix.os, 'windows') }} - run: | - python -m pytest -s --basetemp=tests/out --ignore=archivebox/vendor - - docker_tests: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - with: - submodules: true - fetch-depth: 1 - - # TODO: as of 2020-11 this helper layer broke, upgrade and re-enable this once it's usable again - # - uses: satackey/action-docker-layer-caching@v0.0.8 - - - name: Build image - run: | - docker build . -t "$DOCKER_IMAGE" - - - name: Init data dir - run: | - mkdir "${{ github.workspace }}/data" - docker run -v "${{ github.workspace }}/data":/data "$DOCKER_IMAGE" init - - - name: Run test server - run: | - sudo bash -c 'echo "127.0.0.1 www.test-nginx-1.local www.test-nginx-2.local" >> /etc/hosts' - docker run --name www-nginx -p 80:80 -d nginx - - - name: Add link - run: | - docker run -v "$PWD"/data:/data --network host "$DOCKER_IMAGE" add http://www.test-nginx-1.local - - - name: Add stdin link - run: | - echo "http://www.test-nginx-2.local" | docker run -i --network host -v "$PWD"/data:/data "$DOCKER_IMAGE" add - - - name: List links - run: | - docker run -v "$PWD"/data:/data "$DOCKER_IMAGE" list | grep -q "www.test-nginx-1.local" || { echo "The site 1 isn't in the list"; exit 1; } - docker run -v "$PWD"/data:/data "$DOCKER_IMAGE" list | grep -q "www.test-nginx-2.local" || { echo "The site 2 isn't in the list"; exit 1; } - - - name: Start docker-compose stack - run: | - docker-compose run archivebox init - docker-compose up -d - sleep 5 - curl --silent --location 'http://127.0.0.1:8000' | grep 'ArchiveBox' - curl --silent --location 'http://127.0.0.1:8000/static/admin/js/jquery.init.js' | grep 'window.django' - - - name: Check added urls show up in index - run: | - docker-compose run archivebox add 'http://example.com/#test_docker' --index-only - curl --silent --location 'http://127.0.0.1:8000' | grep 'http://example.com/#test_docker' - docker-compose down || true diff --git a/README.md b/README.md index 068310fc..34e8bce6 100644 --- a/README.md +++ b/README.md @@ -937,17 +937,6 @@ archivebox init --setup -#### Run the integration tests - -
Click to expand... - -```bash -./bin/test.sh -``` -(uses `pytest -s`) - -
- #### Make migrations or enter a django shell
Click to expand... diff --git a/bin/test.sh b/bin/test.sh deleted file mode 100755 index 8eb10b9e..00000000 --- a/bin/test.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/env bash - -### Bash Environment Setup -# http://redsymbol.net/articles/unofficial-bash-strict-mode/ -# https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html -# set -o xtrace -set -o errexit -set -o errtrace -set -o nounset -set -o pipefail -IFS=$'\n' - -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && cd .. && pwd )" - -source "$DIR/.venv/bin/activate" - -pytest -s --basetemp=tests/out --ignore=archivebox/vendor diff --git a/pyproject.toml b/pyproject.toml index b4d6aab2..63fb7eba 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -87,7 +87,6 @@ dev = [ ] [tool.pdm.scripts] -test = "./bin/test.sh" # all = {composite = ["lint mypackage/", "test -v tests/"]} [project.optional-dependencies]