Marius
bfde73ff89
Test interface implementations for data stores
2016-01-19 22:37:05 +01:00
Marius
c9207d8c5f
Extract GetReader into own interface
2016-01-19 22:32:15 +01:00
Marius
29047eddc2
Add support for meta data in S3Store
2016-01-19 21:39:24 +01:00
Marius
1e40295e88
Do not run test verbose on AppVeyor
2016-01-17 15:55:00 +01:00
Marius
882214982d
Clone submodules on AppVeyor
2016-01-17 15:52:41 +01:00
Marius
b67b303594
Specify packages to test for AppVeyor
2016-01-17 15:47:48 +01:00
Marius
3a305424df
Use vendoring on AppVeyor
2016-01-17 15:44:19 +01:00
Marius
73e3adbb24
Test against Go 1.6 Beta 2
2016-01-17 15:34:58 +01:00
Marius
cbf08de13d
Add documentation for FinisherDataStore
2016-01-17 15:34:27 +01:00
Marius
101648e382
Add documentation about S3Store
2016-01-17 15:30:19 +01:00
Marius
82e29becc4
Merge branch 'master' into s3
2016-01-16 16:14:13 +01:00
Marius
810fa89494
Add support for upload termination in S3Store
2016-01-16 16:12:37 +01:00
Marius
27d6ade187
Add RespectForwardedHeaders option to handlers
...
When activated, X-Forwarded-* and Forwarded headers will be checked for a
hostname and protocol used for generating absolute URLs.
Addresses #38
2016-01-16 15:27:35 +01:00
Marius
cecccf4162
Deploy using Go 1.5
2016-01-13 22:25:55 +01:00
Marius
3c45d40890
Test against Go 1.6 Beta 1 on Travis
2016-01-13 22:25:16 +01:00
Marius
28a7b9d950
Add S3 option to tusd(1)
2016-01-13 22:24:41 +01:00
Marius
cb0f8dac6a
Add isAwsError helper method
2016-01-12 22:21:05 +01:00
Marius
e64e99eec3
Update dependencies
2016-01-10 13:28:23 +01:00
Marius
a1141b836f
Squashed commit of the following:
...
commit 0203e5c57f397865fd5a95b7f91f5f27fd306431
Author: Marius <maerious@gmail.com>
Date: Sat Jan 9 20:39:46 2016 +0100
Update dependencies
commit be5b2b8f62b4644fd9c52a838fe68d98b4eae8e4
Author: Marius <maerious@gmail.com>
Date: Sat Jan 9 19:17:32 2016 +0100
Pull dependencies from vendor/ in /home/marius/workspace/go for Go < 1.5
commit e631bbcc59e4c9e5e928b172b4c6aab6eb71274d
Author: Marius <maerious@gmail.com>
Date: Sat Jan 9 19:15:20 2016 +0100
Vendor dependencies
2016-01-09 20:44:06 +01:00
Marius
a6e85ecf7e
Only install own dependencies
2016-01-08 19:23:59 +01:00
Marius
bdf144e9a1
Restrict tests on travis to internal packages
2016-01-08 14:40:34 +01:00
Marius
4b38221157
Exclude special directories from tests on Travis
2016-01-05 19:21:59 +01:00
Marius
83f71dcd92
Add dependencies using vendoring technique
2016-01-05 19:10:21 +01:00
Marius
cfba2e3b94
Merge branch 'master' into s3
2016-01-05 18:22:26 +01:00
Marius
2073521776
Add tests for S3Store
2016-01-05 18:21:53 +01:00
Marius
0e8ab11170
Run non-verbose tests on Travis
2016-01-04 19:35:43 +01:00
Marius
367642c9fc
Move to container-based infratructure on Travis
2016-01-04 19:29:12 +01:00
Marius
2f83ed02f0
Merge branch 'master' of github.com:tus/tusd
2016-01-04 19:22:16 +01:00
Marius
8c948613b3
Test all packages on Travis
2016-01-04 19:21:58 +01:00
Marius
b5e874626a
Display AppVeyor status for master branch
2015-12-27 13:13:12 +01:00
Marius
b6d67debee
Merge branch 'master' into s3
...
Conflicts:
datastore.go
2015-12-27 00:48:06 +01:00
Marius
4af7434c10
Move terminating method in own interface
...
In addition, the DELETE handler is only provided if the TerminaterDataStore
interface is implemented.
2015-12-27 00:44:02 +01:00
Marius
f96e2614fc
Test against Go 1.5 and 1.6 on Travis
2015-12-26 22:36:38 +01:00
Marius
28eb393dc5
Use HTTPS- instead of SSH url for submodule
2015-12-26 22:34:25 +01:00
Marius
4ee2a09510
Use Go's vendoring for dependencies
2015-12-26 22:28:36 +01:00
Marius
b80b018a80
Merge pull request #37 from tus/lockingstore
...
Make locking implementation flexible
2015-12-26 21:36:40 +01:00
Marius
f6a5530df8
Integrate LockingStore into UnroutedHandler
...
The reason behind this drastic move was that sometimes a lock needs to
persist across multiple calls to a DataStore. For example, when a PATCH
request is received, following behaviour is wanted:
* Obtain lock (LockUpload)
* Get offset, size etc (GetInfo)
* Write data (WriteChunk)
* Release lock (UnlockUpload)
However, before this change, the lock would be release and then obtained again
after the GetInfo and before the WriteChunk call. This resulted in an
inefficient resource usage and even a possible race condition.
The effects of this change was:
* FileLocker is now directly integrated into FileStore and not sperarated
* LockingStore and the entire package has been removed
* MemoryLocker has been moved into its very own package
2015-12-26 21:23:09 +01:00
Marius
cfabbf5ffb
Extract tests into tusd_test package
2015-12-25 22:33:27 +01:00
Marius
14285e971d
Add documentation for FileLocker
2015-12-25 21:33:58 +01:00
Marius
b4c0df187e
Provide easier way for locking file storage
2015-12-19 00:21:34 +01:00
Marius
83587ca0f8
Add filestore.FileLocker
2015-12-19 00:02:11 +01:00
Marius
8d94d55320
Add package descriptions for documentation
2015-12-18 23:24:12 +01:00
Marius
97f2efb6e5
Rename New to NewMemoryLocker
2015-12-18 23:21:13 +01:00
Marius
47492260e8
Add documentation for MemoryLocker
2015-12-18 23:20:52 +01:00
Marius
b03ddd1d4c
Add documentation for package lockingstore
2015-12-18 23:13:00 +01:00
Marius
4073f4ae64
Add test for LockingStore
2015-12-15 22:59:58 +01:00
Marius
b3fb3a3f5d
Ensure MemoryLocker implements Locker in tests
2015-12-15 22:04:12 +01:00
Marius
45936806a9
Add test for lockingstore.MemoryLocker
2015-12-09 20:48:41 +01:00
Marius
49d7c2ff78
Separate locking into data store implementation
...
The goal is to allow different locking mechanism to be used for different
storages. For example, in-memory for very few uploads, a file locker in
conjunction with the FileStore or an external service, such as ZooKeeper.
2015-12-09 20:25:08 +01:00
Marius
063d4a2442
Add first draft for s3Store
2015-12-08 22:26:37 +01:00