Go to file
Daniel Schädler 262696d37d Improve backend local invoke setup 2026-04-12 13:48:51 +02:00
app Syntax improvements 2025-03-16 12:41:47 +01:00
bin Update to rails 7.0.3 2022-05-19 09:08:36 +02:00
chart Add simple health check 2022-06-10 19:18:08 +02:00
config Make beta use production settings 2025-03-16 15:28:24 +01:00
db Add migration for timer 2025-03-09 21:27:38 +01:00
doc Regenerate SVGs 2018-11-30 14:20:57 +01:00
docker Switch invoke to dev image 2026-04-12 10:06:36 +02:00
e2e/lib Run backend E2E over HTTP 2026-04-11 13:40:12 +02:00
public Initial commit 2018-10-30 15:52:46 +01:00
script Remove temporary blackbox fallback tooling 2026-04-12 09:43:57 +02:00
spec Skip HTTP E2E outside dedicated env 2026-04-11 14:15:18 +02:00
.dockerignore Update to rails 7.0.3 2022-05-19 09:08:36 +02:00
.gitignore Add production blackbox e2e workflow 2026-04-11 15:39:13 +02:00
.gitlab-ci.yml Remove temporary blackbox fallback tooling 2026-04-12 09:43:57 +02:00
.rspec Initialize RSpec setup 2018-11-13 16:56:16 +01:00
.rubocop.yml Readd current version of rubocop 2021-08-15 14:29:11 +02:00
.ruby-version Update to ruby 3.1.2 2022-05-19 21:59:14 +02:00
AGENTS.md Remove temporary blackbox fallback tooling 2026-04-12 09:43:57 +02:00
Gemfile Install and configure rubyprof 2025-03-16 13:22:08 +01:00
Gemfile.lock Improve backend local invoke setup 2026-04-12 13:48:51 +02:00
README.md Add TODO file 2026-04-12 10:18:58 +02:00
Rakefile Apply rubocop formatting 2018-11-10 15:50:27 +01:00
config.ru Apply rubocop formatting 2018-11-10 15:50:27 +01:00
docker-compose.blackbox.yml Add production blackbox e2e workflow 2026-04-11 15:39:13 +02:00
docker-compose.yml Use production env (defined in Dockerfile) 2019-04-17 09:15:39 +02:00
tasks.py Improve backend local invoke setup 2026-04-12 13:48:51 +02:00

README.md

turniere-backend

Build Status pipeline status Coverage Status Codacy Badge Quality Gate Status Maintainability

Ruby on Rails application serving as backend for turnie.re

Quick install with Docker

turnie.re - Quickstart

Installation

# install dependencies
$ bundle config set with "development test"
$ bundle install
# run migrations
$ rails db:migrate

Running

Development (without mail confirmation and separate database):

$ RAILS_ENV=development rails server

Testing

Running tests works as follows:

bundle exec rspec

Docker

Registry

You can find all our Dockerfiles in the docker directory. They depend on each other in the following order: production → development → test This means, to build the development image, you have to build the production image first and tag it with the corresponding tag that is mentioned in the FROM line in the development Dockerfile. To build all images do:

cd turniere-backend
docker build -t registry.gitlab.com/turniere/turniere-backend/production -f docker/production/Dockerfile .
docker build -t registry.gitlab.com/turniere/turniere-backend/development -f docker/development/Dockerfile .
docker build -t registry.gitlab.com/turniere/turniere-backend/test -f docker/test/Dockerfile .

This is done to leave test and development dependencies out of the production container. Also we have a dedicated test container which runs the tests reproducible when you start it, but can also run the normal rails server to somewhat debug problems occuring in the test suite if needed.

While developing, if you want to use the development docker container, it should™ be sufficient to mount the root of this repository into the /app folder within the docker container to avoid building it over and over again. Only rebuilding the development container is not sufficient, as the development Dockerfile does not have a COPY Statement

Generate diagrams

$ rails diagram:all_with_engines