api
wtf
api | wtf | |
---|---|---|
8 | 48 | |
628 | 1,534 | |
2.7% | - | |
9.2 | 0.0 | |
6 days ago | over 1 year ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
api
-
Exemple of Web API written in Go that you'd consider high quality
Good point, here it is https://github.com/kubernetes/api
-
alternative to kubectl explain?
Better is probably subjective, but you have options. You can run the doc website locally (https://github.com/kubernetes/website) or search the API definitions directly (https://github.com/kubernetes/api). Good ol `git grep` I suppose.
-
Using client-go to `kubectl apply` against the Kubernetes API directly with multiple types in a single YAML file
I understand that I need to do some (un)marshalling of the YAML bytes into the correct API types defined in package: https://github.com/kubernetes/api
-
Why isn't there a good/standard C++ API for kubernetes
Despite that though, someone was generous enough to ensure that there are protobuf files laying around for us to use.
-
Implementing a simple K8s admission controller in Go
Then we have to create the admissionHandler to receive all the requests from our webhooks. These requests are coming with a JSON-encoded AdmissionReview (with the Request field filled) in the request body. The response should be a JSON AdmissionReview with the Response field filled.
-
5 Time saving things about client-go, I didn't know!
k8s.io/client-go isn’t enough to talk to kubernetes API, you need k8s.io/api and k8s.io/apimachinery too You have to match their versions for it to all work! See the client-go versioning for simple instructions!
-
Validating Admission Requests in a Validating Admission Webhook
You can find the definitions of the AdmissionReview object in k8s.io/api repository.
-
Parsing Admission Requests in a Validating Admission Webhook
Note how I am just using the upstream AdmissionReview type from k8s.io/api/admission/v1 here. You can find other Kubernetes types in the k8s.io/api repo as well.
wtf
-
Help with setting up Ben Johnson's wtf repo locally
I am new to go. Found wtf dial - ( https://github.com/benbjohnson/wtf ) while looking to get some project based learning. This looks pretty interesting but when I did git clone of the project my vs code is giving number dependency related problems like below.
-
Educational Codebases
There are a few Go projects meant to be learned from:
- https://github.com/pion/opus for to learn audio
- https://github.com/benbjohnson/wtf for overall production quality
- https://github.com/upspin/upspin difficult to explain, personally I'm not a fan of the errors
- Ben Johnson's WTF project layout: interface usage
- Exemple of Web API written in Go that you'd consider high quality
-
Directory structure for a golang project
I read about https://github.com/benbjohnson/wtf and the connected blog here a couple of times. Seems quite good.
- Project structure - I often see duplicate function names in db layers, why?
-
The one-and-only, must-have, eternal Go project layout
Personally I think the method is the layered architecture approach. Example: https://github.com/benbjohnson/wtf
-
Examples of Good Go Repos
Take a look at the discussions in the repo: https://github.com/benbjohnson/wtf/discussions
-
Examples of an idiomatic API project
https://github.com/benbjohnson/wtf This repo serves as an example and fits Go very well in my opinion. Check the discussions on the repo and the blog posts.
- what do you use for migrations? or how do you the sql tables and seeding?
What are some alternatives?
kubectl-explore - A better kubectl explain with the fuzzy finder
go-clean-arch - Go (Golang) Clean Architecture based on Reading Uncle Bob's Clean Architecture
kubernetes - Production-Grade Container Scheduling and Management
pkgsite - [mirror] Home of the pkg.go.dev website
apimachinery
Golang-Project-Structure - Golang Skeleton With Fully Managed Versions For Kick Start GoLang Project Development
cert-manager - Automatically provision and manage TLS certificates in Kubernetes
bbolt - An embedded key/value database for Go.
c - Official C client library for Kubernetes
go-clean-template - Clean Architecture template for Golang services
aws-iam-authenticator - A tool to use AWS IAM credentials to authenticate to a Kubernetes cluster
go-webapp-example - Example web application written in Go