You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -1197,15 +1197,39 @@ This is very similar to the previous:
1197
1197
This semantic will just be a 1-1 translation from the proposed KEP to this
1198
1198
"Depends On" semantic, so it is easy for them to coexist.
1199
1199
1200
-
####Proof of concept implementations
1200
+
### Proof of concept implementations
1201
1201
1202
-
#####KEP implementation and Demo
1202
+
#### KEP implementation and Demo
1203
1203
1204
-
#### PoC and Demo
1205
1204
There is a [PR here](https://github.com/kubernetes/kubernetes/pull/75099) with a working Proof of concept for this KEP, it's just a draft but should help illustrate what these changes would look like.
1206
1205
1207
1206
Please view this [video](https://youtu.be/4hC8t6_8bTs) if you want to see what the PoC looks like in action.
1208
1207
1208
+
#### Another implementation using pod annotations
1209
+
1210
+
Another implementation using pod annotations on top of Kubernetes 1.17 is
1211
+
available [here][kinvolk-sidecar-branch].
1212
+
1213
+
There are some example yamls in the [sidecar-tests
1214
+
folder][kinvolk-poc-sidecar-test], also the yaml output was captured to easily
1215
+
see the behavior. [See the commit that created
1216
+
them][kinvolk-poc-sidecar-test-commit] for instruction on how to run it.
1217
+
1218
+
Some other things worth noting about the implementation:
1219
+
* It is done using pod annotations so it is easy to test for users (doesn't
1220
+
modify pod spec)
1221
+
* It implements the KEP proposal and not the suggested modifications, with one
1222
+
exception: the podPhase is not modified.
1223
+
*[This line][kinvolk-poc-sidecar-prestop] should be modified to use the
1224
+
`TerminationHook` instead, if such alternative is chosen
1225
+
* There is some c&p code to avoid doing refactors and just have a patch that is
1226
+
simpler to cherry-pick on different Kubernetes versions.
You could set all containers to have `lifecycle.type: Sidecar`, this would cause strange behaviour in regards to shutting down the sidecars when all the non-sidecars have exited. To solve this the api could do a validation check that at least one container is not a sidecar.
0 commit comments