Commit graph

73 commits

Author SHA1 Message Date
3b28280333 fix: Escapes generated SQL and validates sequence number
create_camera_update_statements.php wrote OSM tag keys and values unescaped
into /migrations/*.sql. Values are now escaped and node ids cast to int.
The sequence number argument must be numeric and is bound as a parameter
instead of being concatenated into SQL and the output path.
2026-11-15 11:36:49 +01:00
189105075c fix: Publishes images only from main
Every pushed ref built and pushed images, with the tag derived from the ref
name. A branch named "latest" or a git tag named "main" therefore
overwrote the production image, and ref names were interpolated into shell
scripts unquoted (script injection).

- images are only pushed for pushes to refs/heads/main
- other refs are built and tested with a ci-<sha> tag, never pushed
- registry login happens only when publishing, after the compose test
- main additionally pushes an immutable sha-<sha> tag for pinning
- expression values are passed to scripts via env

The registry credentials still need to be restricted to main on the
Forgejo side, since a pushed branch can modify this workflow.
2026-11-15 11:36:49 +01:00
344232fb75 fix: Hardens web container
- document root is owned by root and not writable by www-data
  (the base image ships /var/www/html as www-data with mode 1777)
- uses php.ini-production, so errors are not shown to clients
- disables directory listings, expose_php and the detailed server signature
2026-11-15 11:36:49 +01:00
6a64083175 fix: Escapes location search results
Nominatim results were inserted via innerHTML and loaded as a JSONP script
with an unencoded query. Results are now fetched as JSON, the query is URL
encoded, text is escaped and coordinates must be numeric.
2026-11-15 11:36:49 +01:00
100762ea2e fix: Escapes OSM tag data in camera popups
camera.php built its JSON by hand with htmlentities(), which leaves
backslashes intact, and the client parsed it with eval() and inserted tag
values into the popup as HTML. A tag value such as <img ...> therefore
became live markup (stored XSS for anyone able to edit OSM data), and a lone
backslash broke parsing of the whole response.

- camera.php now builds the response with json_encode() and returns raw values
- tags named lat, lon, id, count, multi or poly no longer override the
  fields set by the server
- error responses no longer include database error messages
- the client uses JSON.parse() and escapes all keys and values; only
  http(s) URLs are rendered as links/images
2026-11-15 11:36:49 +01:00
954b534b10
fix: Handles pushed to all branches
Some checks failed
Build (and tag) Images / build (push) Failing after 1m2s
2026-03-10 20:55:27 +01:00
17c6946361
fix: Resolves syntax error
Some checks failed
images.yml / fix: Resolves syntax error (push) Failing after 0s
2026-03-10 20:54:46 +01:00
8775e3fc17
fix: Changes to docker pool
Some checks failed
images.yml / fix: Changes to `docker` pool (push) Failing after 0s
2026-03-10 20:53:02 +01:00
9138d57429 Excludes tag= from replacement
All checks were successful
Build (and tag) Images / build (pull_request) Successful in 46s
Build (and tag) Images / build (push) Successful in 48s
2025-10-25 17:53:03 +02:00
9cf8cffee4 fix: Replace invalid docker tag characters with underscore 2025-10-25 17:53:03 +02:00
afc3828575 Merge pull request 'renamed db-user to CAMERA_SELECT_USER' (#22) from sunders-18 into main
All checks were successful
Build (and tag) Images / build (push) Successful in 47s
Reviewed-on: #22
Reviewed-by: Vincent Mahnke <vimaster@noreply.git.hamburg.ccc.de>
2025-10-25 17:52:29 +02:00
3b92dbade7 renamed db-user to CAMERA_SELECT_USER
All checks were successful
Build (and tag) Images / build (push) Successful in 47s
Build (and tag) Images / build (pull_request) Successful in 47s
2025-10-25 17:46:37 +02:00
b3a38df17a Merge pull request 'added impressum as a var' (#20) from impressum-as-var into main
All checks were successful
Build (and tag) Images / build (push) Successful in 47s
Reviewed-on: #20
Reviewed-by: Vincent Mahnke <vimaster@noreply.git.hamburg.ccc.de>
2025-10-25 17:37:10 +02:00
7ab17a1af5 added impressum as a var
All checks were successful
Build (and tag) Images / build (push) Successful in 49s
Build (and tag) Images / build (pull_request) Successful in 47s
2025-10-25 17:33:24 +02:00
c1c11dbabd Merge pull request 'Minor updates to compose file' (#19) from docker-compose into main
All checks were successful
Build (and tag) Images / build (push) Successful in 47s
Reviewed-on: #19
2025-10-25 17:29:16 +02:00
1d38aea2ca chore: Removes unused SELinux flag due to volume usage
All checks were successful
Build (and tag) Images / build (push) Successful in 48s
Build (and tag) Images / build (pull_request) Successful in 47s
2025-10-25 17:28:11 +02:00
67ebf21a09 chore: Removes unused build steps and exposed ports 2025-10-25 17:28:11 +02:00
9a141276ed Merge pull request 'added impressum' (#16) from container into main
All checks were successful
Build (and tag) Images / build (push) Successful in 48s
Reviewed-on: #16
2025-10-25 17:18:04 +02:00
288b76d30e Merge branch 'main' into container
All checks were successful
Build (and tag) Images / build (push) Successful in 48s
Build (and tag) Images / build (pull_request) Successful in 47s
2025-10-25 17:16:51 +02:00
969614a000 Merge pull request 'Removes unused files' (#15) from unused-file into main
All checks were successful
Build (and tag) Images / build (push) Successful in 48s
Reviewed-on: #15
2025-10-25 17:09:22 +02:00
c5cc45aa23 added impressum
All checks were successful
Build (and tag) Images / build (push) Successful in 1m9s
Build (and tag) Images / build (pull_request) Successful in 1m1s
2025-10-25 16:56:26 +02:00
fb7db68946 Removes unused files
All checks were successful
Build (and tag) Images / build (push) Successful in 46s
Build (and tag) Images / build (pull_request) Successful in 49s
2025-10-25 16:52:46 +02:00
78cf0ea078 Merge pull request 'Containerizes application' (#12) from container into main
All checks were successful
Build (and tag) Images / build (push) Successful in 50s
Reviewed-on: #12
2025-10-25 16:40:44 +02:00
5ee9d6a288 Merge branch 'main' into container
All checks were successful
Build (and tag) Images / build (push) Successful in 47s
Build (and tag) Images / build (pull_request) Successful in 47s
2025-10-25 16:38:17 +02:00
641cb641ac Merge pull request 'Resolve path issues in docs, removes dependency, moves database to volume' (#11) from docs into container
All checks were successful
Build (and tag) Images / build (push) Successful in 59s
Build (and tag) Images / build (pull_request) Successful in 47s
Reviewed-on: #11
2025-10-25 16:29:27 +02:00
6289ed9f7e
fix: Replaces external project reference
All checks were successful
Build (and tag) Images / build (push) Successful in 49s
Build (and tag) Images / build (pull_request) Successful in 50s
2025-10-25 16:13:54 +02:00
d812b46516
chore: Removes need for container host directory by moving database to volume 2025-10-25 16:13:46 +02:00
55cc21f83d
docs: Uses new relative paths
All checks were successful
Build (and tag) Images / build (push) Successful in 1m19s
Build (and tag) Images / build (pull_request) Successful in 1m4s
2025-10-25 15:32:07 +02:00
108c40bcf5 added new db-dump
All checks were successful
Build (and tag) Images / build (push) Successful in 2m17s
2025-10-24 17:53:36 +02:00
aso
4c28ff9b0a moved persistence
All checks were successful
Build (and tag) Images / build (push) Successful in 37s
2025-10-19 18:44:52 +02:00
aso
c768645960 added changes to improve performance of sync
All checks were successful
Build (and tag) Images / build (push) Successful in 1m4s
2025-10-19 17:19:44 +02:00
3f62a9e5d6
fix: enable forkProcessing to make Renovate work for this repo
Since Renovate is running in autodiscover mode and this repo is a fork,
enable forkProcessing to have Renovate work for this repo.

https://docs.renovatebot.com/configuration-options/#forkprocessing
2025-10-17 16:01:08 +02:00
aso
8612798373 improved performance
All checks were successful
Build (and tag) Images / build (push) Successful in 38s
2025-10-14 21:37:29 +02:00
aso
6c8f5cce81 increased speed to create_sql
All checks were successful
Build (and tag) Images / build (push) Successful in 47s
2025-10-14 18:32:33 +02:00
1d0841a650 edited gitignore
All checks were successful
Build (and tag) Images / build (push) Successful in 47s
2025-10-14 17:34:13 +02:00
bf874b83b1 added create_sql scripts 2025-10-14 17:34:13 +02:00
8d5b74a773 Merge pull request 'Branch-specific image tagging' (#8) from pwd into container
All checks were successful
Build (and tag) Images / build (push) Successful in 34s
Reviewed-on: #8
2025-10-13 20:15:48 +02:00
ea4063917b fix: Enables CI/CD for any branch push
All checks were successful
Build (and tag) Images / build (push) Successful in 35s
Build (and tag) Images / build (pull_request) Successful in 36s
2025-10-13 19:26:57 +02:00
1e6f858426 fix: Enables image pushing for any git branch push
All checks were successful
Build (and tag) Images / build (push) Successful in 35s
2025-10-13 19:23:50 +02:00
3aeb91101d refactor: Limits docker image pushing to git pushes to main branch
All checks were successful
Build (and tag) Images / build (push) Successful in 35s
2025-10-13 19:19:39 +02:00
f40692b483 feat: Tags built images branch-specific, to prevent production overrides from branches
All checks were successful
Build Hello World Image / build (push) Successful in 46s
2025-10-13 19:04:45 +02:00
6c923de5ac fix: Removes deprecated version parameter
All checks were successful
Build Hello World Image / build (push) Successful in 35s
2025-10-13 18:57:19 +02:00
5eec2d3188 fix: Adds working directory to build steps
All checks were successful
Build Hello World Image / build (push) Successful in 35s
2025-10-13 18:54:49 +02:00
8a5cf8c1ee changed file names in build job
Some checks failed
Build Hello World Image / build (push) Failing after 8s
2025-10-13 16:30:29 +02:00
10fcf55b10 moved files into subdirs 2025-10-13 16:28:20 +02:00
bf6ccf5094 removed helper file
All checks were successful
Build Hello World Image / build (push) Successful in 37s
2025-10-12 18:10:11 +02:00
522c609ef1 added data_handeler container
All checks were successful
Build Hello World Image / build (push) Successful in 1m4s
2025-10-12 17:35:28 +02:00
2b97fe8b10 Merge pull request 'Basic CI/CD integration' (#4) from workflows into container
All checks were successful
Build Hello World Image / build (push) Successful in 32s
Reviewed-on: #4
2025-10-12 17:07:01 +02:00
99a42e3b7a Delete Containerfile.data_init
All checks were successful
Build Hello World Image / build (push) Successful in 23s
Build Hello World Image / build (pull_request) Successful in 22s
2025-10-12 17:06:30 +02:00
1ac9d096ff fix: Removes redundant volume
All checks were successful
Build Hello World Image / build (push) Successful in 33s
Build Hello World Image / build (pull_request) Successful in 21s
2025-10-12 14:08:36 +02:00