Go Meetup #9


Details
Hosted by SentinelOne
Please note at the SentinelOne office, all meetup attendees will be required to sign a generic NDA used for all office visitors to be able to attend the meetup.
Talks will start 18:30, and we have 3 talks.
1) Martin Fryc (SentinelOne) - Kubebuilder: a framework for building Kubernetes APIs using Go
Description: Kubebuilder is Kubernetes (k8s) official framework to extend its APIs in an easy way. As most of the k8s is written in Go, this framework is also using it for the development of custom logic. Code is running in k8s as an “operator” automating otherwise manual or complex tasks.
- What is Kubebuilder
- Kubernetes API extension points (CRDs and operators)
- Typical use cases for operators and Kubebuilder
- How to write simple operator
Bio: Martin works with Go for 5 years, mainly in the area of Kubernetes (observability and operators) and applications development (GRPC and HTTP microservices and databases). For most of his career, he worked in the fintech industry together with digital marketing and aviation.
2) Daniel Milde (Outreach) - Managing Kubernetes manifests with Jsonnet
Description: Managing Kubernetes manifests can be hard. There are several projects trying to solve that in different ways (e.g. Helm, Kustomize).
Jsonnet is a little bit different animal - a powerful JSON superset. Let’s see what it can do for us.
3) Ladislav Prskavec (TBA) - CI pipelines should be code, let's introduce Dagger Go SDK
Description: Dagger is a programmable CI/CD engine that runs your pipelines in containers. Develop your CI/CD pipelines as code, in the same programming language as your application. Dagger executes your pipelines entirely as standard OCI containers. This has several benefits:
- Instant local testing
- Portability: the same pipeline can run on your local machine, a CI runner, a dedicated server, or any container hosting service.
- Superior caching: every operation is cached by default, and caching works the same everywhere
- Compatibility with the Docker ecosystem: if it runs in a container, you can add it to your pipeline
- Cross-language instrumentation: teams can use each other’s tools without learning each other’s language

Go Meetup #9