Harshavardhana
3622fbc87d
Across donut, split, nimble some code cleanup
2015-07-06 21:55:21 -07:00
Harshavardhana
c2c7bdf0cd
Cleanup nimble http
2015-07-06 18:51:20 -07:00
Harshavardhana
b029d0a5f0
Avoid config reload all the time, reload is manually triggerred from outside
2015-07-06 17:26:35 -07:00
Harshavardhana
8b94c53345
Fix issues with multipart upload
2015-07-06 16:22:27 -07:00
Harshavardhana
474954022e
Add modified grace library from facebookgo, rename it as nimble
2015-07-06 15:40:12 -07:00
Harshavardhana
1d64e4b6c1
Add Donut rpc service for sending changes to configuration files
2015-07-06 11:10:06 -07:00
Harshavardhana
10b082144e
Add updateConfig code to load config changes if possible for every function
2015-07-05 22:46:42 -07:00
Harshavardhana
ba0a5ed416
Add sighup, sigusr2 into trapping code, to trap signals for reloading configuration.
...
Need to still figure out a way of graceful restarts - gave facebookgo/httpdown a shot,
but it is not suitable.
2015-07-05 21:40:53 -07:00
Harshavardhana
4a27ab0e58
Fix another deadlock inside CreateObjectPart() code, premature return without Unlocking()
...
Also this patch changes the cache key element to be interface{} type not string.
2015-07-05 20:26:32 -07:00
Harshavardhana
7f0c14f2b7
Add basic controller code, initiating json rpc connection getting list of disks and memstats for now.
2015-07-05 17:17:41 -07:00
Harshavardhana
a3ccb9d405
Rename stuttered service names and make them appropriate
2015-07-05 10:19:23 -07:00
Harshavardhana
e66a84242a
Add disk detection for Linux, add new RPC service GetDiskInfoService(), remove dummy HelloService()
2015-07-05 02:08:33 -07:00
Harshavardhana
30fc14e703
Restructure codebase move crypto, checksum to top-level, move `split
` into donut, move crypto/keys into api/auth
2015-07-03 15:24:51 -07:00
Harshavardhana
8a4e7bcdcf
Add full API tests, move storage/donut to donut, add disk tests as well
2015-07-03 14:36:29 -07:00
Harshavardhana
7c37e9d06a
Make donut fully integrated back into API handlers
2015-07-02 21:04:04 -07:00
Harshavardhana
12bde7df30
Add simple Ticket Master which pro-actively sends messages on proceedChannel
...
Handlers are going to wait on proceedChannel, this the initial step towards
providing priority for different set of API operations
2015-07-02 21:04:04 -07:00
Harshavardhana
5cfb05465e
Add cache, donut tests separately - fix behavior differences
...
Remove priority queue, implement it using a simpler channels
2015-07-02 21:04:04 -07:00
Harshavardhana
0533abf6a8
Make priority queue lambda function return error over a channel
2015-07-02 21:04:04 -07:00
Harshavardhana
84810162f5
Add simple Version and GetSysInfo services
2015-07-02 21:04:04 -07:00
Harshavardhana
eb5aa19dfa
Remove custom Config, will use quick Config instead for user access keys
2015-07-02 21:04:04 -07:00
Harshavardhana
701c3e5242
Add new RPC helpers wrapping over regular rpc packages, add middleware chaining ability
2015-07-02 21:04:04 -07:00
Harshavardhana
4addf7a996
Restructure API handlers, add JSON RPC simple HelloService right now.
2015-07-02 21:04:04 -07:00
Harshavardhana
72572d6c71
Remove some api server code bringing in new cleanup
2015-07-02 21:04:03 -07:00
Harshavardhana
8f61d6b6be
Move memory code out, add it as layer on top of existing donut code
...
Just like how http.Handlers can be overlayed on top of each other
with each implementing ServeHTTP().
drivers.Driver can be overlayed on top of each other in similar manner
which would implement the drivers.Driver interface.
API <----> cache <----> donut <----> donut(format)
2015-06-30 10:09:12 -07:00
Harshavardhana
ab6e16bb41
Add dummy driver for community to submit new drivers
2015-06-29 16:43:50 -07:00
Harshavardhana
2571342451
Filesystem goes the high road *again*
2015-06-29 16:43:42 -07:00
Harshavardhana
d8f7896a43
Expand http server struct to store more values
2015-06-29 00:12:28 -07:00
Harshavardhana
42c0287943
Use errorChannels only for services not for drivers, reduce them to use simple functions
2015-06-28 23:59:47 -07:00
Harshavardhana
45a7eab804
An attempt to bring in memory layer into donut driver
2015-06-27 17:23:34 -07:00
Harshavardhana
a947767339
Remove unnecessary tlsHelpers, SSL works with domain certificate
2015-06-08 20:54:41 -07:00
Harshavardhana
c6ecd94420
Enable TLS and use it
2015-06-08 20:10:59 -07:00
Harshavardhana
371651bde6
Add rate limiter instead of connection limit for now
2015-06-06 18:04:55 -07:00
Harshavardhana
8b43655d9f
Make connection limit configurable
2015-06-06 14:31:50 -07:00
Harshavardhana
a344f5b34d
Misc changes before capturing proper video
...
- Disable management UI command option
- Remove featureflags option, filesystem and memory already support multipart
- Print informative messages after starting minio server
2015-06-03 18:27:15 -07:00
Harshavardhana
82a0eac659
Add filesystem factory functions and add related cli options
2015-05-30 03:23:06 -07:00
Harshavardhana
cd817d34df
Finish last bits of api testsuite on server
2015-05-21 02:57:03 -07:00
Harshavardhana
8d06504068
Change all minio-io path to minio
2015-05-11 16:23:10 -07:00
Harshavardhana
1df28f3060
Get rid of sub-domain code and some other formatting changes
2015-05-07 00:21:40 -07:00
Frederick F. Kautz IV
b86b26e7e5
Exposing expiration for memory driver
2015-04-30 21:20:54 -07:00
Harshavardhana
bbc32d6ac0
Disable domain based routing for now
2015-04-30 21:15:53 -07:00
Harshavardhana
f8a16dd22b
Memory now evicts bucket if no more objects in memory struct
...
- To avoid race in expiration while accessing memory driver structs with
in two competing write locks. Use lru Len() instead to know exact length
to schedule for eviction.
- squash both bucket and object structs, instead use a separate map to keep
mutable info of lastAccessTime which can be independently used inside the
expiration routine.
2015-04-30 00:31:52 -07:00
Frederick F. Kautz IV
0da04c6f17
Expirations are now based on last accessed instead of time created
2015-04-29 15:28:45 -07:00
Frederick F. Kautz IV
5cc9418ca7
Adding expiration
2015-04-29 13:02:21 -07:00
Frederick F. Kautz IV
5a607a6762
Moving factories and start minio method to server package
2015-04-23 16:13:50 -07:00
Frederick F. Kautz IV
5c515d3138
Simplifying server config handling
2015-04-23 12:44:22 -07:00
Frederick F. Kautz IV
0f8626ab1a
Refactoring cli to take commands
2015-04-23 01:05:44 -07:00
Frederick F. Kautz IV
c56f7380d6
Memory driver now limits by size
2015-04-22 17:50:26 -07:00
Harshavardhana
3f33643d39
File driver to take the high road
2015-04-16 02:16:39 -07:00
Frederick F. Kautz IV
59a81a73c6
Adding lru to memory driver, not wired to command line opts
2015-04-15 12:49:41 -07:00
Harshavardhana
38155e86ac
iodine is part of minio now
2015-04-08 18:05:48 -07:00
Frederick F. Kautz IV
6241c9880b
Moving object storage drivers back to minio
2015-04-08 16:28:14 -07:00
Frederick F. Kautz IV
ea961ef16d
Updating to use objectdriver
2015-04-06 18:00:18 -07:00
Harshavardhana
0475d7d056
Migrate to external Donut package
2015-04-05 14:59:24 -07:00
Frederick F. Kautz IV
2f44438843
Reformatting imports
2015-04-04 13:59:59 -07:00
Frederick F. Kautz IV
b165efdfcb
Refactoring pkg/utils/log, copying from golang's log and modifying
2015-03-28 15:58:48 -07:00
Frederick F. Kautz IV
ad370f341b
Fixing donut location
2015-03-27 12:44:13 -07:00
Frederick F. Kautz IV
53439d7768
Updating iodine to match new api
2015-03-26 15:55:06 -07:00
Frederick F. Kautz IV
40e311a919
Updating iodine to support new iodine.Error(error, map[string]string) error method
2015-03-25 19:12:55 -07:00
Frederick F. Kautz IV
d52dd5ed5b
Adding iodine to pkg/server/server.go
2015-03-25 17:04:26 -07:00
Harshavardhana
0474439b43
Code restructuring, assigning proper subsystems to each
...
- Drivers contain
* donut/*
* file/*
* memory/*
- Storage format contains
* donut/*
- GetObject() --> renamed to GetObjectReader()
- Deleted stale objectwriter.go, renamed donutwriter.go to object_writer.go
Simplifying, and documenting codebase further
2015-03-24 06:47:10 -07:00
Frederick F. Kautz IV
3c4012f1e7
Adding donut backend and setting as default
2015-03-23 20:07:22 -07:00
Harshavardhana
914962bd93
Implement log package as drop-in replacement for handling Debug log-level
2015-03-23 18:18:11 -07:00
Harshavardhana
2b0b5f014a
Update license header Mini should be Minimalist really
2015-03-19 14:35:50 -07:00
Harshavardhana
7ce3ab3193
Restructure minio api, move signature checks from utils to Api.
2015-03-18 18:16:19 -07:00
Harshavardhana
15f68972a5
Some necessary cleanup
...
- Rename 'fs' as 'file' for brevity
- Rename 'inmemory' as 'memory' for brevity
- Change everywhere else
2015-03-16 11:46:16 -07:00
Harshavardhana
c00d1461b9
Golint cleanup from top level
2015-03-05 23:37:37 -08:00
Harshavardhana
540723d7ae
Golint cleanup pkg/api
2015-03-05 21:09:19 -08:00
Harshavardhana
3a3c8645fc
Update comments across the codebase
2015-03-03 02:39:38 -08:00
Anand Babu (AB) Periasamy
177121868b
removed HomeDir
2015-03-01 15:13:08 -08:00
Harshavardhana
a9aaff0ee0
Remove HTTP server timeouts write and read.
...
Implement it later with a proper timer thread. Large file
transfers from 'mc' fail with i/o timeout without this change.
2015-02-24 13:55:24 -08:00
Anand Babu (AB) Periasamy
de41e465c8
move httpserver under server
2015-02-23 11:03:01 -08:00
Harshavardhana
51e80eaa6d
Add domain and subdomain support for MinioAPI
...
This change brings in domain and subdomain support
- ./minio --domain "yourminiodomain.com"
This change brings in a much needed feature by keeping
bucketnames as part of your 'DNS' name.
All your existing applications can be migrated off from s3 to
Minio without little to no modifications.
NOTE: Setting up DNS for your `buckets` is out of scope of this feature
2015-02-23 02:25:01 -08:00
Harshavardhana
a3e5121f7b
Make channels more aware of errors and shutdown on error - some cleanup
2015-02-18 00:24:19 -08:00
Harshavardhana
aff4c5826b
Use helper HomeDir()
2015-02-02 21:44:17 -08:00
Harshavardhana
e1b3836c60
Service a new WebUI server at port 8081.
...
It is provided to avoid the router clutter on the Object API
end. This is just a first cut sample we are going to build on
top of this the new management console UI.
General interest comes from subsequently writing a small UI to
generate `AccessKey` and `SecretKey` to build authorization
layer.
2015-02-01 02:44:53 -08:00
Frederick F. Kautz IV
66cc370e8b
Adding comments to explain design decisions in server.go
2015-01-28 16:33:20 -08:00
Frederick F. Kautz IV
f15e2c4e74
HTTP Server package now follows convention
2015-01-28 16:29:47 -08:00
Frederick F. Kautz IV
e8399a6d05
Adding server config structure
2015-01-28 16:07:53 -08:00
Frederick F. Kautz IV
5daa408e2c
Creating subdirectories in fs now works
2015-01-27 17:47:11 -08:00
Harshavardhana
063832baaf
Implement TLS server
...
$ ./minio --tls --cert <your_cert> --key <your_private_key>
This patchset also provides crypto/x509 - which is a wrapper package
to generate X509 certificates.
This is necessary to provide certificates later through management console
2015-01-25 17:20:00 -08:00
Frederick F. Kautz IV
c23fa26830
Extracting storage api to interface
2015-01-21 12:58:33 -08:00
Harshavardhana
e22ae2475a
Add license headers and other cleanup
2015-01-20 23:16:24 -08:00
Frederick F. Kautz IV
53190e1210
Initial work for xml list objects
2015-01-20 16:08:14 -08:00
Frederick F. Kautz IV
3c1580fcd9
Simplifying code
2015-01-20 14:07:39 -08:00
Frederick F. Kautz IV
f3705c5d61
Moving web logic to minioapi package
2015-01-19 15:59:01 -08:00
Frederick F. Kautz IV
718794205f
wip
2015-01-18 17:05:50 -08:00
Frederick F. Kautz IV
2ede0bff52
Closing channel when http server dies
...
Fixing deadlock on error
2015-01-18 17:04:09 -08:00
Frederick F. Kautz IV
1176d38e84
handler now only listens to GET requests
2015-01-18 16:23:17 -08:00
Frederick F. Kautz IV
c766f3617b
Populating http handler with test scaffolding
2015-01-18 16:16:02 -08:00
Frederick F. Kautz IV
d3d1c1afb3
Minor refactoring, moving http request logic from storage to server
2015-01-18 15:50:53 -08:00
Frederick F. Kautz IV
f356599e22
Adding initial web server and storage server module infrastructure
2015-01-18 15:06:24 -08:00
Frederick F. Kautz IV
b8981ce946
Removing old server
2015-01-17 10:39:35 -08:00
Harshavardhana
68de9ac19e
Further restructure
2015-01-14 12:40:43 -08:00