This repo contains various Go applications that I have ported from other development stacks (typically demo applications that I have found useful over the years) or small, yet useful applications I have developed myself. All samples use Taskfiles as simpler to use alternative to Makefiles and allow you to build the app, run tests, create a container image etc. Using Taskfiles isn't required to use these samples, but if you're new to Go will they help you to get started quickly without having to know the Go toolchain, the Docker CLI etc.
-
booklibrary: This a port of Addy Osmani's venerable booklibrary API found in the Book Developing Backbone.js Applications originally written in JavaScript for Node.js. The Go version makes use of chi to implement as RESTful resource, the official Mongo driver for Go, and exposes Prometheus metrics.
-
kubeup: This is a webhook that listens for Azure Kubernetes Service events received from Azure Event Grid built using the CloudEvents Go SDK. This allows you to be notified of new Kubernetes versions becoming available, the start and end of rolling cluster upgrades or deprecation warnings if your Kubernetes will fall out of support.
kubeup
allows you to send forward these events by email, log them, and provide your own event handling logic.Technically, you can achieve the same with an Azure Function or a Logic App, but being able to run a 10 MB container image on a Azure Container App with scale-to-zero to me is a viable alternative.