# PostgreSQL Unit Testing

name: PostgreSQL

on:
  push:
    branches-ignore:
      - l10*

  pull_request:
    branches-ignore:
      - l10*

jobs:
  
  test:
    runs-on: ubuntu-latest

    env:
      # Database backend configuration
      INVENTREE_DB_ENGINE: django.db.backends.postgresql
      INVENTREE_DB_NAME: inventree
      INVENTREE_DB_USER: inventree
      INVENTREE_DB_PASSWORD: password
      INVENTREE_DB_HOST: '127.0.0.1'
      INVENTREE_DB_PORT: 5432
      INVENTREE_DEBUG: info
      INVENTREE_MEDIA_ROOT: ./media
      INVENTREE_STATIC_ROOT: ./static

    services:
      postgres:
        image: postgres
        env:
          POSTGRES_USER: inventree
          POSTGRES_PASSWORD: password
        ports:
          - 5432:5432

    steps:
      - name: Checkout Code
        uses: actions/checkout@v2
      - name: Setup Python
        uses: actions/setup-python@v2
        with:
          python-version: 3.7
      - name: Install Dependencies
        run: |
          sudo apt-get install libpq-dev
          pip3 install invoke
          pip3 install psycopg2
          invoke install
      - name: Run Tests
        run: invoke test