name: "CI" on: pull_request: branches: - "master" push: branches: - "master" jobs: test: name: "Testing with database: ${{ matrix.database }}" runs-on: "ubuntu-latest" strategy: fail-fast: false matrix: database: - "default" - "sqlite" - "mariadb" - "postgresql" steps: - name: "Checkout" uses: actions/checkout@v5 with: fetch-depth: 2 - name: Set up Python uses: actions/setup-python@v6 with: python-version: 3.11 - name: "Build image" run: docker compose -f tests/docker-compose.${{ matrix.database }}.yml build - name: "Install dependencies" run: pip install pytest pytest-docker requests - name: "Run tests" run: py.test --database=${{ matrix.database }} tests/ - name: "Get docker logs" if: ${{ always() }} run: docker compose -p "wallabag_${{ matrix.database }}" -f tests/docker-compose.${{ matrix.database }}.yml logs wallabag - name: "Cleanup environment" if: ${{ always() }} run: docker compose -p "wallabag_${{ matrix.database }}" -f tests/docker-compose.${{ matrix.database }}.yml down -v