Commit Graph

158 Commits

Author SHA1 Message Date
Jordan Liggitt 0c706a033c Plumb context to admission Admit/Validate
Kubernetes-commit: 61774cd7176cae0c0324d23ab20e6c6b3038153f
2019-08-19 10:48:08 -04:00
Walter Fender 9bdac68d70 Get network-proxy working with GCE.
Got the proxy-server coming up in the master.
Added certs and have it comiung up with those certs.
Added a daemonset to run the network-agent.
Adding support for agent running as a sameon set on every node.

Added quick hack to test that proxy server/agent were correctly
tunneling traffic to the kubelet.

Added more WIP for reading network proxy configuration.
Get flags set correctly and fix connection services.
Adding missing ApplyTo
Added ConnectivityService.
Fixed build directives. Added connectivity service configuration.
Fixed log levels.
Fixed minor issues for feature turned off.
Fixed boilerplate and format.
Moved log dialer initialization earlier as per Liggits suggestion.
Fixed a few minor issues in the configuration for GCE.
Fixed scheme allocation
Adding unit test.
Added test for direct connectivity service.

Switching to injecting the Lookup method rather than using a Singleton.
First round of mikedaneses feedback.
Fixed deployment to use yaml and other changes suggested by MikeDanese.

Switched network proxy server/agent which are kebab-case not camelCase.
Picked up DIAL_RSP fix.
Factored in deads2k feedback.
Feedback from mikedanese
Factored in second round of feedback from David.
Fix path in verify.
Factored in anfernee's feedback.
First part of lavalamps feedback.
Factored in more changes from lavalamp and mikedanese.

Renamed network-proxy to konnectivity-server and konnectivity-agent.
Fixed tolerations and config file checking.
Added missing strptr
Finished lavalamps requested rename.
Disambiguating konnectivity service by renaming it egress selector.

Switched feature flag to KUBE_ENABLE_EGRESS_VIA_KONNECTIVITY_SERVICE

Kubernetes-commit: ebb65c5f4c51340f42c260cf00bde8629ed68d74
2019-05-20 12:44:51 -07:00
Ted Yu 4eb89249bd Rename TriggerPublisherFunc as IndexerFunc
Kubernetes-commit: 6e98aab26e4fb867a6d8b4342937823cf1597d89
2019-07-18 06:45:48 -07:00
wojtekt bb8cecbe8c Simplify trigger functions in cacher
Kubernetes-commit: 68fd329e00d1ddf19a7ec0db1607820a1c4c008a
2019-07-04 14:21:06 +02:00
wojtekt fa23498ce7 Propagate error from creating cacher and storage decorators up
Kubernetes-commit: ee13be28845e8c55f6e2a2207ca4f46cd67fdb4e
2019-07-15 09:34:08 +02:00
Walter Fender ab45142917 Making sure we handle error on http.NewRequest().
http.NewRequest can return an error. (Eg. error parsing url).
This will cause us to have a nil req object.
That in turn will become a SIGSEGV when we set the context.

Kubernetes-commit: ee2ad1d1fe55a3823311267f39e8b14e8b0c4c68
2019-07-02 14:28:55 -07:00
wojtekt 9698803236 Move etcd/testing to etcd3/testing
Kubernetes-commit: 7497260e54c555c1fb1def741267f9dc23fe7dce
2019-07-01 10:38:19 +02:00
wojtekt 6d99094b88 Move APIObjectVersioner
Kubernetes-commit: fd819f8fdc2528249efc94c18da434b61fe87925
2019-06-28 13:58:08 +02:00
wojtekt cc7d4cc1f1 Move metrics to etcd3 and clean up
Kubernetes-commit: a06f2cfc3fa896d9edefe42387da65905b30ec8e
2019-06-28 13:05:58 +02:00
yue9944882 5cf39ce1e6 remove finailzers
Kubernetes-commit: e00bb664e1f58af5e3e9eb9c692bf9958a31cf7d
2019-06-28 14:04:24 +08:00
Chao Xu 5c9333e4d3 Run deleteValidation at the storage layer so that it will be retried on
conflict.

Adding unit test verify that deleteValidation is retried.

adding e2e test verifying the webhook can intercept configmap and custom
resource deletion, and the existing object is sent via the
admissionreview.OldObject.

update the admission integration test to verify that the existing object
is passed to the deletion admission webhook as oldObject, in case of an
immediate deletion and in case of an update-on-delete.

Kubernetes-commit: 7bb4a3bace048cb9cd93d0221a7bf7c4accbf6be
2019-04-09 13:49:16 -07:00
yue9944882 019679ce23 Cherrypicking #66535
validate deletion admission object

backward compatibility: add validation for direct storage delete calls

apply nil validation to existing tests

revert behavior changes in deleteCollection call

fixes validation on wiring graceful deletion

remove nil validation check

continue admission check on not found error

Kubernetes-commit: 34c4a6e05767e6c6211b88ccc653f2b07021906a
2018-07-24 12:24:59 +08:00
Jordan Liggitt 3da6a60114 Handle updates removing remaining finalizers on deleted objects
Kubernetes-commit: fba885a0d2cb723a50c95ebc4562696d9f931f04
2019-05-15 15:04:38 -04:00
Joe Betz 19327df6d5 Pass {Operation}Option to Webhooks
Kubernetes-commit: 140c8c73a64deb102b528109138ca9fb7dbb2392
2019-05-07 13:34:18 -07:00
Chao Xu d7f4ff742a In GuaranteedUpdate, retry on any error if we are working with stale data
Kubernetes-commit: 5e53522a9ef56f33d06c457c072c379131e127ef
2019-05-08 15:05:07 -07:00
Jordan Liggitt 949522070d Fix unstructured list interface compatibility, fix kubectl paging
Kubernetes-commit: e5778f05b973aa70a129ef77235da3cf1b1139e3
2019-05-08 01:48:26 -04:00
fansong.cfs 58fb117373 add watch bookmark
Kubernetes-commit: d70edd3d39d4430d71c4b7c9adba8df5ba7f16c8
2019-03-19 18:16:23 +08:00
fansong.cfs 73057f16b6 add timeout suuport for watch
Kubernetes-commit: b304a1f96d85cd351a0e22a091e17064d5edb35e
2019-04-03 09:37:48 +08:00
fansong.cfs 9130ee52b5 Refactor watchcache to support bookmark
Kubernetes-commit: b29e69c1562f66cf339ae7cd58979528791f035f
2019-03-29 17:49:15 +08:00
Yassine TIJANI 72bd8c7a64 use cache size to signal undecorated storage
Kubernetes-commit: 8261d3d9a63f0972453f6503b62299a96ecee657
2019-02-20 22:15:24 +01:00
Clayton Coleman 8d7b330c4c Support Table and PartialObjectMetadata on watch
Clean up the code paths that lead to objects being transformed and output with negotiation.
Remove some duplicate code that was not consistent. Now, watch will respond correctly to
Table and PartialObjectMetadata requests. Add unit and integration tests.

When transforming responses to Tables, only the first watch event for a given type will
include the columns. Columns will not change unless the watch is restarted.

Add a volume attachment printer and tighten up table validation error cases.

Disable protobuf from table conversion because Tables don't have protobuf because they
use `interface{}`

Kubernetes-commit: 3230a0b4fd14a6166f8362d4732e199e8779c426
2018-11-28 23:50:12 -05:00
ajatprabha 9f2ef664a0 update testDeleteWithResourceVersion
Kubernetes-commit: fe3b9f486fe988cf6b6cd83c54c2be77892fa123
2019-02-25 22:43:28 +05:30
ajatprabha e6793285a2 check for ResourceVersion conflict in separate if block
Kubernetes-commit: 42f0a36f44bac33f4230fdea9f3dcc4bfb645a0a
2019-02-15 04:37:18 +05:30
ajatprabha 10074505ca add ResourceVersion to DeleteOptions.Preconditions
Kubernetes-commit: 8f48d762717dfe1f479cfabaabc4fb9261a1bc8f
2019-02-14 04:09:12 +05:30
Chao Xu d99ef88606 Expose storage version hash
Kubernetes-commit: 3b618af0d435628feedf06f97bd1c69340d07d95
2019-01-14 19:31:25 -08:00
Mehdy Bohlool 87b5ac0c06 Add ObjectInterfaces to Admission and Validation
Kubernetes-commit: 513a87c7b25aa58f84fafe0dc170cee4c76e481b
2019-02-16 12:27:24 -08:00
Justin SB bf98046128 Remove executable file permission from OWNERS files
Kubernetes-commit: dd19b923b7c26420af39fcf4eedfa213b236c8d3
2019-01-03 12:18:20 -05:00
Elijah Oyekunle 058699b3b6 Fixes Golint Errors: staging/src/k8s.io/kube-aggregator (#73369)
* fixed golint errors in staging/src/k8s.io/kube-aggregator

* update openapi

* unexported autoRegisterController

Kubernetes-commit: 805a9e703698d0a8a86f405f861f9e3fd91b29c6
2019-02-11 23:16:05 +01:00
Roy Lenferink 4c9524b9fb Updated OWNERS files to include link to docs
Kubernetes-commit: b43c04452f3b563473b5c2a765d4ac18cc0ff58f
2019-01-30 20:05:00 +01:00
Antoine Pelisse 337fc9ccde API Machinery, Kubectl and tests
Kubernetes-commit: 0e1d50e70fdc9ed838d75a7a1abbe5fa607d22a1
2019-01-16 21:14:42 -08:00
Jordan Liggitt d1d4d76560 mark metadata.initializers as deprecated
Kubernetes-commit: 047ecae1f445ed0f6ea7595c40122362444952a4
2019-01-17 09:20:30 -05:00
Jordan Liggitt 80029a760c Deprecate and remove use of alpha metadata.initializers field, remove IncludeUninitialized options
Kubernetes-commit: 17aa60686ebe5fd04b4fe6f442dc36a8d70b6730
2019-01-17 09:19:28 -05:00
Jordan Liggitt 1091762f5e Do not move deletionTimestamp to the future
Kubernetes-commit: 17588f0fdc2a863bf7ae8162971c434e6b7a71df
2019-01-21 10:44:59 -05:00
Davanum Srinivas 2710b17b80 Move from glog to klog
- Move from the old github.com/golang/glog to k8s.io/klog
- klog as explicit InitFlags() so we add them as necessary
- we update the other repositories that we vendor that made a similar
change from glog to klog
  * github.com/kubernetes/repo-infra
  * k8s.io/gengo/
  * k8s.io/kube-openapi/
  * github.com/google/cadvisor
- Entirely remove all references to glog
- Fix some tests by explicit InitFlags in their init() methods

Change-Id: I92db545ff36fcec83afe98f550c9e630098b3135

Kubernetes-commit: 954996e231074dc7429f7be1256a579bedd8344c
2018-11-09 13:49:10 -05:00
xichengliudui 92cd1a54fc Remove excess 'in'
Fix some typo

Fix some typo

Kubernetes-commit: ef496320cf6ba73f118fc285691043a87ae05727
2018-10-11 00:52:39 -04:00
Jordan Liggitt 3b6fc08803 Remove etcd2 storage backend
Kubernetes-commit: 85ae79500fba7d6e51292b12daff829027b59872
2018-10-01 16:48:14 -04:00
Tim Allclair 0d5b09cce3 Only allow apiserver to follow redriects to the same host
Kubernetes-commit: 4ee9f007cbc88cca5fa3e8576ff951a52a248e3c
2018-07-23 13:16:25 -07:00
Nikhita Raghunath 4e2bd91334 Fix tests to support ObjectMeta omitempty semantics
Kubernetes-commit: dabd56f7df207c1babc83871c43c90cf9451e896
2018-08-19 01:04:28 +05:30
Nikhita Raghunath 4c15aa6ed8 Prevent resource version to custom resource on no-op writes
For ObjectMeta pruning, we round trip through marshalling and
unmarshalling. If the ObjectMeta contained any strings with "" (or other
fields with empty values) _and_ the respective fields are omitempty,
those fields will be lost in the round trip process.

This makes ObjectMeta after the no-op write different from the one
before the write.

Resource version is incremented every time data is written to etcd.
Writes to etcd short-circuit if the bytes being written are identical
to the bytes already present. So this ends up incrementing the
resourceVersion even on no-op writes.

The zero values are set in BeforeCreate and BeforeUpdate. This commit
updates BeforeUpdate such that zero values are only set when the
object does not have a zero value for the respective field.

Kubernetes-commit: d691748aa64376e4b90ae2c01aca14d1be2b442c
2018-08-20 20:13:55 +05:30
Yu-Ju Hong ebfb60793e Update the InputStream tests
Kubernetes-commit: ab25c40ceb8af9da74f2cb5cc498ed4d4a0afb9b
2018-08-13 17:35:00 -07:00
Yu-Ju Hong 6b85aed1d6 apiserver: pass the parent request context when creating InputStream
This ensures that request cancellation will be propagated properly to
the client used to create the stream. Without this fix, the apiserver
and the kubelet may leak resources (e.g., goroutine, inotify watches).
One such example is that if user run `kubectl logs -f <container that
don't produce new logs)` and then enter ctrl-c, both kubelet and
apiserver will hold on to the connection and resources indefinitely.

Kubernetes-commit: 31d1607a514b62ef46452e402f5438d827314b98
2018-08-13 16:34:49 -07:00
Antoine Pelisse c4bca20fbb dry-run: Add resttests
Kubernetes-commit: f3b8e85a4e5719c22d35b922e82c7dff7b5982b0
2018-08-03 11:35:23 -07:00
Chao Xu e1ccfa4e7d Remove rest.ConnectRequest.
Make apiserver pass connectRequest.Options directly to the admission layer. All
the information in rest.ConnectRequest is present in admission attributes.

Kubernetes-commit: 355691d310803ea3a0cd8ff284a39ead38857602
2018-07-30 18:35:51 -07:00
jennybuckley 91278157f6 Support dry run in admission plugins
Kubernetes-commit: adafb1365e2b9f6c422c437e916e22a4fe1c2e3a
2018-08-06 10:37:44 -07:00
Antoine Pelisse 30e2071cad storage: Move precondition check as a method of preconditions
Kubernetes-commit: b5258a53809bde48cac07848d787a0fc7db16b2a
2018-07-31 13:53:27 -07:00
Antoine Pelisse dbac430f68 dry-run: Use dry-runnable structure
Kubernetes-commit: 68937c4934013739a1efc1b051820667d6d6349d
2018-06-21 08:49:13 -07:00
David Eads cb5cac48ee make package name match all the import aliases
Kubernetes-commit: d3bd0eb1d5cefc25e4476d8dc086ebd90439ef4e
2018-08-01 10:01:32 -04:00
Antoine Pelisse cc843478d7 dry-run: Create new options for Update/Create and pass it along
Kubernetes-commit: 03b1e14101a73706980b559b4b7069ea956c80bd
2018-06-14 09:14:59 -07:00
jennybuckley 621e8af54b Allow override AllowCreateOnUpdate with new argument to Update
Kubernetes-commit: d10e08fc897f6b5e60ce2aa8420bd2ea536e18b8
2018-06-28 14:24:51 -07:00
Mikhail Mazurskiy 0f7bbcadfb Add missing error handling in schema-related code
Kubernetes-commit: bfe313d5f351dfae086a85a97e7103183173e5b5
2018-06-03 14:59:58 +10:00