tubesync/.github/workflows/ci.yaml

48 lines
1.4 KiB
YAML
Raw Normal View History

2020-12-13 05:42:28 +00:00
name: Run Django tests for TubeSync
2020-12-13 06:39:04 +00:00
2020-12-13 07:10:32 +00:00
env:
IMAGE_NAME: tubesync
2020-12-13 05:42:28 +00:00
on:
push:
branches:
2020-12-13 05:49:10 +00:00
- main
2020-12-13 05:42:28 +00:00
pull_request:
branches:
2020-12-13 05:49:10 +00:00
- main
2020-12-13 05:42:28 +00:00
jobs:
2020-12-13 07:02:34 +00:00
test:
2020-12-13 05:42:28 +00:00
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.7, 3.8, 3.9]
steps:
- uses: actions/checkout@v2
- name: Install Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pipenv
pipenv install --system
- name: Set up Django environment
run: cp tubesync/tubesync/local_settings.py.example tubesync/tubesync/local_settings.py
2020-12-13 05:42:28 +00:00
- name: Run Django tests
2020-12-13 05:54:08 +00:00
run: cd tubesync && python3 manage.py test --verbosity=2
2020-12-13 07:04:14 +00:00
containerise:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Build the container image
run: docker buildx build --platform linux/arm/v7,linux/arm64/v8,linux/amd64 --tag $IMAGE_NAME .
2020-12-13 07:04:14 +00:00
- name: Log into GitHub Container Registry
run: echo "${{ secrets.REGISTRY_ACCESS_TOKEN }}" | docker login https://ghcr.io -u ${{ github.actor }} --password-stdin
- name: Push image to GitHub Container Registry
run: |
LATEST_TAG=ghcr.io/meeb/$IMAGE_NAME:latest
docker tag $IMAGE_NAME $LATEST_TAG
docker push $LATEST_TAG