Compare commits

...
Sign in to create a new pull request.

9 commits

Author SHA1 Message Date
cefc2ca8a7 Install platform node before setting up lts version
Some checks failed
/ test (push) Failing after 32s
2024-10-23 09:55:13 +02:00
649d52755e Use setup-node
Some checks failed
/ test (push) Failing after 23s
2024-10-23 09:31:51 +02:00
8c70a32c7b Revert "Use ubuntu-latest"
This reverts commit 34d48dea39.
2024-10-23 09:09:13 +02:00
34d48dea39 Use ubuntu-latest
Some checks failed
/ test (push) Has been cancelled
2024-10-23 09:07:58 +02:00
9972f38651 Revert "Use python image for tests"
Some checks failed
/ test (push) Failing after 9s
This reverts commit f9a4aff0b4.
2024-10-23 08:31:31 +02:00
f9a4aff0b4 Use python image for tests
Some checks failed
/ test (push) Failing after 42s
2024-10-23 08:24:56 +02:00
b34737ef20 Add tests workflow
Some checks failed
/ test (push) Failing after 5s
2024-10-22 22:31:20 +02:00
1f3594d5db Add test workflow
All checks were successful
/ test (push) Successful in 34s
2024-10-22 21:45:04 +02:00
11b553784c Remove gitlab CI configuration 2024-10-22 21:44:57 +02:00
7 changed files with 63 additions and 94 deletions

View file

@ -0,0 +1,62 @@
on: [ push ]
env:
POSTGRES_HOST: "postgres"
POSTGRES_DB: "newsreader"
POSTGRES_USER: "newsreader"
POSTGRES_PASSWORD: "newsreader"
jobs:
test:
runs-on: docker
services:
postgres:
image: postgres:15
env:
POSTGRES_HOST: "${{ env.POSTGRES_HOST }}"
POSTGRES_DB: "${{ env.POSTGRES_NAME }}"
POSTGRES_NAME: "${{ env.POSTGRES_NAME }}"
POSTGRES_USER: "${{ env.POSTGRES_USER }}"
POSTGRES_PASSWORD: "${{ env.POSTGRES_PASSWORD }}"
memcached:
image: memcached:1.5.22
steps:
- run: apt-get --yes update && apt-get --yes install nodejs git
- uses: actions/setup-node@v4
with:
node-version: 'lts/*'
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- uses: actions/cache@v4
with:
path: "${{ GITHUB_WORKSPACE }}/.cache/uv"
key: ${{ runner.os }}-uv-${{ hashFiles('uv.lock') }}
restore-keys: |
${{ runner.os }}-uv-
- uses: actions/cache@v4
with:
path: "${{ GITHUB_WORKSPACE }}/.cache/pip"
key: ${{ runner.os }}-pip-
restore-keys: |
${{ runner.os }}-pip-
- run: pip install uv
env:
PIP_CACHE_DIR: "${{ GITHUB_WORKSPACE }}/.cache/pip"
- run: uv sync --extra testing --extra ci
env:
UV_CHACHE_DIR: "${{ GITHUB_WORKSPACE }}/.cache/uv"
- run: ./.venv/bin/coverage run ./src/manage.py test newsreader
env:
DJANGO_SETTINGS_MODULE: "newsreader.conf.ci"
POSTGRES_HOST: "${{ env.POSTGRES_HOST }}"
POSTGRES_DB: "${{ env.POSTGRES_NAME }}"
POSTGRES_NAME: "${{ env.POSTGRES_NAME }}"
POSTGRES_USER: "${{ env.POSTGRES_USER }}"
POSTGRES_PASSWORD: "${{ env.POSTGRES_PASSWORD }}"

View file

@ -1,29 +0,0 @@
stages:
- build
- test
- lint
- release
variables:
UV_CACHE_DIR: "$CI_PROJECT_DIR/.cache/uv"
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
DJANGO_SETTINGS_MODULE: "newsreader.conf.gitlab"
POSTGRES_HOST: "$POSTGRES_HOST"
POSTGRES_DB: "$POSTGRES_NAME"
POSTGRES_NAME: "$POSTGRES_NAME"
POSTGRES_USER: "$POSTGRES_USER"
POSTGRES_PASSWORD: "$POSTGRES_PASSWORD"
cache:
key: "$CI_COMMIT_REF_SLUG"
paths:
- .cache/pip
- .cache/uv
- node_modules/
- .venv/
include:
- local: '/gitlab-ci/build.yml'
- local: '/gitlab-ci/test.yml'
- local: '/gitlab-ci/lint.yml'
- local: '/gitlab-ci/release.yml'

View file

@ -1,7 +0,0 @@
static:
stage: build
image: node:lts
before_script:
- npm install
script:
- npm run build

View file

@ -1,25 +0,0 @@
python-linting:
stage: lint
image: python:3.11
before_script:
- pip install uv
- uv sync --extra testing --extra ci
script:
- ./.venv/bin/ruff check src/
- ./.venv/bin/ruff format --check src/
only:
refs:
- main
- merge_requests
javascript-linting:
stage: lint
image: node:lts
before_script:
- npm install
script:
- npm run lint
only:
refs:
- main
- merge_requests

View file

@ -1,12 +0,0 @@
release:
stage: release
image: registry.gitlab.com/gitlab-org/release-cli:latest
rules:
- if: $CI_COMMIT_TAG
script:
- echo 'running release job'
release:
name: 'Release $CI_COMMIT_TAG'
description: './CHANGELOG.md'
tag_name: '$CI_COMMIT_TAG'
ref: '$CI_COMMIT_TAG'

View file

@ -1,20 +0,0 @@
python-tests:
stage: test
coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/'
services:
- postgres:15
- memcached:1.5.22
image: python:3.11
before_script:
- pip install uv
- uv sync --extra testing --extra ci
script:
- ./.venv/bin/coverage run ./src/manage.py test newsreader
javascript-tests:
stage: test
image: node:lts
before_script:
- npm install
script:
- npm test

View file

@ -33,7 +33,7 @@ CACHES = {
# Project settings
VERSION = get_current_version()
ENVIRONMENT = "gitlab"
ENVIRONMENT = "ci"
try:
# Optionally use sentry integration