Skip to content

install system dependencies #11

install system dependencies

install system dependencies #11

Workflow file for this run

name: CI Pipeline
on:
push:
branches:
- "@feature/unit_tests"
pull_request:
branches:
- "@feature/unit_tests"
permissions:
contents: write
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
# Backend Setup and Testing
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential python3-dev
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.9"
- name: Install Backend Dependencies
run: pip install -r requirements.txt
- name: Run Backend Unit Tests
run: |
pytest --html=report.html --self-contained-html --cov=. --cov-report=html
ls -R
- name: Debug Backend Report
run: |
echo "Checking if report.html exists"
if [ ! -f report.html ]; then
echo "report.html not found!"
exit 1
fi
# Frontend Setup and Testing
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: "19"
- name: Install Frontend Dependencies
working-directory: ./web
run: npm install
- name: Run Frontend Unit Tests
working-directory: ./web
run: npm run test
- name: Generate Frontend Coverage Report
working-directory: ./web
run: npm run test:coverage
- name: Prepare Report Directory
run: |
mkdir -p ./public/reports/frontend
mkdir -p ./public/reports/frontend/coverage
mv ./web/reports/test-report.html ./public/reports/frontend/
mv ./web/coverage/lcov-report/* ./public/reports/frontend/coverage/
mkdir -p ./public/reports/backend
mkdir -p ./public/reports/backend/coverage
mv report.html ./public/reports/backend/
mv htmlcov/* ./public/reports/backend/coverage/
# Deploy reports to GitHub Pages
- name: Deploy to GitHub Pages
if: success()
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public/reports