Commit Graph

42 Commits

Author SHA1 Message Date
David Ashpole 5b1bafe4d2 update prometheus dependency for staging
Kubernetes-commit: 56f53b92074b5da5de8e2307d791c466ec59bf58
2017-06-13 20:47:31 +00:00
Clayton Coleman 5fa08b8c5e Allow initialization of resources
Add support for creating resources that are not immediately visible to
naive clients, but must first be initialized by one or more privileged
cluster agents. These controllers can mark the object as initialized,
allowing others to see them.

Permission to override initialization defaults or modify an initializing
object is limited per resource to a virtual subresource "RESOURCE/initialize"
via RBAC.

Initialization is currently alpha.

Kubernetes-commit: 331eea67d8000e5c4b37e2234a90903c15881c2f
2017-06-13 20:47:30 +00:00
Saksham Sharma 0b1c13686c Add configuration options for encryption providers
Add location transformer, config for transformers

Location transformer helps choose the most specific transformer for
read/write operations depending on the path of resource being accessed.

Configuration allows use of --experimental-encryption-provider-config
to set up encryption providers. Only AEAD is supported at the moment.

Add new files to BUILD, AEAD => k8s-aes-gcm

Use group resources to select encryption provider

Update tests for configuration parsing

Remove location transformer

Allow specifying providers per resource group in configuration

Add IdentityTransformer configuration option

Fix minor issues with initial AEAD implementation

Unified parsing of all configurations

Parse configuration using a union struct

Run configuration parsing in APIserver, refactor parsing

More gdoc, fix minor bugs

Add test coverage for combined transformers

Use table driven tests for encryptionconfig

Kubernetes-commit: 9760d00d08ef0619e30a7b1b90fd290cab960069
2017-06-13 20:47:30 +00:00
Wojciech Tyczynski d84eb10096 Optimize selector for single-matching items
Kubernetes-commit: f93a270edcefc3780247ae89eea02cd13b81237b
2017-06-13 20:47:29 +00:00
Monis Khan 6794013a5b Panic server on watch errors in test environment
This change makes it so that errors during watch decoding panic the
server if it is in a test environment.  This allows us to catch coder
errors related to storing incompatible types at the same location in
etcd.

Signed-off-by: Monis Khan <mkhan@redhat.com>

Kubernetes-commit: a13f026fd012859f04467e6007e2cafe4a788927
2017-06-13 20:47:29 +00:00
Clayton Coleman 08910cc6fc Cache watch returns incorrect object on DELETED events
The underlying storage has always returned the old object on watch
delete events when filtering. The cache watcher does not, which means a
downsteam caller gets different behavior.

This fixes the cache watcher to be consistent with our long term
behavior for watch. It may result in a behavior change (the filter
becomes more precise) but this was a regression in behavior.

Kubernetes-commit: e9e69356e4907fa4d0f45ea7e7768357ba71aba9
2017-06-13 20:47:27 +00:00
deads2k 283dd09ef7 tighten and simplify owners in some staging repos
Kubernetes-commit: e7871dbab26459163fd916b83563c4815c7ca43c
2017-06-13 20:47:27 +00:00
Clayton Coleman ec289c4e0b Refactor move of client-go/util/clock to apimachinery
Kubernetes-commit: 3e095d12b4f152a45b593927804e2e7b8816239a
2017-05-21 17:28:01 +00:00
Clayton Coleman 3cbbcf996a Move pkg/util/cache to apimachinery
Will be used by client-go as well

Kubernetes-commit: 529e627c8a4338d48cd2bf658303bac6fef6aaaa
2017-05-21 17:28:01 +00:00
Clayton Coleman 0bd7c5925e generated: bazel
Kubernetes-commit: 7827899b1dd22074eb230e241f63e69499046fb6
2017-05-17 17:27:53 +00:00
Clayton Coleman 4ec184826d Allow config to accept a Transformer
Kubernetes-commit: 4f27d8feea0cbb7634554ef8af1ad6265738a2a1
2017-05-17 17:27:53 +00:00
Clayton Coleman f27996225a Update etcd3 storage to leverage storage/value interfaces
Adds context argument which must be set for AES GCM authenticated data
to be passed.

Kubernetes-commit: a73990a33f95713f026ee7ae9ae6741255aaf8e4
2017-05-17 17:27:53 +00:00
Clayton Coleman 0fb460572a Add an AEAD encrypting transformer for storing secrets encrypted at rest
Tweak the ValueTransformer interface slightly to support additional
context information (to allow authenticated data to be generated by the
store and passed to the transformer). Add a prefix transformer that
looks for known matching prefixes and uses them. Add an AES GCM
transformer that performs AEAD on the values coming in and out of the
store.

Kubernetes-commit: f418468c87d3071c5d9ed14ce850996c77251080
2017-05-17 17:27:53 +00:00
Chao Xu 3ffeae2ff7 hack/update-bazel.sh
Kubernetes-commit: 14045d253d11c801ad94f0928cb9b13a224ee18f
2017-05-13 17:27:43 +00:00
Chao Xu e46eb82a82 remove invocation of k8s.io/client-go/pkg/api/install
change import of client-go/api/helper to kubernetes/api/helper

remove unnecessary use of client-go/api.registry

change use of client-go/pkg/util to kubernetes/pkg/util

remove dependency on client-go/pkg/apis/extensions

remove unnecessary invocation of k8s.io/client-go/extension/intsall

change use of k8s.io/client-go/pkg/apis/authentication to v1

Kubernetes-commit: c354076aa41e3cf417b291d5f0eff2b70395ac30
2017-05-13 17:27:42 +00:00
Chao Xu e84e32eaa5 remove references to client-go/pkg/api
Kubernetes-commit: d978f22e04519f6eecfde839110c398dc28d4e8e
2017-05-03 20:36:26 +00:00
Mike Danese 2aab760a2a autogenerated
Kubernetes-commit: a05c3c0efdc5822049e34b1a5a1ee259c5fb1906
2017-04-15 20:35:23 +00:00
deads2k 5e858945af remove objectmetafor
Kubernetes-commit: 04460c8750b9a47672aa708251de0e703cfb7266
2017-04-11 20:35:21 +00:00
deads2k e8e8bbf610 remove ListMetaFor
Kubernetes-commit: 7df37c484dac3438530f2b8cb03cf63f85f2fc29
2017-04-08 20:35:19 +00:00
Cao Shufeng 1e6400df1f delete etcd socket file for unit tests
This change clean up the environment for etcd3 unit test.
Without this change, "make test" will leave some socket files in
workspace. And these socket files make hack/verify-generated-protobuf.sh
fails.

Kubernetes-commit: 4e9dcf3da536a9b956eb092fe9dbc5b2081cfb9d
2017-03-31 20:37:15 +00:00
Jordan Liggitt a22f78080a Preserve custom etcd prefix compatibility for etcd3
Kubernetes-commit: 6853e4d71ea128ff955fad32972ad9edcb376dfb
2017-03-18 19:56:09 +00:00
Dr. Stefan Schimanski 07a502d3a2 apimachinery: handle duplicated and conflicting type registration
Kubernetes-commit: 395be3b4010b0eef63e98961a14064360fdca26c
2017-03-18 19:56:08 +00:00
Derek Carr 53343624bb stop spamming logs on restart of api server
Kubernetes-commit: 9211e0380f39f08ff99dcf78f50fefad1d0179b8
2017-03-18 19:56:08 +00:00
Dr. Stefan Schimanski 73c30cda7e staging/src/*: run gofmt 2017-02-23 09:48:09 -05:00
fate-grand-order 3890a8e1d0 fix misspell "underlying" in cacher.go 2017-02-23 09:48:09 -05:00
Wojciech Tyczynski bdf67d9749 Revert "Revert "Avoid unnecessary copies in cacher"" 2017-02-16 08:03:04 -05:00
Dr. Stefan Schimanski 585aca0c2c k8s.io/apiserver: straighten EtcdOptions, backend Config and kube RESTOptionsFactory 2017-02-16 08:03:03 -05:00
Wojciech Tyczynski c2f76cc51b Revert "Avoid unnecessary copies in cacher" 2017-02-13 07:36:41 -05:00
Clayton Coleman 74dc1360f1 Allow ValueTransformer to indicate resource is stale
Allows a transformer (such as an encrypter) to force an update if a new
key is in use, thus allowing simple writes to the REST layer to
trivially migrate keys.
2017-02-13 07:36:41 -05:00
Clayton Coleman 3d8615c851 Allow values to be wrapped prior to serialization in etcd3 2017-02-13 07:36:41 -05:00
Clayton Coleman 679a2b25d7 Allow values to be wrapped prior to serialization in etcd2
This adds a new value transformer to the etcd2 store that can transform
the value from etcd on read and write. This will allow the store to
implement encryption at rest or otherwise transform the value prior to
persistence.
2017-02-13 07:36:41 -05:00
Dr. Stefan Schimanski 0e2b28a48d Update generated files 2017-02-13 07:36:41 -05:00
Dr. Stefan Schimanski 4b46da7a0d Mechanical import fixup: pkg/storage 2017-02-13 07:36:41 -05:00
Dr. Stefan Schimanski 4a2fe15be7 Mechanical move: pkg/storage -> k8s.io/apiserver 2017-02-13 07:36:41 -05:00
Dr. Stefan Schimanski 6025c228e6 pkg/storage/etcd: cut off pkg/api scheme 2017-02-02 09:36:48 -05:00
Wojciech Tyczynski 83dfb6ab47 Avoid unnecessary copies in cacher 2017-02-02 09:36:48 -05:00
deads2k 55fd399ad4 move pkg/storage to apiserver 2017-02-01 07:33:52 -05:00
deads2k b60c7818e4 move storage/storagebackend to apiserver 2017-01-27 14:15:18 -05:00
Clayton Coleman e31581569e iQEcBAABCAAGBQJYfoobAAoJED0WkGtPHFyz80gH/RNPz9wEQ9kjzmq5Zccmxcnn
Nz8+i0Ksr4dvwTV7SaYO8NHpkqTR6z5X1vLlwIAve/hjCyvZ58xT1qEbPyXNWXvq
 sYgj1b490wdrF0cFQVY7YoKUK5FgwGnmdK+vXG2bUZl6qlnik742QDP5zkxPnwHI
 tpz4o0SfOisxFFkktowems4SMBBLSozqChzAnhbE0b5L/+bLcxOkNaZ8w0CPX5TE
 1uVpw+lAuLq/10XKBhWb6wyc/2+aW0EfUs/4JIK69giPY+Km0QMejIJ4UYc6ml2F
 DOGcWR+nKbeMIi6TFMZd1MdfLhSzipRxCECv1MYEZgIg3nGchYdybriJiYG8R3M=
 =DxiX
 -----END PGP SIGNATURE-----

Correct import statements
2017-01-18 07:43:45 -05:00
Clayton Coleman 474b80883a iQEcBAABCAAGBQJYfoneAAoJED0WkGtPHFyzON8H/2oS1qSlJg/iJ8Ia6Hf/U7/k
i7CaVgRIrMJbxPbPeXSE9UZuoUkuM8R9/J5J1Nu/ZNhEoHfUDWCKvLTIyRmplrIX
 GW/I7LHoRaFdi4RDQLprBdbWJt0Vyi2JNwIoX8EDsNT9/09WmRbNaganoQ35bos0
 ath62hBu34h1xIa9vXf+eh08IqReNraztRD/f7SOfHk2qhLQGREDqPUC/jEkrW5+
 45+mT2RvzTmnY2yoMxh1StpISqxOTX/R9Pt8wWwY7LcC0s9GLMYpTRMynaWr40rb
 30XEdFr6O5sRui4Ho2pjb0YY2NuhyPhiEfGMY2p+zRO9uXaFhQJBxd4OnDNXPp4=
 =bile
 -----END PGP SIGNATURE-----

Move APIs and core code to use metav1.ObjectMeta
2017-01-18 07:43:45 -05:00
deads2k 1f282a1786 move name generation to generic api server storage helpers 2017-01-17 10:46:17 -05:00
deads2k 6687ea314a moves of genericapiserver packages without dependencies 2017-01-13 13:38:51 -05:00