Skip to content

CHORE: Password page template #3842

CHORE: Password page template

CHORE: Password page template #3842

Workflow file for this run

name: CI
on:
push:
branches:
- main
- "release/**"
pull_request:
env:
PYTHON_VERSION: "3.11"
POETRY_VERSION: "1.5.1"
jobs:
lint-python:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ env.PYTHON_VERSION }}
cache: "pip"
cache-dependency-path: "**/lint-requirements.txt"
- run: pip install -r lint-requirements.txt
- name: Check compliance with flake8
run: flake8 .
- name: Check compliance with isort
run: isort -c .
- name: Check compliance with Black
run: black etna config --check --fast
test-python:
runs-on: ubuntu-latest
needs: [lint-python]
env:
DJANGO_SETTINGS_MODULE: config.settings.test
DATABASE_ENGINE: django.db.backends.postgresql
DATABASE_NAME: postgres
DATABASE_USER: postgres
DATABASE_PASSWORD: postgres
DATABASE_HOST: localhost
DATABASE_PORT: 5432
services:
postgres:
image: postgres:12.3
env:
POSTGRES_USER: ${{ env.DATABASE_USER }}
POSTGRES_PASSWORD: ${{ env.DATABASE_PASSWORD }}
POSTGRES_DB: ${{ env.DATABASE_NAME }}
ports:
- 5432:5432
options: --health-cmd pg_isready --health-interval 1s --health-timeout 3s --health-retries 10
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ env.PYTHON_VERSION }}
- uses: snok/install-poetry@v1
with:
version: ${{ env.POETRY_VERSION }}
virtualenvs-create: true
virtualenvs-in-project: true
virtualenvs-path: .venv
- id: cached-poetry-dependencies
uses: actions/cache@v3
with:
path: .venv
key: ds-wagtail-venv-${{ runner.os }}-${{ env.POETRY_VERSION }}-${{ env.PYTHON_VERSION }}-${{ hashFiles('**/poetry.lock') }}
- name: Install dependencies
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
run: poetry install --no-interaction --no-root
- name: Run Django checks
run: poetry run python manage.py check
- name: Run test suite
run: poetry run coverage run manage.py test etna
- name: Prepare coverage report
run: poetry run coverage xml
- name: Check for missing migrations
run: poetry run python manage.py makemigrations --check --noinput
- name: Upload coverage report to Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
env_vars: OS,PYTHON_VERSION
fail_ci_if_error: true
move_coverage_to_trash: true
test-javascript:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install npm modules
run: npm install
- name: Run jest tests
run: npm test