JT Olio
946ec201e2
metainfo: move api keys to part of the request ( #3069 )
...
What: we move api keys out of the grpc connection-level metadata on the client side and into the request protobufs directly. the server side still supports both mechanisms for backwards compatibility.
Why: dRPC won't support connection-level metadata. the only thing we currently use connection-level metadata for is api keys. we need to move all information needed by a request into the request protobuf itself for drpc support. check out the .proto changes for the main details.
One fun side-fact: Did you know that protobuf fields 1-15 are special and only use one byte for both the field number and type? Additionally did you know we don't use field 15 anywhere yet? So the new request header will use field 15, and should use field 15 on all protobufs going forward.
Please describe the tests: all existing tests should pass
Please describe the performance impact: none
2019-09-19 10:19:29 -06:00
Egon Elbre
369a51ed00
lib/uplink: ensure it's silent by default ( #2676 )
2019-08-01 07:14:09 -04:00
aligeti
29b576961f
value attribution merge fix and more test cases ( #2588 )
...
* value attribution merge fix and more test cases
2019-07-19 11:17:34 -04:00
Jess G
f11bf46a11
Jg/1967 mv bucket metadata uplink ( #2505 )
...
* add bucketstore, add init uplink bucket
* update uplink to use bucket rpc
* fix tests
* wrap metainfo client errors
* add allowedBucket struct, fix tests
* update comment
* add paging
* updates per CR
* add test for pagination
* fix lint
* fix uplink test so its easier tyo understand
* fix gateway pagination bug
* changes per cr
* fix bug w/allowedBuckets, add test to catch
2019-07-12 08:57:02 -04:00
Egon Elbre
681f502b0e
lib/uplink: ensure tests are compiled separately ( #2440 )
...
* fix uplink tests
* use consistent receiver names
Change-Id: Ifd5e86aa0a922538374718abfcb605049f5fb3ba
* ugh and actually use the receiver
Change-Id: Iae000ca5549c881ac025432c7722c58868c98e76
* avoid review comments
Change-Id: Id96370e5f2de8a9602d422d470027003ec89b8df
2019-07-05 15:02:49 -05:00
Jeff Wendling
1a65e42d33
rename EncryptionCtx back to EncryptionAccess ( #2368 )
...
* rename EncryptionCtx back to EncryptionAccess
Change-Id: I5e58915a59979ad6f2e83d36e191b2bbf3ba2ba2
* missed some stuff
Change-Id: Ib65fb186d7f854c0406e5fd7d11498e8941da59e
* oops protolock
Change-Id: I85a5ab4bafb9dd6a804d3dcd17a70811702f07e4
* retrigger
Change-Id: I2d0e3f02b4dbae0299b090e9617662b4437980b0
2019-06-27 23:18:24 -06:00
aligeti
811168e2c4
Uplink bucket attribution extension ( #2353 )
...
Attribution info added to the bucket info
2019-06-27 19:25:36 -04:00
Jeff Wendling
efcdaa43a3
lib/uplink: encryption context ( #2349 )
...
* lib/uplink: encryption context
Change-Id: I5c23dca3286a46b713b30c4997e9ae6e630b2280
* lib/uplink: bucket operation examples
Change-Id: Ia0f6e69f365dcff0cf11c731f51b30842bce053b
* lib/uplink: encryption key sharing test cases
Change-Id: I3a172d565f33f4e591402cdcb9460664a7cc7fbe
* fix encrypted path prefix restriction issue
Change-Id: I8f3921f9d52aaf4b84039de608b8cbbc88769554
* implement panics in libuplink encryption code
todo on cipher suite selection as well as an api concern
Change-Id: Ifa39eb3cc4b3443f7d96f9304df9b2ac4ec4085d
* implement GetProjectInfo api call to get salt
Change-Id: Ic5f6b3be9ea35df48c1aa214ab5d355fb328e2cf
* some fixes and accessors for encryption store
Change-Id: I3bb61f6712a037900e2a96e72ad4029ec1d3f718
* general fixes to builds/tests/etc
Change-Id: I9930fa96acb3b221d9a001f8e274af5729cc8a47
* java bindings changes
Change-Id: Ia2bd4c9c69739c8d3154d79616cff1f36fb403b6
* get libuplink examples passing
Change-Id: I828f09a144160e0a5dd932324f78491ae2ec8a07
* fix proto.lock file
Change-Id: I2fbbf4d0976a7d0473c2645e6dcb21aaa3be7651
* fix proto.lock again
Change-Id: I92702cf49e1a340eef6379c2be4f7c4a268112a9
* fix golint issues
Change-Id: I631ff9f43307a58e3b25a58cbb4a4cc2495f5eb6
* more linting fixes
Change-Id: I51f8f30b367b5bca14c94b15417b9a4c9e7aa0ce
* bug fixed by structs bump
Change-Id: Ibb03c691fce7606c35c08721b3ef0781ab48a38a
* retrigger
Change-Id: Ieee0470b6a2d07168a1578552e8e7f271ae93a13
* retrigger
Change-Id: I753d63853171e6a436c104ce176048892eb974c5
* semantic merge conflict
Change-Id: I9419448496de90340569047a6a16a1b858a7978a
* update total to match prod defaults
Change-Id: I693d55c1ebb28b5803ee1d26e9e198decf82308b
* retrigger
Change-Id: I28b74d5d6202f61aa3866fe407d423f6a0a14b9e
* retrigger
Change-Id: I6fd054885c715f602e2cef623fd464c42e88742c
* retrigger
Change-Id: I6a01bae88c72406d4ed5a8f13bf8a2b3c650bd2d
2019-06-27 17:36:51 +00:00
aligeti
7facda4422
value attribution integration with libuplink ( #2297 )
...
* integrates the value attribution with libuplink
2019-06-26 12:22:01 -04:00
Jennifer Li Johnson
e285fe1997
Don't require encryption keys for project or bucket management ( #2291 )
2019-06-23 22:06:14 -04:00
Jess G
d84cd719ff
add const stripesPerBlock const to calc blocksize ( #2163 )
...
* add const stripesPerBlock, update comments in Pad, add speed to progressbar
* change size of erasure share size, update comments
* missing copyright
* update tests with stripesPerBlock
2019-06-11 10:14:05 -07:00
Jess G
bf3d168cf6
makes sure all uplink cli configs get passed to libuplink, add stripeSize ( #2103 )
...
* makes sure all uplink cli configs get passed to libuplink, add stripSize
* update comment
* update defaults for uplink config blocksize
* changes per CR, update uplink config defaults
* pass shareSize from uplink config
* move block size validation to kvmeta pkg
* fix tests
* shareSize default 1k, rm config option blocksize
* rm printing err to stdout
2019-06-06 11:55:10 -07:00
Kaloyan Raev
8fc5fe1d6f
Refactor pb.Node protobuf ( #1785 )
2019-04-22 12:07:50 +03:00
JT Olio
d70f6e3760
libuplink: remove encryption key from project opening ( #1761 )
...
What: This change moves project-level bucket metadata encryption information to the volatile section, because it is unlikely to remain in future releases
Why: Ultimately, the web user interface will allow bucket management (creation, removal, etc), but not object management as that requires an encryption key for sure and we don't want to have users give the satellite their encryption keys.
At a high level, a (*Project) type should map to all of the things you can do inside the web user interface within a project, which by necessity cannot have an encryption key. So, we really don't want an encryption key in the non-volatile section of this library.
2019-04-16 11:29:33 -04:00
paul cannon
0ae0de75bc
use SerializableMeta to store bucket attributes ( #1658 )
2019-04-10 18:27:04 -04:00