Commit Graph

88 Commits

Author SHA1 Message Date
Garret Alfert a6707dd40d Add spec for unescaped special characters 2014-02-24 20:44:23 +01:00
Garret Alfert 9e6cc6178d Don't choke on colons in directory names (fixes #39) 2014-02-24 17:43:43 +01:00
Garret Alfert 17068f33df Don't write any opslog when count and size didn't change (same file) 2013-11-19 19:35:04 +01:00
Garret Alfert 2f95aab874 Don't increase opslog count when overwriting existing binary file 2013-11-19 19:23:13 +01:00
Garret Alfert 088cd2677c Send ETag header with 304 response as well 2013-11-16 13:54:30 +01:00
Garret Alfert 3937862358 Use patched riak-ruby-client (closes #32)
The patched version escapes square brackets in the
key and bucket names correctly.
2013-11-06 21:56:23 +01:00
Garret Alfert 256b3c426e Use ETags as version in directory listings 2013-10-27 22:29:17 +01:00
Garret Alfert a470b37c2c Allow to expose ETag header via CORS 2013-10-27 22:29:06 +01:00
Garret Alfert 2a2cc0a3ec Allow If-Match and If-None-Match headers via CORS 2013-10-27 22:28:43 +01:00
Garret Alfert b907f02f37 Specs for ETag headers for binary files 2013-10-27 22:28:05 +01:00
Garret Alfert 5215cdc5e0 Spec for updating ETags of all parent directories on delete 2013-10-27 22:27:19 +01:00
Garret Alfert 3b5f99ee0d Refactor 2013-10-27 22:26:50 +01:00
Garret Alfert f7eac9b411 Specs for If-None-Match on GET requests 2013-10-26 05:10:11 +02:00
Garret Alfert f61eef717e Don't overwrite existing data when If-None-Match is "*" (refs #26) 2013-10-26 05:09:37 +02:00
Garret Alfert 67435157ed Specs for If-Match header 2013-10-26 03:31:54 +02:00
Garret Alfert 189d202d66 Specs for ETag headers 2013-10-25 23:09:04 +02:00
Garret Alfert f852e7719f Requests for empty directories respond with 404 (refs #26) 2013-10-25 12:44:39 +02:00
Garret Alfert 20d33cc1af Read CS credentials from file 2013-10-11 17:30:05 +02:00
Garret Alfert 4f91c9aa87 Purge cs binary bucket after tests 2013-10-10 14:58:08 +02:00
Garret Alfert e5dfbff82d Test that files get deleted from Riak CS 2013-10-10 14:57:10 +02:00
Garret Alfert b12df5470f Make sure that 'allow_mult' is false for all buckets 2013-10-07 15:23:09 +02:00
Garret Alfert c10fd893c6 Store binary objects in Riak CS 2013-10-07 15:19:46 +02:00
Garret Alfert 629ff399ff Don't try to deserialize an object to check if it already exists (fixes #29) 2013-09-13 19:10:32 +02:00
Garret Alfert c6059153f8 Fix encoding in directory listings 2013-07-11 13:44:40 +02:00
Garret Alfert fa7c7ad020 Test for special characters in a directory name 2013-06-14 19:20:51 +02:00
Garret Alfert 73336ed5bc Fix for using Riak with http_url_encoding config enabled 2013-06-14 18:49:26 +02:00
basti 95f24beef7 Use count instead of action
In order to be able to combine multiple log entries (and of different
types) into one, we now set the object count instead of an action verb
when logging an operation.
2013-04-30 20:48:28 +02:00
Garret Alfert db1272b6fe Set RACK_ENV before requiring files in spec_helper.rb
This is because liquor_cabinet.rb is using the
environment to read the appropriate configuration
settings.
2013-04-30 12:10:16 +02:00
basti eaa3dbfe83 Use opslog instead of counters
Account for eventual consistency by storing log items for
create/update/delete operations instead of using counter keys. We can
then map/reduce over the log items in order to extract category sizes
and object counts. Furthermore, we can combine single items from time to
time in order to keep things fast and tidy.
2013-04-29 22:11:41 +02:00
basti c78be51e8f Fix merge conflict 2013-04-29 18:38:40 +02:00
basti 1be4020991 Use config_file, include backend module depending on config (closes #8) 2013-04-25 23:11:25 +02:00
basti a35fef3727 Don't change usage counter on DELETE to non-existing resource 2013-04-23 15:58:34 +02:00
basti 08661ea148 Combine category usage counters in a single JSON object 2013-04-23 15:34:40 +02:00
basti 27e5dfc1b5 Add per-category object counter 2013-04-22 17:11:30 +02:00
basti 1a9be076fa Add user id index to usage size keys 2013-04-21 17:48:21 +02:00
basti 88c78bc18b Remove debugging output 2013-04-20 14:48:47 +02:00
basti e94928c2ed Log object sizes to a per-user-and-category counter (closes #22) 2013-04-20 14:45:02 +02:00
galfert e2095a34a6 Detect binary data even when content-type doesn't contain 'charset=binary' 2012-11-04 19:29:54 +01:00
galfert 44d276a387 Set indexes for binary objects 2012-11-03 15:17:40 +01:00
galfert 5384e3d355 Delete the actual binary objects with the data objects 2012-11-03 15:05:04 +01:00
galfert 2c9979f544 Use millisecond resolution for timestamps of updated directory objects on DELETE requests 2012-11-03 15:00:59 +01:00
galfert 483523b091 Allow binary content (fixes #18) 2012-11-02 13:48:42 +01:00
galfert fa6235cd1f Add spec for binary data 2012-11-02 13:07:59 +01:00
galfert 39355ff0f2 Don't allow directory listings of the public directory without proper permissions (refs #19) 2012-10-29 14:46:11 +01:00
galfert 6541b97997 Rearrange permissions_spec.rb 2012-10-29 10:09:53 +01:00
galfert 84c1f419be Make bucket names configurable by environment (refs #16) 2012-10-25 11:29:34 +02:00
galfert d1acfe88e8 Timestamps for sub-directories also have milliseconds resolution (refs #17) 2012-10-24 06:09:28 +02:00
galfert b8138a29f1 Use millisecond resolution for timestamps (refs #17) 2012-10-24 05:39:37 +02:00
galfert 9c93c83ceb Specs to make sure timestamps in directory listings are always integer 2012-10-24 04:45:37 +02:00
galfert bf00b2a352 Escape entries in directory listings 2012-10-22 14:32:46 +02:00