Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
ecae93e
Initialer Zwischenstand zur Dockerisierung der Client Anwendung
nbennke May 27, 2025
0b60b2c
Use Default Actions
ro3t Jun 12, 2026
ed6699c
Image-Namen aus docker-compose service erzeugen
ro3t Jun 12, 2026
7113df8
Image-Namen vorgeben
ro3t Jun 12, 2026
1a30f75
Image-Namen aus docker-compose service erzeugen
ro3t Jun 12, 2026
dd744f6
latest-Tag beim docker-branch setzen
ro3t Jun 12, 2026
9238a13
latest-Tag beim docker-branch setzen
ro3t Jun 12, 2026
3c9af3c
latest-Tag beim docker-branch setzen
ro3t Jun 12, 2026
3c389d4
latest-Tag beim docker-branch setzen
ro3t Jun 12, 2026
4146010
reformat
ro3t Jun 12, 2026
72cb296
Service-Bezeichnung in docker-compose.yml vereinheitlicht
ro3t Jun 12, 2026
5aa1154
Resouces-Symlink erlauben
ro3t Jun 12, 2026
3a3fe1f
Ruby & Rails-Update
ro3t Jun 10, 2026
14fbd3c
Docker-Build-Branches erweitert
ro3t Jun 16, 2026
1573cd8
Ruby-Version
ro3t Jun 16, 2026
b77466c
Workflows nur ausführen wenn diese extra aufgerufen werden
ro3t Jun 16, 2026
81555dd
Fix: Stylesheet
ro3t Jun 16, 2026
4a97d4e
RefreshStaticJob ins Backoffice verschoben
ro3t Jun 19, 2026
65f74a9
nur `mri` Plattform unterstützt
nbennke Jun 22, 2026
5474f8e
Node Version aus Version File lesen
nbennke Jun 22, 2026
299cb9d
fix indent
nbennke Jun 22, 2026
b6187ef
fix codestyle nach auto correct
nbennke Jun 22, 2026
823c346
Introduce ApplicationResource base class and make ActiveResource mode…
nbennke Jun 22, 2026
0360c4c
nicht mehr notwendige Konfiguration entfernt
nbennke Jun 22, 2026
78946d0
test ohne Inhalt entfernt
nbennke Jun 24, 2026
43b21bc
Metrics/ClassLength für Tests deaktiviert
nbennke Jun 24, 2026
2b165ee
fix frozen string literal issue
nbennke Jun 24, 2026
1aa90b8
rubocop regeln angepasst
nbennke Jun 24, 2026
994652b
einfache Tests für Request Model Logiken ergänzt
nbennke Jun 24, 2026
fdb0b90
Structure Patch für ActiveResource CitySDK nach `/lib` verschoben und…
nbennke Jun 24, 2026
7ea8fb0
fix: rubocop issues
nbennke Jun 24, 2026
86b74ba
Builds mit zugehörigen Tags auf Master, PRs und Tags
nbennke Jun 25, 2026
62bcb0d
Merge branch 'docker' into updates
nbennke Jun 25, 2026
6bd4531
fix: uninitialized constant ActiveresourceCitysdkStructurePatch (Name…
nbennke Jun 25, 2026
6ff866b
Merge branch 'master' into updates
nbennke Jun 26, 2026
dfb614d
fix: Potential CSRF vulnerability due to forgery protection being dis…
nbennke Jun 26, 2026
e7277af
fix: Gems & Dependencies
nbennke Jun 26, 2026
3ef070f
fix: https://github.com/bfpi/klarschiff-client/security/code-scanning/6
nbennke Jun 26, 2026
0c5260b
bundle update --all
nbennke Jun 26, 2026
65d9859
drop custom CodeQL workflow while GitHub's default CodeQL setup is al…
nbennke Jun 26, 2026
7fc7123
fix: Docker build error:
nbennke Jun 26, 2026
309c461
fix syntax für BUNDLE_WITHOUT
nbennke Jun 26, 2026
7e6037c
Merge branch 'master' into updates
nbennke Jun 30, 2026
35c3aec
Apply suggestions from code review
nbennke Jun 30, 2026
9f6c169
Fix: wechsel zu Static Pages nach der Statistik-Seite
ro3t Jul 6, 2026
79e3749
ErbLint Issues
ro3t Jul 6, 2026
7c5f4b2
RuboCop Konfiguration
ro3t Jul 6, 2026
2eb11b8
RuboCop: Style/FrozenStringLiteralComment
ro3t Jul 6, 2026
ade7be4
RuboCop: Style/StringLiterals
ro3t Jul 6, 2026
6f02e47
RuboCop: Layout/EmptyLineAfterMagicComment
ro3t Jul 6, 2026
2ab2150
RuboCop: Style/StringConcatenation
ro3t Jul 6, 2026
d3ad5df
RuboCop: Layout/EmptyLineAfterGuardClause
ro3t Jul 6, 2026
f3be57c
RuboCop: Layout/EmptyLinesAroundClassBody
ro3t Jul 6, 2026
21f491d
RuboCop: Style/SpecialGlobalVars
ro3t Jul 6, 2026
0405f22
RuboCop: Layout/EmptyLinesAfterModuleInclusion
ro3t Jul 6, 2026
2ab9a69
RuboCop: Rails/ApplicationMailer
ro3t Jul 6, 2026
047a5ec
RuboCop: Style/InverseMethods
ro3t Jul 6, 2026
3111f17
RuboCop: Style/RedundantArgument
ro3t Jul 6, 2026
67e87ac
RuboCop: Layout/CommentIndentation
ro3t Jul 6, 2026
e31f2d8
RuboCop: Rails/Date
ro3t Jul 6, 2026
a29dfe6
RuboCop: Performance/StringIdentifierArgument
ro3t Jul 6, 2026
2265d49
RuboCop: Style/HashSyntax
ro3t Jul 6, 2026
9988687
RuboCop: Style/PercentLiteralDelimiters
ro3t Jul 6, 2026
1e3848f
RuboCop: Rails/Blank
ro3t Jul 6, 2026
2c51a73
RuboCop: Style/NumericPredicate
ro3t Jul 6, 2026
5c0b5b1
RuboCop: Style/SafeNavigation
ro3t Jul 6, 2026
a6c755f
RuboCop: Style/MapIntoArray
ro3t Jul 6, 2026
0a6cc13
RuboCop: Lint/AssignmentInCondition
ro3t Jul 6, 2026
f54428a
RuboCop: Lint/UselessOr
ro3t Jul 6, 2026
2d54cb1
RuboCop: Style/SymbolProc
ro3t Jul 6, 2026
4863898
RuboCop: Performance/Detect
ro3t Jul 6, 2026
666268e
RuboCop: Style/IfWithBooleanLiteralBranches
ro3t Jul 6, 2026
eb390ae
Merge branch 'master' into updates
ro3t Jul 6, 2026
102ed29
Pfad via `join`; false positive Brakeman issue ignoriert
nbennke Jul 6, 2026
4e34d32
use ignore file for brakeman
nbennke Jul 6, 2026
635fb42
Gems aktualisiert
ro3t Jul 6, 2026
5067066
Anpassung Rubcop Konfiguration: keine Leerzeile nach GuardClause erzw…
nbennke Jul 7, 2026
c52c60a
Deaktivierung ParseError Prüfung für ERBLint zur Vermeidung von False…
nbennke Jul 7, 2026
6148c7c
fix Lint/RescueException: Avoid rescuing the `Exception` class. Perha…
nbennke Jul 7, 2026
8b16ceb
fix Lint/ReturnInVoidContext: Do not return a value in `initialize`.
nbennke Jul 7, 2026
6234720
fix: Layout/LineLength: Line is too long.
nbennke Jul 7, 2026
7b98750
Revert "RuboCop: Rails/ApplicationMailer"
ro3t Jul 7, 2026
3177b23
Kamera bei Mobilgeräten anfordern
ro3t Jul 8, 2026
586c0b3
Fix RuboCop: Rails/ApplicationMailer
nbennke Jul 8, 2026
a40a6d8
Fix Layout/BlockAlignment & Indent
nbennke Jul 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .erb_lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
EnableDefaultLinters: true
glob: "**/*.{html,text,js}{+*,}.erb"
exclude:
- '**/vendor/**/*'
- '**/node_modules/**/*'
- 'app/views/*_mailer/*.text.erb'
linters:
ErbSafety:
enabled: true
ParserErrors:
enabled: false
Rubocop:
enabled: true
rubocop_config:
inherit_from:
- .rubocop.yml
Layout/InitialIndentation:
Enabled: false
Layout/LineLength:
Enabled: false
Layout/TrailingEmptyLines:
Enabled: false
Lint/UselessAssignment:
Enabled: false
Naming/VariableNumber:
Enabled: false
Style/FrozenStringLiteralComment:
Enabled: false
54 changes: 54 additions & 0 deletions .github/workflows/brakeman.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

# This workflow integrates Brakeman with GitHub's Code Scanning feature
# Brakeman is a static analysis security vulnerability scanner for Ruby on Rails applications

name: Brakeman Scan

on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '27 8 * * 5'

permissions:
contents: read

env:
RAILS_ENV: test

jobs:
brakeman-scan:
permissions:
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
name: Brakeman Scan
runs-on: ubuntu-latest
steps:
# Checkout the repository to the GitHub Actions runner
- name: Checkout
uses: actions/checkout@v6

# Customize the ruby version depending on your needs
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically

# Execute Brakeman CLI and generate a SARIF output with the security issues identified during the analysis
- name: Scan
continue-on-error: true
run: |
bundle exec brakeman --ignore-config config/brakeman.ignore --format sarif --output tmp/output.sarif.json

# Upload the SARIF file generated in the previous step
- name: Upload SARIF
uses: github/codeql-action/upload-sarif@v4
with:
sarif_file: tmp/output.sarif.json
18 changes: 18 additions & 0 deletions .github/workflows/lint-css.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Stylesheets

on:
- workflow_dispatch

permissions:
contents: read

jobs:
stylelint:
name: CSS files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version-file: '.nvmrc'
- run: bin/stylelint
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
23 changes: 23 additions & 0 deletions .github/workflows/lint-erb.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: ERB Templates

on:
- workflow_dispatch

permissions:
contents: read

env:
RAILS_ENV: test

jobs:
erblint:
name: ERB files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Run ERB Lint
run: bin/erblint
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
27 changes: 27 additions & 0 deletions .github/workflows/lint-js.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Javascripts

on:
- workflow_dispatch

permissions:
contents: read

jobs:
eslint:
name: Plain JS files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version-file: '.nvmrc'
- run: bin/eslint
coffeelint:
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
name: Coffee JS files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version-file: '.nvmrc'
- run: bin/coffeelint
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
23 changes: 23 additions & 0 deletions .github/workflows/rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: RuboCop

on:
- workflow_dispatch

permissions:
contents: read

env:
RAILS_ENV: test

jobs:
rubocop:
name: Run
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Run RuboCop
run: bin/rubocop
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
31 changes: 31 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Rails Tests

on:
- workflow_dispatch

env:
RAILS_ENV: test

permissions:
contents: read

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
submodules: true
- uses: actions/setup-node@v6
with:
node-version-file: '.nvmrc'
- run: yarn install
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Prepare Assets
run: bundle exec rails assets:precompile
- name: Run Rails Tests
run: bundle exec rails test -b -d
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed

66 changes: 66 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
plugins:
- rubocop-capybara
- rubocop-minitest
- rubocop-performance
- rubocop-rails

AllCops:
Exclude:
- 'bin/*'
- 'config/ci.rb'
- 'config.ru'
- 'db/schema.rb'
- 'Rakefile'
- 'vendor/**/**'
NewCops: enable

Layout/EmptyLineAfterGuardClause:
Enabled: false

Layout/SpaceInsideArrayLiteralBrackets:
Exclude: ['config/environments/*']

Metrics/BlockLength:
Exclude:
- 'config/routes.rb'

Metrics/ClassLength:
Exclude:
- 'test/**/*'

Minitest/EmptyLineBeforeAssertionMethods:
Enabled: false

Style/Documentation:
Enabled: false

Style/FrozenStringLiteralComment:
Exclude:
- 'config/application.rb'
- 'config/boot.rb'
- 'config/environment.rb'
- 'config/environments/*'
- 'config/initializers/assets.rb'
- 'config/initializers/content_security_policy.rb'
- 'config/initializers/filter_parameter_logging.rb'
- 'config/initializers/inflections.rb'
- 'config/initializers/permissions_policy.rb'
- 'config/puma.rb'
- 'Gemfile'

Style/GlobalStdStream:
Exclude:
- 'config/environments/*'

Style/StringLiterals:
Exclude:
- 'config/application.rb'
- 'config/boot.rb'
- 'config/environment.rb'
- 'config/environments/*'
- 'config/initializers/assets.rb'
- 'config/puma.rb'

Style/SymbolArray:
Exclude:
- 'config/initializers/filter_parameter_logging.rb'
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ruby-3.2.2
ruby-4.0.5
2 changes: 2 additions & 0 deletions .stylelintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
lib/assets/**/*
vendor/assets/**/*
944 changes: 944 additions & 0 deletions .yarn/releases/yarn-4.16.0.cjs

Large diffs are not rendered by default.

935 changes: 0 additions & 935 deletions .yarn/releases/yarn-4.7.0.cjs

This file was deleted.

4 changes: 3 additions & 1 deletion .yarnrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,6 @@ enableGlobalCache: false

nodeLinker: node-modules

yarnPath: .yarn/releases/yarn-4.7.0.cjs
npmMinimalAgeGate: 0

yarnPath: .yarn/releases/yarn-4.16.0.cjs
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# syntax = docker/dockerfile:1

FROM ruby:3.2-slim AS base
FROM ruby:4.0-slim-bookworm AS base

LABEL org.opencontainers.image.source="https://github.com/bfpi/klarschiff-client"
LABEL org.opencontainers.image.authors="BFPI GmbH"
Expand All @@ -16,7 +16,7 @@ RUN echo "${GITHUB_BRANCH:-unknown} / ${GITHUB_COMMIT_HASH:-unknown}" > /rails/g
ENV RAILS_ENV=${RAILS_ENV} \
BUNDLE_DEPLOYMENT="1" \
BUNDLE_PATH="/usr/local/bundle" \
BUNDLE_WITHOUT="development"
BUNDLE_WITHOUT="development test"

# Throw-away build stage to reduce size of final image
FROM base AS build
Expand Down
Loading
Loading