mirror of https://github.com/CIRCL/lookyloo
107 lines
2.9 KiB
YAML
107 lines
2.9 KiB
YAML
name: Run local instance of lookyloo to test that current repo
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
|
|
jobs:
|
|
splash-container:
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Set up Python ${{matrix.python-version}}
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: ${{matrix.python-version}}
|
|
|
|
- name: Install poetry
|
|
run: pipx install poetry
|
|
|
|
- name: Clone Redis
|
|
uses: actions/checkout@v4
|
|
with:
|
|
repository: redis/redis
|
|
path: redis-tmp
|
|
ref: 7.2
|
|
|
|
- name: Install and setup redis
|
|
run: |
|
|
mv redis-tmp ../redis
|
|
pushd ..
|
|
pushd redis
|
|
make
|
|
popd
|
|
popd
|
|
|
|
- name: Install system deps
|
|
run: |
|
|
sudo apt install libfuzzy-dev libmagic1
|
|
# playwright required deps.
|
|
# sudo apt install libnss3 libnspr4 libatk1.0-0 libatk-bridge2.0-0 libcups2 libxkbcommon0 libxdamage1 libgbm1 libpango-1.0-0 libcairo2 libatspi2.0-0
|
|
|
|
- name: Clone uwhoisd
|
|
uses: actions/checkout@v4
|
|
with:
|
|
repository: Lookyloo/uwhoisd
|
|
path: uwhoisd-tmp
|
|
|
|
- name: Install uwhoisd
|
|
run: |
|
|
sudo apt install whois
|
|
mv uwhoisd-tmp ../uwhoisd
|
|
pushd ..
|
|
pushd uwhoisd
|
|
poetry install
|
|
echo UWHOISD_HOME="'`pwd`'" > .env
|
|
poetry run start
|
|
popd
|
|
popd
|
|
|
|
|
|
- name: Install & run lookyloo
|
|
run: |
|
|
echo LOOKYLOO_HOME="'`pwd`'" > .env
|
|
cp config/generic.json.sample config/generic.json
|
|
cp config/modules.json.sample config/modules.json
|
|
cp config/takedown_filters.ini.sample config/takedown_filters.ini
|
|
poetry install -vvv
|
|
poetry run playwright install-deps
|
|
poetry run playwright install
|
|
poetry run tools/validate_config_files.py --check
|
|
poetry run tools/validate_config_files.py --update
|
|
poetry run tools/3rdparty.py
|
|
jq '.UniversalWhois.enabled = true' config/modules.json > temp.json && mv temp.json config/modules.json
|
|
poetry run start
|
|
|
|
- name: Clone PyLookyloo
|
|
uses: actions/checkout@v4
|
|
with:
|
|
repository: Lookyloo/PyLookyloo
|
|
path: PyLookyloo
|
|
|
|
- name: Install pylookyloo and run test
|
|
run: |
|
|
pushd PyLookyloo
|
|
poetry install
|
|
poetry run python -m pytest tests/testing_github.py
|
|
popd
|
|
|
|
- name: Stop instance
|
|
run: |
|
|
poetry run stop
|
|
|
|
- name: Logs
|
|
if: ${{ always() }}
|
|
run: |
|
|
find -wholename ./logs/*.log -exec cat {} \;
|
|
find -wholename ./website/logs/*.log -exec cat {} \;
|