Go to file
Daniel Schädler 85cff5ef85 Fix merged tournament sync schema in tests 2026-04-16 16:15:45 +02:00
app Fix merged tournament sync schema in tests 2026-04-16 16:15:45 +02: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 Merge origin/master into follower sync 2026-04-16 15:54:32 +02:00
db Fix merged tournament sync schema in tests 2026-04-16 16:15:45 +02:00
doc Add local manual leader follower stack 2026-04-16 10:40:28 +02:00
docker Copy lib into test image 2026-04-15 10:44:11 +02:00
e2e/lib Merge origin/master into follower sync 2026-04-15 16:43:38 +02:00
lib/local Document local-only helper folder 2026-04-15 10:24:25 +02:00
public Initial commit 2018-10-30 15:52:46 +01:00
script Add HTTP E2E render profiling 2026-04-15 09:56:33 +02:00
spec Sync beamer state to followers 2026-04-16 15:55:20 +02:00
.dockerignore Fix backend test image contents 2026-04-13 17:50:32 +02:00
.gitignore Add production blackbox e2e workflow 2026-04-11 15:39:13 +02:00
.gitlab-ci.yml Add missing tags 2026-04-15 18:29:12 +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 Move profiling out of prod image 2026-04-15 10:16:18 +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 Document leader follower sync flow 2026-04-16 10:26:11 +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-follow.yml Add local manual leader follower stack 2026-04-16 10:40:28 +02:00
docker-compose.blackbox.yml Move profiling out of prod image 2026-04-15 10:16:18 +02:00
docker-compose.yml Use production env (defined in Dockerfile) 2019-04-17 09:15:39 +02:00
tasks.py Add local manual leader follower stack 2026-04-16 10:40:28 +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

Leader/follower tournament sync docs:

Docker

Registry

You can find all our Dockerfiles in the docker directory. They depend on each other in the following order: production → test This means, to build test image, you have to build production image first and tag it with corresponding tag that is mentioned in FROM line in test 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/test -f docker/test/Dockerfile .

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

While developing, use test image as base container and mount root of this repository into /app to avoid rebuilding it over and over again.

Generate diagrams

$ rails diagram:all_with_engines