Skip to content
This repository has been archived by the owner on Jan 17, 2023. It is now read-only.

Latest commit

 

History

History
79 lines (65 loc) · 5.51 KB

README.md

File metadata and controls

79 lines (65 loc) · 5.51 KB

Episode 145 : Duck Typing in Kubernetes

  • Hosted by @n3wscott
  • 02/05/2021

Table of Contents

  • 00:00:00 - Welcome to TGIK!
  • 00:00:00 - Week in Review
  • 00:11:20 - We are here to talk about ducks.
  • 00:13:50 - Frame the prototype code for the Maths demo.
  • 00:15:00 - Kind Cluster booting.
  • 00:17:14 - ko apply the Maths controller.
  • 00:18:18 - Apply the starter demo resources.
  • 00:24:15 - Take a tour of the Maths controller, api and duck type definition.
  • 00:32:45 - Frame the "Square" CRD, start with controller runtime.
  • 00:36:18 - ko-ify the controller runtimes output to let us use ko for deploying.
  • 00:40:15 - Made a Square CRD but found it does not have a status. The drama begins.
  • 00:41:05 - Update our Square CRD with the ResultsType duck type shape.
  • 00:43:10 - oh noes, forgotten how to pull a resource out of the controller runtime client using the reconciler key, look it up.
  • 00:45:00 - Saved by Ben Moss and friends with a copy/pasta controller runtime client get for the resource. On to implementing the simple controller.
  • 00:50:21 - Try out our new Square resource controller with an object!
  • 00:51:00 - Wait! remember to update the resource status, CR does not do this for you.
  • 00:51:57 - Detour to talk about Knative Style reconcilers for a minute.
  • 00:54:41 - Applied our updated Square instance, but no status update... Let's dig in.
  • 00:59:33 - Found a missing status annotation, put in the wrong place.
  • 01:20:30 - We now have the controller updating the status, time to tie it into the original Math controller.
  • 01:21:00 - Add the aggregated RBAC for the results duck type. (note there is an issue in the Maths RBAC file that gets fixed soon)
  • 01:15:15 - Attempt to show integration with the Maths controller.
  • 01:26:36 - Status is gone again on Square! Panic mode!
  • 01:29:34 - Correcting the RBAC, still not working, more panic, time to look at some controller logs. :D
  • 01:35:30 - WORKING DUCK TYPE!
  • 01:37:22 - Let's talk about duck typing.
  • 01:38:06 - Per request, detour to poke the demo again. Find that there is still some status update issues from the controller runtime side. The code still has issues. Fix them!
  • 01:47:25 - Back to duck typing talk.
  • 01:49:37 - Pitch the API Machinery Duck Type Prototype repo proposal.
  • 01:53:00 - Thanks so much! See you on the internet.

Week in Review

Core K8s

K8s and Cloud Native Ecosystem

Show Notes

Shoutout to ramb.ly for hosting TGIK8s

Follow-up: Duck Types for Kubernetes thread on API Machinery. Discuss at the next API Machinery WG meeting, Feb 10th, 11am PST.

Repos used in this talk:

  • github.com/n3wscott/maths the starting repo with Add and Subtract resources.
  • github.com/n3wscott/multiply the resulting demo repo adding the Square resource.

Kubecon talks on duck typing: