July 2019
Intermediate to advanced
502 pages
14h
English
Stopping a service is as simple as calling the Done() method of the context. It can be used to signal completion to any code that uses contexts:
func StopService(ctx context.Context) { ctx.Done() }
As you can see, there is a lot of work involved in running Delinkcious, or even just a few parts of Delinkcious locally without the help of Kubernetes. When Delinkcious is running, it's great for debugging and troubleshooting, but creating and maintaining this setup is tedious and error-prone.
Also, even if all the integration tests work, they don't fully replicate the Kubernetes cluster, and there may be many failure modes that are not captured. Let's see how we can do local testing with Kubernetes itself.