Nicola Murino
1cc81798ba
update gopsutil to v4
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-09-27 09:19:14 +02:00
Nicola Murino
55e443d29e
drop the dead nolint directives
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-09-09 12:37:54 +02:00
Nicola Murino
d54965865e
replace golangci-lint with staticcheck, errcheck and unparam
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-08-24 15:07:16 +02:00
Nicola Murino
6cce58233c
virtual folders: add subpath support
...
A virtual folder mapping can now re-root the mount onto a sub-path of
the folder: the mount at the virtual path serves the folder starting
from the configured subpath, which stays invisible in the virtual tree.
The same folder can be mapped multiple times with distinct subpaths;
quota remains a property of the whole folder, so every mapping must use
the same limits.
Supported for local, encrypted, S3, GCS, Azure Blob and SFTP folders.
Fixes #2037
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-07-18 16:19:43 +02:00
Nicola Murino
bafb7e7d6a
modernize the codebase to current Go idioms
...
Apply the fixes suggested by the modernize analyzers enabled by
default in gopls v0.23: range over int, errors.AsType, min/max,
slices.Backward/Contains, maps.Copy, strings.Cut/CutPrefix/CutSuffix/
SplitSeq, fmt.Appendf, WaitGroup.Go and b.Loop in tests, new(expr)
instead of to.Ptr, removal of ineffective omitempty tags on nested
struct fields.
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-07-13 20:52:29 +02:00
Nicola Murino
2bedbb351f
test: match the normalized username when waiting for the connections
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-07-06 20:40:27 +02:00
Nicola Murino
7d7a6e6217
test: release the fs roots before removing the test home dirs
...
On Windows the home dir cannot be removed while a filesystem root is
open
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-07-06 18:48:38 +02:00
Nicola Murino
1c93729b40
vfs: normalize cloud key prefix on save
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2026-06-11 18:45:34 +02:00
Nicola Murino
b160090866
httpdtest: remove unused constant
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2025-09-07 18:19:45 +02:00
Nicola Murino
7317674b41
Remove legacy data retention API
...
Data retention is now managed via the EventManager, introduced in v2.4.0.
This allows scheduling retention checks and sending email or HTTP notifications,
making the old API redundant.
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2025-07-12 22:20:54 +02:00
Nicola Murino
eba4c93efd
user: add additional emails
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-10-11 19:20:51 +02:00
Nicola Murino
eeef23139d
EventManager: filter action execution based on event status
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-09-23 19:55:03 +02:00
Nicola Murino
2fbf608895
S3: add SSE customer key
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-08-15 10:09:06 +02:00
Nicola Murino
81433e00d1
event action: add update modtime to fs rename
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-08-09 20:18:33 +02:00
Nicola Murino
d94f80c8da
replace utils.Contains with slices.Contains
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-07-24 18:27:13 +02:00
Nicola Murino
1196727448
dataretention: remove ignore_user_permissions
...
Required permissions are now automatically granted as for any other
filesystem action
Fixes #1564
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-04-01 15:07:03 +02:00
Nicola Murino
cc9a0d4dc2
add time-based access restrictions
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-03-17 11:30:03 +01:00
Nicola Murino
4d357a6a57
EventManager: allow to check for inactive users
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-03-04 19:48:10 +01:00
Nicola Murino
de089e51fd
Web: allow to require password change and two-factor for admins
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-02-21 20:45:10 +01:00
Nicola Murino
d939a82225
user: add TLS certificates
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-01-14 21:36:23 +01:00
Nicola Murino
784b7585c1
remove end year from Copyright notice in files
...
so we don't have to update all the files every year
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2024-01-01 11:31:45 +01:00
Nicola Murino
654ce2e349
s3: allow to skip TLS verification
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-11-05 19:27:11 +01:00
Nicola Murino
ba9df51b2e
fix or suppress lint warnings detected by golangci-lint 1.55.0
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-10-20 20:31:17 +02:00
Nicola Murino
830116bcf2
shares: allow to force an expiration date
...
this is a soft requirement, users can reactivate expired shares by
updating the expiration date
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-08-07 19:07:20 +02:00
Nicola Murino
0413c0471c
add a specific permission to manage folders
...
creating/updating folders embedded in users is no longer supported.
Fixes #1349
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-07-23 18:48:49 +02:00
Nicola Murino
a38ce460bb
WebClient: show user quota
...
Also remove per-source data transfer limits. This was an
oversight
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-06-16 21:06:21 +02:00
Nicola Murino
8f934f7c82
email action: allow to configure Bcc
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-05-25 19:55:27 +02:00
Nicola Murino
bbaca578cd
EventManager: add content type option for email config
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-05-17 19:28:13 +02:00
Nicola Murino
adad8e658b
osfs: add optional buffering
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-05-16 18:08:14 +02:00
Nicola Murino
712f2053a4
REST API dumpdata: allow to specify the resources to dump
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-04-18 18:11:23 +02:00
Nicola Murino
f03f1b0156
improve test cases coverage
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-04-08 10:01:48 +02:00
Nicola Murino
184b99d500
user: add a field to indicate whether the password is set
...
A structure similar to the one used for secrets would be better,
but we don't want to break backwards compatibility.
Also document that omitting the password field in the request body
will preserve the current password when updating a user using the
REST API. Added a test case for this.
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-04-06 18:22:09 +02:00
Nicola Murino
e29f6857db
EventManager: add IDP login trigger and check account action
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-03-22 19:02:54 +01:00
Nicola Murino
4ba3ae876d
allow to set password strength at user/group level
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-03-02 09:11:30 +01:00
Nicola Murino
78cd5d8eba
groups: add expiration date override
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-02-13 19:32:36 +01:00
Nicola Murino
1b1745b7f7
move IP/Network lists to the data provider
...
this is a backward incompatible change, all previous file based IP/network
lists will not work anymore
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-02-09 09:33:33 +01:00
Nicola Murino
7b5bebc588
EventManager: add "on-demand" trigger
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-01-21 15:41:24 +01:00
Nicola Murino
53f17b5715
allow to disable event rules
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-01-19 18:33:04 +01:00
Nicola Murino
0190d0b849
update Copyright year
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2023-01-03 10:18:30 +01:00
Nicola Murino
ea4c4dd57f
eventmanager: add copy action
...
refactor sftpgo-copy and sftpgo-remove commands
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-12-27 18:51:53 +01:00
Nicola Murino
0296e0cafa
gcsfs: allow to customize upload part size/time
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-12-18 11:51:46 +01:00
Nicola Murino
2da3eabc12
eventmanager: add password notification check action
...
this action allow to send an email notification to users whose
password is about to expire
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-12-16 18:51:29 +01:00
Nicola Murino
ad5d657a1a
add support for password policies
...
you can now set a password expiration and the password change requirement
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-12-11 17:15:34 +01:00
Nicola Murino
221a4878aa
eventmanager: allow to filter based on role name
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-12-03 17:47:43 +01:00
Nicola Murino
5a222807b7
add roles
...
Fixes #837
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-11-16 19:04:50 +01:00
Nicola Murino
048591553a
allow to set a default expiration for newly created users
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-11-05 18:01:24 +01:00
Nicola Murino
3e44a1dd2d
eventmanager: add support for file/directory compression
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-10-10 18:53:58 +02:00
Nicola Murino
bd294bb3cf
WebAdmin: allow to simplify the user page
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-09-21 19:36:08 +02:00
Nicola Murino
ea3c1d7a3b
WebAdmin: allow to pre-select groups on add user page
...
The admin will still be able to choose different groups
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-09-13 18:04:27 +02:00
Nicola Murino
f264b005ff
event rules: allow filtering based on group names
...
Signed-off-by: Nicola Murino <nicola.murino@gmail.com >
2022-09-04 17:48:09 +02:00