Skip to content

v0.1.8

v0.1.8 #8

# GitHub Action workflow to build and run filecrawler's tests
#
name: PyPI Build filecrawler
on:
release:
types: [published]
jobs:
lint:
name: Check syntaxs errors and warnings
runs-on: ubuntu-latest
if:
github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
github.repository
steps:
- name: Checkout filecrawler
uses: actions/checkout@v3
- name: Setup Python 3.9
uses: actions/setup-python@v3
with:
python-version: 3.9
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8
- name: Check syntax errors
run: |
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
- name: Check PEP8 warnings
run: |
flake8 . --count --ignore=E1,E2,E3,E501,W291,W293 --exit-zero --max-complexity=65 --max-line-length=127 --statistics
build:
name: Build
needs: lint
runs-on: ubuntu-latest
if:
github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
github.repository
strategy:
fail-fast: false
matrix:
python-version: ["3.8", "3.9", "3.10"]
experimental: [false]
include:
- python-version: "3.11"
experimental: true
continue-on-error: ${{ matrix.experimental }}
steps:
- name: Checkout filecrawler
uses: actions/checkout@v3
- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip wheel
python -m pip install -r requirements.txt -r tests/requirements-test.txt
- name: Build artifact
run: |
python setup.py sdist
publish:
name: Publish on Live Environment
needs: build
runs-on: ubuntu-latest
if:
github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
github.repository
strategy:
fail-fast: false
matrix:
python-version: ["3.9"]
experimental: [false]
continue-on-error: ${{ matrix.experimental }}
steps:
- name: Checkout filecrawler
uses: actions/checkout@v3
- name: Install dependencies
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: wget curl jq
version: 1.0
- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip wheel
python -m pip install -r requirements.txt -r tests/requirements-test.txt
- name: Get tika server .jar
run: |
VER=$(curl -s "https://raw.githubusercontent.com/chrismattmann/tika-python/master/tika/tika.py" | grep 'TIKA_VERSION' | grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' || echo '2.6.0')
SERVER_HASH=$(curl -s "http://search.maven.org/remotecontent?filepath=org/apache/tika/tika-server-standard/$VER/tika-server-standard-$VER.jar.sha1")
wget -nv -O "./filecrawler/libs/bin/tika-server.jar" "http://search.maven.org/remotecontent?filepath=org/apache/tika/tika-server-standard/$VER/tika-server-standard-$VER.jar"
echo "${SERVER_HASH} ./filecrawler/libs/bin/tika-server.jar" | sha1sum -c - || exit 1
- name: Build artifact
run: |
python setup.py sdist
- name: Publish package in Live Environment
#if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.prod_pypi_password }}