Nicola Murino
4e41a5583d
refactoring: add common package
...
The common package defines the interfaces that a protocol must implement
and contain code that can be shared among supported protocols.
This way should be easier to support new protocols
2020-07-24 23:39:38 +02:00
Nicola Murino
ded8fad5e4
add sponsor button
2020-07-13 22:23:11 +02:00
Nicola Murino
3702bc8413
several doc fixes
2020-07-11 13:03:15 +02:00
Nicola Murino
7896d2eef7
improve CI/CD workflows
2020-07-10 23:31:53 +02:00
Nicola Murino
da0f470f1c
document FreeBSD support
...
improve some tests cleanup
2020-07-10 19:20:37 +02:00
Nicola Murino
8fddb742df
try to improve error message if the user forgot to initialize the provider
...
See #138
2020-07-09 20:01:37 +02:00
Nicola Murino
95fe26f3e3
keep track of services errors
...
So we can exit with the correct code if an error happen inside the
services goroutines
Fixes #143
2020-07-09 19:16:52 +02:00
Nicola Murino
1e10381143
improve help strings formatting
...
Fixes #139
2020-07-09 18:58:22 +02:00
Nicola Murino
96cbce52f9
cmd: add shell completion and man pages generators
2020-07-08 23:21:33 +02:00
Nicola Murino
0ea2ca3141
simplify data provider usage
...
remove the obsolete SQL scripts too. They are not required since v0.9.6
2020-07-08 19:59:31 +02:00
Nicola Murino
42877dd915
sql providers: add a query timeout
2020-07-08 18:54:44 +02:00
Nicola Murino
790c11c453
back to development
2020-07-07 19:40:22 +02:00
Nicola Murino
1ac4baa00a
set version to 1.0.0
2020-07-06 22:41:50 +02:00
Nicola Murino
fc32286045
update deps
2020-07-05 22:54:00 +02:00
Nicola Murino
ee1131f254
enable SCP test cases on Windows
2020-06-30 23:25:25 +02:00
Nicola Murino
c5dc3ee3b6
simplify CI workflow
2020-06-29 20:07:51 +02:00
Nicola Murino
dd593b1035
ssh commands: send a generic error for unexpected failures
...
and log the real error, it could leak a filesystem path
2020-06-29 18:53:33 +02:00
Nicola Murino
4814786556
windows installer: fix exe name for service control
...
It worked before since Windows is case insensitive
2020-06-29 14:55:58 +02:00
Nicola Murino
4f0a936ca0
web admin: fix Microsoft edge compatibility
...
Edge does not support trimEnd
2020-06-29 11:46:02 +02:00
Nicola Murino
aec372ca31
Windows setup: require Windows 10
...
Windows 7 is EOL since several months now
2020-06-29 11:15:24 +02:00
Nicola Murino
d2a739f8f6
add workflow status badge
2020-06-28 21:01:03 +02:00
Nicola Murino
165110872b
add release workflow
...
for each tag a new release, including binaries, is automatically created
2020-06-28 15:57:33 +02:00
Nicola Murino
6ab4e9f533
add test case for concurrent logins
2020-06-27 12:36:42 +02:00
Nicola Murino
cf541d62ea
recursive permissions check before renaming/copying directories
2020-06-26 23:38:29 +02:00
Nicola Murino
19fc58dd1f
portable: avoid to log user provided password
...
disable DNS Multicast as default
Fixes #135 and #136
2020-06-24 13:37:38 +02:00
Nicola Murino
ac9c475849
test bolt and memory provider on macOS and Windows too
2020-06-22 23:47:07 +02:00
Nicola Murino
ddf99ab706
workflow: execute test cases on MySQL too
2020-06-22 20:02:51 +02:00
Nicola Murino
0056984d4b
Allow to rotate logs on demand
...
Log file can be rotated sending a SIGUSR1 signal on Unix based systems and
using "sftpgo service rotatelogs" on Windows
Fixes #133
2020-06-22 19:11:53 +02:00
Nicola Murino
44fb276464
workflow: execute tests using postgresql provider too
2020-06-21 21:28:59 +02:00
Nicola Murino
558a1b4050
workflow: execute tests using memory provider too
2020-06-21 20:20:30 +02:00
Nicola Murino
8f934f2648
run test cases against bolt provider too
2020-06-20 23:49:27 +02:00
Nicola Murino
403b9a8310
replace Travis with GitHub actions
2020-06-20 21:57:51 +02:00
Nicola Murino
33436488e2
update deps
2020-06-20 16:09:55 +02:00
Nicola Murino
3c28366fed
add action to build code after each commit
...
You can download the build artifact from the "Actions->Code Build"
Fixes #129
2020-06-20 15:34:19 +02:00
Nicola Murino
b80abe6c05
return exit code 1 on error
...
Fixes #132
2020-06-20 14:30:46 +02:00
Nicola Murino
8cb47817f6
Add API endpoint to set current quota
...
Fixes #130
2020-06-20 12:38:04 +02:00
Nicola Murino
23a80b01b6
add build tag to disable metrics
2020-06-19 17:08:51 +02:00
Nicola Murino
b30614e9d8
httpd: make the built-in web interface optional
...
The built-in web admin will be disabled if both "templates_path" and
"static_files_path" are empty
Fixes #131
2020-06-18 23:53:38 +02:00
Nicola Murino
e86089a9f3
quota: improve size check
...
get the remaining allowed size when an upload starts and check it against the
uploaded bytes
Fixes #128
2020-06-18 22:38:03 +02:00
Nicola Murino
3ceba7a147
sftpgo-copy: add quota limits check
2020-06-16 22:49:18 +02:00
Nicola Murino
c491133aff
docs: fix markdown lint warnings
2020-06-15 23:46:11 +02:00
Nicola Murino
37418a7630
SSH system commands: allow git and rsync inside virtual folders
2020-06-15 23:32:12 +02:00
Nicola Murino
73a9c002e0
permissions: improve rename
...
Allow to enable rename permission in a more controlled way granting "delete"
permission on source directory and "upload" permission on target directory
2020-06-13 23:49:28 +02:00
Nicola Murino
3d48fa7382
ssh commands: add sftpgo-copy and sftpgo-remove
...
Fixes #122
2020-06-13 22:48:51 +02:00
Nicola Murino
8e22dd1b13
virtual folders: allow overlapped mapped paths if quota is disabled
...
See #95
2020-06-10 09:11:32 +02:00
Nicola Murino
7807fa7cc2
use os.ModePerm for files and directory creation
2020-06-08 19:40:17 +02:00
Nicola Murino
cd380973df
allows host keys auto generation inside a user configured directory
...
Fixes #124
2020-06-08 18:45:04 +02:00
Nicola Murino
01d681faa3
external auth: allow to map multiple login username to a single account
...
some external auth users want to map multiple login usernames with a single
SGTPGo account.
For example an SFTP user logins using "user1" or "user2" and the external auth
returns "user" in both cases, so we use the username returned from external auth
and not the one used to login
Fixes #125
2020-06-08 13:06:02 +02:00
Nicola Murino
c231b663a3
add docs for virtual folders
...
fix test cases on macOS
2020-06-08 00:15:14 +02:00
Nicola Murino
8306b6bde6
refactor virtual folders
...
The same virtual folder can now be shared among users and different
folder quota limits for each user are supported.
Fixes #120
2020-06-07 23:30:18 +02:00