[PR #1688] feat: add S3 file storage support #1677

Open
opened 2025-11-01 21:25:15 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/go-vikunja/vikunja/pull/1688
Author: @maggch97
Created: 10/20/2025
Status: 🔄 Open

Base: mainHead: user/weijiezhao/s3


📝 Commits (10+)

  • ee51371 copy from https://github.com/go-vikunja/vikunja/pull/1509
  • 5534468 refactor: extract file handler initialization into separate functions
  • 897abcc fix: improve S3 configuration validation error messages
  • a586ddf feat: make S3 path-style addressing configurable
  • 120fb25 refactor: return errors instead of panicking in file handler initialization
  • c294a8b fix: handle S3 file downloads without http.ServeContent
  • 9c4fb84 refactor(files): move local config setup to local file handler only
  • c8402d4 fix: resolve lint issues in file handling and S3 integration tests
  • 44764c7 test: add S3/MinIO integration tests for file storage
  • 649ef3d fix: resolve testifylint issues in S3 integration tests

📊 Changes

10 files changed (+497 additions, -9 deletions)

View changed files

📝 .github/workflows/test.yml (+15 -0)
📝 config-raw.json (+41 -0)
📝 go.mod (+3 -0)
📝 go.sum (+12 -0)
📝 pkg/config/config.go (+17 -0)
📝 pkg/files/filehandling.go (+66 -5)
pkg/files/s3_integration_test.go (+316 -0)
📝 pkg/initialize/init.go (+5 -2)
📝 pkg/modules/dump/restore.go (+4 -1)
📝 pkg/routes/api/v1/task_attachment.go (+18 -1)

📄 Description

Fixes https://github.com/go-vikunja/vikunja/issues/1469

This PR is based on https://github.com/go-vikunja/vikunja/pull/1509. The account of original author has been deleted, so I continue the work.

image image

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/go-vikunja/vikunja/pull/1688 **Author:** [@maggch97](https://github.com/maggch97) **Created:** 10/20/2025 **Status:** 🔄 Open **Base:** `main` ← **Head:** `user/weijiezhao/s3` --- ### 📝 Commits (10+) - [`ee51371`](https://github.com/go-vikunja/vikunja/commit/ee51371059f24d5dd76a28b60ce68e7f4f34e5d9) copy from https://github.com/go-vikunja/vikunja/pull/1509 - [`5534468`](https://github.com/go-vikunja/vikunja/commit/5534468545c9b7078ef04db6501f9f713754a26f) refactor: extract file handler initialization into separate functions - [`897abcc`](https://github.com/go-vikunja/vikunja/commit/897abccc07aacd9ce8886d43d70c5d7301517917) fix: improve S3 configuration validation error messages - [`a586ddf`](https://github.com/go-vikunja/vikunja/commit/a586ddf579fed1ad48e3abac4da4f209ce6212a4) feat: make S3 path-style addressing configurable - [`120fb25`](https://github.com/go-vikunja/vikunja/commit/120fb2585f77f6663ac778fb5bc8eebb0b045349) refactor: return errors instead of panicking in file handler initialization - [`c294a8b`](https://github.com/go-vikunja/vikunja/commit/c294a8b8bcef0d119cb2351738197cd215db40d1) fix: handle S3 file downloads without http.ServeContent - [`9c4fb84`](https://github.com/go-vikunja/vikunja/commit/9c4fb84eee7308c6ab1b70918f3c9664aa7ddebc) refactor(files): move local config setup to local file handler only - [`c8402d4`](https://github.com/go-vikunja/vikunja/commit/c8402d4dda4c8c05bb9010ab61d4fcbfc7579e1f) fix: resolve lint issues in file handling and S3 integration tests - [`44764c7`](https://github.com/go-vikunja/vikunja/commit/44764c738254f67bd5eab0468e9fe3578d3fb30b) test: add S3/MinIO integration tests for file storage - [`649ef3d`](https://github.com/go-vikunja/vikunja/commit/649ef3da1ebf9f820ee9220b701cc316f13bde37) fix: resolve testifylint issues in S3 integration tests ### 📊 Changes **10 files changed** (+497 additions, -9 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/test.yml` (+15 -0) 📝 `config-raw.json` (+41 -0) 📝 `go.mod` (+3 -0) 📝 `go.sum` (+12 -0) 📝 `pkg/config/config.go` (+17 -0) 📝 `pkg/files/filehandling.go` (+66 -5) ➕ `pkg/files/s3_integration_test.go` (+316 -0) 📝 `pkg/initialize/init.go` (+5 -2) 📝 `pkg/modules/dump/restore.go` (+4 -1) 📝 `pkg/routes/api/v1/task_attachment.go` (+18 -1) </details> ### 📄 Description Fixes https://github.com/go-vikunja/vikunja/issues/1469 This PR is based on https://github.com/go-vikunja/vikunja/pull/1509. The account of original author has been deleted, so I continue the work. <img width="494" height="503" alt="image" src="https://github.com/user-attachments/assets/4cc42337-9dfb-4ccb-bc3f-5b1c331b9ec9" /> <img width="745" height="621" alt="image" src="https://github.com/user-attachments/assets/183dae4a-ec4a-4a90-99bb-b44834a12265" /> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2025-11-01 21:25:15 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/vikunja#1677