Files
BanGUI/.gitignore
Lukas 61daa8bbc0 Fix BUG-001: resolve banaction interpolation error in fail2ban jails
The container init script (init-fail2ban-config) copies jail.conf from the
image's /defaults/ on every start, overwriting any direct edits.  The correct
fix is jail.local, which is not present in the image defaults and therefore
persists across restarts.

Changes:
- Add Docker/fail2ban-dev-config/fail2ban/jail.local with [DEFAULT] overrides
  for banaction = iptables-multiport and banaction_allports = iptables-allports.
  fail2ban loads jail.local after jail.conf so these values are available to
  all jails during %(action_)s interpolation.
- Untrack jail.local from .gitignore so it is committed to the repo.
- Fix TypeError in config_file_service: except jail_service.JailNotFoundError
  failed when jail_service was mocked in tests because MagicMock attributes are
  not BaseException subclasses.  Import JailNotFoundError directly instead.
- Mark BUG-001 as Done in Tasks.md.
2026-03-15 11:39:20 +01:00

115 lines
2.7 KiB
Plaintext

# ─────────────────────────────────────────────
# BanGUI — root .gitignore
# ─────────────────────────────────────────────
# ── Python ────────────────────────────────────
__pycache__/
*.py[cod]
*.pyo
*.pyd
*.so
.Python
# Virtualenvs
.venv/
venv/
env/
ENV/
.python-version
# Distribution / packaging
dist/
build/
*.egg-info/
*.egg
MANIFEST
# Testing & coverage
.coverage
.coverage.*
htmlcov/
.pytest_cache/
.tox/
nosetests.xml
coverage.xml
*.cover
# Type checkers & linters
.mypy_cache/
.ruff_cache/
.dmypy.json
dmypy.json
pyrightconfig.json
.pytype/
# ── Node / Frontend ───────────────────────────
node_modules/
.pnp
.pnp.js
# Build output
frontend/dist/
frontend/.vite/
# Logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
# ── Secrets / Environment ─────────────────────
.env
.env.*
!.env.example
*.pem
secrets.json
# ── Databases ─────────────────────────────────
*.sqlite3
*.db
*.db-shm
*.db-wal
# ── OS artefacts ──────────────────────────────
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
# ── Editor / IDE ──────────────────────────────
.idea/
*.iml
*.sublime-project
*.sublime-workspace
.vscode/settings.json
.vscode/launch.json
.vscode/*.log
*.swp
*.swo
*~
# ── Docker dev config ─────────────────────────
# Ignore auto-generated linuxserver/fail2ban config files,
# but track our custom filter, jail, and documentation.
Docker/fail2ban-dev-config/**
!Docker/fail2ban-dev-config/README.md
!Docker/fail2ban-dev-config/fail2ban/
!Docker/fail2ban-dev-config/fail2ban/filter.d/
!Docker/fail2ban-dev-config/fail2ban/filter.d/bangui-sim.conf
!Docker/fail2ban-dev-config/fail2ban/filter.d/bangui-access.conf
!Docker/fail2ban-dev-config/fail2ban/jail.d/
!Docker/fail2ban-dev-config/fail2ban/jail.d/bangui-sim.conf
!Docker/fail2ban-dev-config/fail2ban/jail.d/bangui-access.conf
!Docker/fail2ban-dev-config/fail2ban/jail.d/blocklist-import.conf
!Docker/fail2ban-dev-config/fail2ban/jail.local
# ── Misc ──────────────────────────────────────
*.log
*.tmp
*.bak
*.orig