-
Notifications
You must be signed in to change notification settings - Fork 18
41526 Storage [Backend] Create a file service #53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
EBirkenfeld
wants to merge
147
commits into
master
Choose a base branch
from
41526__create_file_service
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
147 commits
Select commit
Hold shift + click to select a range
868c89f
42268 feat(backend:file_access): add file access permission verificat…
EBirkenfeld 9635ac3
41526 feat(file_service): implement file proxy microservice with GCS …
EBirkenfeld f985da3
Merge remote-tracking branch 'origin/master' into 41526__сreate_file_…
EBirkenfeld 89d257a
41526 fix(storage): rename file_service to storage
EBirkenfeld 3009ff1
Merge remote-tracking branch 'origin/42268__add_api_for_verifying_fil…
EBirkenfeld 26c7a5a
41526 feat(attachments): add API for checking file access permissions…
EBirkenfeld a57dd9f
41526 refactor(storage): migrate linting configuration from pyproject…
EBirkenfeld 5cfa0f6
41526 refactor(backend): apply code formatting fixes across entire co…
EBirkenfeld 98e5cf5
41526 refactor(storage): standardize docstrings and remove unused ign…
EBirkenfeld 847543c
41526 refactor(storage:tests): update test imports and exception hand…
EBirkenfeld a9c7163
41526 refactor(storage:tests): standardize docstrings and update ruff…
EBirkenfeld ed410e8
41526 refactor(storage): improve authentication middleware and stream…
EBirkenfeld 0fb60c8
41526 refactor(storage): clean up error codes and enhance validation …
EBirkenfeld 1b733f4
Merge remote-tracking branch 'origin/master' into 41526__create_file_…
EBirkenfeld 3472433
41526 feat(migrations): add access_type and file_id fields to FileAtt…
EBirkenfeld 93f6bac
41526 feat(file-service): add file service and PostgreSQL support wit…
EBirkenfeld ca7dbb7
41526 fix(docker): update pneumatic_file_service port mapping from 80…
EBirkenfeld 8ec1a8f
41526 fix(docker): update AUTH_REDIS_URL to use 'redis' service hostn…
EBirkenfeld a2ba8f8
41526 fix(docker): replace dynamic profile variable with static 'loca…
EBirkenfeld f48202c
41526 fix(docker): update port configurations and add backend service…
EBirkenfeld 57864b2
41526 feat(storage): implement file service integration with attachme…
EBirkenfeld b561685
41526 feat(storage): add pytest configuration and tests for attachmen…
EBirkenfeld a040982
41526 fix(storage): filter out deleted attachments in attachment serv…
EBirkenfeld e02fe92
41526 feat(storage): implement attachment synchronization and update …
EBirkenfeld a9c84fb
41526 refactor(backend, storage): remove legacy file attachment endpo…
EBirkenfeld 5f48271
41526 feat(storage): remove execute() method and optimize owner permi…
EBirkenfeld 73f4b50
41526 refactor(tests): update download use case mocks for improved cl…
EBirkenfeld cd1bbde
41526 feat(backend, docker): update permissions and service configura…
EBirkenfeld 4c33ead
41526 feat(storage): update initial migration for Attachment model
EBirkenfeld 51eb7b5
41526 feat(storage): refactor attachment handling and implement new s…
EBirkenfeld 95b4806
41526 refactor(storage): streamline attachment handling and update re…
EBirkenfeld 84b71bb
41526 feat(storage): enhance attachment handling and integrate new fi…
EBirkenfeld 9af4e48
41526 fix(storage): enhance permission checks and attachment handling
EBirkenfeld bd458a2
41526 refactor(storage): update attachment handling and optimize queries
EBirkenfeld fa36ca3
41526 refactor(storage): remove Google Cloud Storage integration and …
EBirkenfeld bfe81f7
41526 feat(storage): integrate file service and update configurations
EBirkenfeld ad6848b
41526 refactor(storage): update attachment handling and improve test …
EBirkenfeld 9e2c448
41526 refactor(storage): remove FileSyncViewSet and update synchroniz…
EBirkenfeld 52c0eb8
41526 refactor(storage): update file service configuration and attach…
EBirkenfeld 5d8854d
41526 feat(authentication): enhance user photo handling and integrate…
EBirkenfeld 7d9ab44
41526 refactor(storage): streamline user model retrieval in Attachmen…
EBirkenfeld 1f90ca3
41526 feat(storage): update attachment routing and remove redundant s…
EBirkenfeld 73f6a7e
41526 refactor(migrations): remove FileAttachmentPermission model and…
EBirkenfeld fa2661e
41526 refactor(file_service): improve file upload handling and valida…
EBirkenfeld 1ba656e
41526 refactor(authentication): streamline user photo retrieval in Mi…
EBirkenfeld d2ac514
41526 fix(attachments): address code review issues
EBirkenfeld bf81633
Merge branch 'master' into 41526__create_file_service
EBirkenfeld 3b0eb21
41526 feat(attachments): add URL field to attachment serializer and i…
EBirkenfeld 10274ed
41526 feat(storage): implement optimized attachment retrieval with ne…
EBirkenfeld 6bbeafa
41526 feat(docker): enable storage services and update configurations
EBirkenfeld 0969cd9
41526 feat(attachments): enhance attachment handling and validation a…
EBirkenfeld 270c63c
41526 fix(docker): Update FILE_SERVICE_URL in docker-compose files to…
EBirkenfeld a8c21b3
41526 refactor(comments): streamline comment handling by removing att…
EBirkenfeld 3d32d88
41526 feat(storage): add plain URL extraction for file service
EBirkenfeld dfec943
41526 feat(permissions): implement reassigning of restricted permissi…
EBirkenfeld 43b353c
41526 feat(public_auth): implement token invalidation for public temp…
EBirkenfeld 280c068
41526 fix(storage): preserve comment attachments when refreshing task…
EBirkenfeld 848c6a7
41526 refactor(tasks): optimize attachment handling with transaction …
EBirkenfeld 153adac
41526 feat(attachments): implement pagination and filtering for attac…
EBirkenfeld 42831dd
41526 refactor(docker): standardize file-service configurations and u…
EBirkenfeld 673b3ac
41526 fix(database): update alembic.ini script location to use relati…
EBirkenfeld d6f0686
41526 refactor(tasks): update TaskFieldService to handle full URLs fo…
EBirkenfeld 6889daf
41526 fix(comments): enforce mandatory comment text in CommentCreateS…
EBirkenfeld b78924b
41526 refactor(docker): standardize environment variable syntax in do…
EBirkenfeld fad0507
41526 refactor(attachments): streamline permission assignment and rem…
EBirkenfeld 539446d
41526 fix(attachments): ensure guardian permissions are cleared on at…
EBirkenfeld 05071ff
41526 refactor(attachments): update refresh_attachments_for_event to …
EBirkenfeld 4eb446b
41526 refactor(settings): remove STORAGE configuration and docker-com…
EBirkenfeld 2de8b2e
41526 refactor(docker): remove local-storage profiles from seaweedfs …
EBirkenfeld 2b9dd71
41526 feat(API): Implement uploadFileToFileService for POST /upload
Maria-Lordwill 93557ff
Merge branch '41526__create_file_service' of github.com:pneumaticapp/…
Maria-Lordwill 672e522
Merge branch 'master' into 41526__create_file_service
EBirkenfeld 47e9b41
41526 fix(docker): Update ALLOWED_ORIGINS in docker-compose files
EBirkenfeld a12df90
41526 feat(upload): Switch all attachment upload calls to the new fun…
Maria-Lordwill 1ffc20c
41526 feat(attachments): Add kickoff description handling for workflo…
EBirkenfeld b9f359a
41526 refactor(fileservice): change file name
Maria-Lordwill 6dd89ef
Merge branch '41526__create_file_service' of https://github.com/pneum…
EBirkenfeld da63083
41526 feat(authentication): Enhance photo update process to sync acco…
EBirkenfeld c4ea917
41526 refactor(forms, admin): Simplify exception handling by removing…
EBirkenfeld 7068a7c
41526 fix(docker, authentication): Correct ALLOWED_ORIGINS, improve u…
EBirkenfeld 3423399
41526 refactor(account): Optimize logo sync logic by preventing unnec…
EBirkenfeld af43724
41526 refactor(tasks): Wrap attachment retrieval in a transaction to …
EBirkenfeld c13c36a
Merge branch 'master' into 41526__create_file_service
EBirkenfeld f087c3f
41526 fix(tests): fix migration and tests
EBirkenfeld 2c5f970
41526 feat(attachments): Implement a new file storage service with a …
EBirkenfeld 17b0664
41526 fix(attachment): fix user update and attachment management serv…
EBirkenfeld 2b43acf
41526 fix(attachment): fix Microsoft authentication service with Grap…
EBirkenfeld 316d0b8
Merge branch 'master' into feature/file-storage-service
EBirkenfeld 3dfa00f
41526 feat(storage): migrate file service to path-based routing and h…
EBirkenfeld dbcf7dd
41526 refactor(frontend): remove comment attachments from API, fix te…
EBirkenfeld 36398e7
41526 fix(file-service): improve sync reliability and test coverage
EBirkenfeld 4a2aeb2
41526 fix(storage): block pickle deserialization RCE
EBirkenfeld 7e664a2
41526 feat(storage): harden security, improve performance, and expand…
EBirkenfeld 76fe782
41526 refactor(storage): rewrite unit tests
EBirkenfeld 76e1e3c
41526 refactor(tests): enforce unit-test and code review standards
EBirkenfeld afb4945
41526 fix(core): address code review issues across accounts, processe…
EBirkenfeld 65e21ed
41526 chore(repo): unify pre-commit configs, fix linter errors, and p…
EBirkenfeld 21b5545
41526 fix(storage): fix db connection leak and range header handling
EBirkenfeld 69273e4
41526 fix(storage): resolve code review comments and resource leaks
EBirkenfeld f6b1bb9
41526 fix(accounts): reset user photo on upload failure and fix linti…
EBirkenfeld 7b19706
merge: resolve conflicts from master merge
EBirkenfeld 99ec169
41526 fix(nginx): add file-service upstream and server block to ssl_f…
EBirkenfeld 241e272
41526 fix(storage): harden security and clean architecture violations
EBirkenfeld 4ff9608
41526 refactor(infra): migrate file service to subpath routing and st…
EBirkenfeld 5d6c9dc
Merge branch 'master' into 41526__create_file_service
EBirkenfeld 69e9f70
41526 docs(config): add File Service env vars to default.env
EBirkenfeld f6dab7a
41526 refactor(files): replace attachment IDs with markdown links, re…
EBirkenfeld e94ca02
41526 fix(file-service): address review findings across security, per…
EBirkenfeld 7f92bc1
41526 feat(file-migration): add guardian permissions and comprehensiv…
EBirkenfeld 9d26471
41526 fix(file-service): harden CORS, infrastructure, and error handling
EBirkenfeld b69479e
41526 fix(auth): allow public/embed token auth in file service
EBirkenfeld 76c6e9f
41526 fix(storage): cookie auth mismatch, debug mode bug, review cleanup
EBirkenfeld e8ee4b2
41526 fix(error-handling): unify File Service error mapping across fr…
EBirkenfeld 9e9569c
41526 fix(error-handling): unify File Service error mapping across fr…
EBirkenfeld 7b3cf32
Merge branch '41526__create_file_service' of https://github.com/pneum…
EBirkenfeld 34ccf8b
41526 fix(storage): sync file permissions on performer changes
EBirkenfeld 72553ad
41526 fix(storage): handle non-ASCII file_id in URLs and regex extrac…
EBirkenfeld 8d60fb5
41526 fix(storage): handle non-ASCII file_id in URLs and regex extrac…
EBirkenfeld 3bbbe9d
Merge branch '41526__create_file_service' of https://github.com/pneum…
EBirkenfeld 85d9feb
41526 feat(storage): redirect browser to login on unauthenticated fil…
EBirkenfeld ba71c0d
41526 fix(storage): sort URL mapping by key length and fix file servi…
EBirkenfeld 6a5c2b4
41526 fix(workflows): remove invalid prefetch causing 500 on workflow…
EBirkenfeld c487fdd
41526 feat(nginx): add Railway-specific nginx reverse proxy config
EBirkenfeld 496b910
41526 feat(nginx): add Railway-specific reverse proxy config
EBirkenfeld 5ece484
Merge branch '41526__create_file_service' of https://github.com/pneum…
EBirkenfeld c03d06f
Merge branch '41526__create_file_service' of https://github.com/pneum…
EBirkenfeld 7fcad0b
Merge branch '41526__create_file_service' of https://github.com/pneum…
EBirkenfeld 5085be1
41526 refactor(storage): remove legacy STORAGE feature flag and env vars
EBirkenfeld fb3f7ea
41526 fix(infra): extract file-service proxy, replace named volumes w…
EBirkenfeld a924194
41526 feat(storage): add public template support for file access perm…
EBirkenfeld bd86f4d
41526 chore(file-service): harden docker config and clean up service …
EBirkenfeld 281631e
Merge branch 'master' into 41526__create_file_service
EBirkenfeld 7a498d4
41526 fix(migrations): resolve conflicting migration numbering after …
EBirkenfeld 67a9f3d
41526 refactor(storage): replace flat config with class-based setting…
EBirkenfeld fbf18a8
41526 fix(frontend): restore image preview for file attachments
EBirkenfeld 5453770
41526 refactor(storage): migrate attachment model to scoped uniqueness
EBirkenfeld 340324c
41526 fix(workflow-log): restore Attachments tab after file-service m…
EBirkenfeld 30c69a9
Merge remote-tracking branch 'origin/master' into 41526__create_file_…
EBirkenfeld 53c7500
41526 fix(storage): update CSP test assertion
EBirkenfeld 7d3d6d5
41526 fix(nginx): increase client_max_body_size to prevent network er…
EBirkenfeld ce42e6f
41526 fix(storage): prevent redundant Set-Cookie on every response
EBirkenfeld 5f9d1c1
41526 fix(storage): resolve migration constraints and standardize sta…
EBirkenfeld e785057
41526 fix(storage): prevent RuntimeError on streaming download failures
EBirkenfeld afcaf43
Merge remote-tracking branch 'origin/master' into 41526__create_file_…
EBirkenfeld 359fb6d
41526 fix(start): auto-generate file-service credentials on first setup
EBirkenfeld c996841
41526 fix(start): auto-generate file-service credentials on first setup
EBirkenfeld b6446f4
Merge branch '41526__create_file_service' of https://github.com/pneum…
EBirkenfeld File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| default_stages: [commit] | ||
| default_language_version: | ||
| python: python3.7 | ||
| repos: | ||
| - repo: local | ||
| hooks: | ||
| # --- BACKEND HOOKS --- | ||
| - id: ruff-backend | ||
| name: ruff check (backend) | ||
| types: [python] | ||
| language: system | ||
| entry: ruff check --config backend/ruff.toml | ||
| files: ^backend/ | ||
| exclude: 'migrations|settings\.py|messages\.py|wsgi\.py|asgi\.py' | ||
|
|
||
| - id: py_codestyle-backend | ||
| name: py_codestyle (backend) | ||
| types: [python] | ||
| language: system | ||
| entry: pycodestyle --config backend/pycodestyle.ini | ||
| files: ^backend/ | ||
| exclude: 'migrations|settings\.py|messages\.py|wsgi\.py|asgi\.py' | ||
|
macroscopeapp[bot] marked this conversation as resolved.
|
||
|
|
||
| # --- STORAGE HOOKS --- | ||
| - id: ruff-check-storage | ||
| name: ruff check (storage) | ||
| entry: ruff check --config storage/ruff.toml --no-cache | ||
| language: system | ||
| types: [python] | ||
| files: ^storage/ | ||
| require_serial: true | ||
| exclude: 'alembic|migrations' | ||
|
|
||
| - id: ruff-format-storage | ||
| name: ruff format (storage) | ||
| entry: ruff format --config storage/ruff.toml --no-cache | ||
| language: system | ||
| types: [python] | ||
| files: ^storage/ | ||
| require_serial: true | ||
| exclude: 'alembic|migrations' | ||
|
|
||
| - id: mypy-check-storage | ||
| name: mypy (storage) | ||
| entry: mypy --config-file storage/mypy.ini storage/src/ | ||
| language: system | ||
| types: [python] | ||
| files: ^storage/ | ||
| pass_filenames: false | ||
| exclude: 'alembic|migrations' | ||
This file was deleted.
Oops, something went wrong.
File renamed without changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.