Skip to content

Commit

Permalink
test: docker test (#60)
Browse files Browse the repository at this point in the history
* chore: Remove workflow as it's not really doing a lot

* chore: Some good practice updates to Dockerfile

* test: Run the docker processes that people need to be able to run
  • Loading branch information
marksweb authored Jan 13, 2024
1 parent a39c859 commit 674b444
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 63 deletions.
52 changes: 52 additions & 0 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Docker test suite

on:
push:
branches:
- main
pull_request:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true

jobs:
pytest:
name: Docker test build
# List of supported runners:
# https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Pre-build container images
run: |
docker network create djangocmsnet
docker compose build --force-rm
- name: Run the containers
run: |
docker compose build web
docker compose up database_default -d
sleep 2s
docker compose run web python manage.py migrate
docker compose up -d
- name: 'debug: Display state and logs'
if: always()
run: |
docker compose ps
docker compose logs web
docker compose logs database_default
- name: Execute django check
run: docker compose exec -w /app web python manage.py check --deploy

- name: Execute test suite
run: docker compose exec -w /app web python manage.py test

- name: Terminate all components
if: always()
run: docker compose down -v
61 changes: 0 additions & 61 deletions .github/workflows/pythonpackage.yml

This file was deleted.

10 changes: 8 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
FROM python:3.11

WORKDIR /app
COPY . /app
RUN pip install -r requirements.txt

COPY . .

RUN python -m pip install --upgrade pip
RUN python -m pip install -r requirements.txt

RUN python manage.py collectstatic --noinput

CMD uwsgi --http=0.0.0.0:80 --module=backend.wsgi

0 comments on commit 674b444

Please sign in to comment.