mirror of
https://github.com/aljazceru/CTFd.git
synced 2026-01-10 01:24:28 +01:00
68 lines
1.6 KiB
YAML
68 lines
1.6 KiB
YAML
---
|
|
name: CTFd CI
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
services:
|
|
postgres:
|
|
image: postgres
|
|
ports:
|
|
- 5432:5432
|
|
env:
|
|
POSTGRES_HOST_AUTH_METHOD: trust
|
|
POSTGRES_DB: ctfd
|
|
# Set health checks to wait until postgres has started
|
|
options: >-
|
|
--health-cmd pg_isready
|
|
--health-interval 10s
|
|
--health-timeout 5s
|
|
--health-retries 5
|
|
mysql:
|
|
image: mysql
|
|
ports:
|
|
- 3306:3306
|
|
redis:
|
|
image: redis
|
|
ports:
|
|
- 6379:6379
|
|
|
|
strategy:
|
|
matrix:
|
|
python-version: ['2.7', '3.6']
|
|
TESTING_DATABASE_URL: ['mysql+pymysql://root@localhost/ctfd', 'sqlite://', 'postgres://postgres@localhost/ctfd']
|
|
|
|
name: Python ${{ matrix.python-version }}
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Setup python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
architecture: x64
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
python -m pip install -r development.txt
|
|
sudo yarn install --non-interactive
|
|
sudo yarn global add prettier@1.17.0
|
|
sudo python3.6 -m pip install black==19.3b0
|
|
|
|
- name: Lint
|
|
run: make lint
|
|
|
|
- name: Test
|
|
run: |
|
|
sudo rm -f /etc/boto.cfg
|
|
make test
|
|
env:
|
|
AWS_ACCESS_KEY_ID: AKIAIOSFODNN7EXAMPLE
|
|
AWS_SECRET_ACCESS_KEY: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
|
|
|
|
- name: Coverage
|
|
run: codecov
|
|
|