https://github.com/qclaogui/gaip
Practices for implementing Google API Improvement Proposals (AIP) in Go.
https://github.com/qclaogui/gaip
aip go golang grpc grpc-go
Last synced: 2 months ago
JSON representation
Practices for implementing Google API Improvement Proposals (AIP) in Go.
- Host: GitHub
- URL: https://github.com/qclaogui/gaip
- Owner: qclaogui
- License: other
- Created: 2018-11-11T11:54:38.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2025-12-22T07:07:23.000Z (3 months ago)
- Last Synced: 2025-12-23T02:22:44.864Z (3 months ago)
- Topics: aip, go, golang, grpc, grpc-go
- Language: Go
- Homepage:
- Size: 19.2 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: CODEOWNERS
- Security: SECURITY.md
- Copyright: COPYRIGHT
Awesome Lists containing this project
README
golang AIP server demo
Practices for implementing [Google API Improvement Proposals](https://aip.dev/) (AIP) in Go.
Apply knowledge and experience to improve open source
## Dependencies
This project uses [bingo](https://github.com/bwplotka/bingo) (located in [.bingo/](.bingo/)), a tool to automate the versioning of Go packages.
Run `make install-build-deps` to install dependencies tools.
```shell
❯ make help
Usage:
make
Build
build Build binary for current OS and place it at ./bin/gaip_$(GOOS)_$(GOARCH)
build-all Build binaries for Linux and Mac and place them in dist/
clean Remove artefacts or generated files from previous build
Dependencies
check-go-mod Ensures fresh go.mod and go.sum.
install-build-deps Install dependencies tools
Ent Schema
ent-gen Regenerate schema
ent-describe Get a description of graph schema
atlas-lint Verifying and linting migrations
Regenerate gRPC Code
protoc-install Install proper protoc version
protoc-gen Regenerate proto by protoc
Testing Lint & Fmt
test Run tests.
lint Runs various static analysis against our code.
fmt Runs fmt code (automatically fix lint errors)
Kubernetes
cluster Create k3s cluster
manifests Generates Kubernetes manifests
Release
prepare-release-candidate Create release candidate
prepare-release Create release
print-version Prints the upcoming release number
General
reference-help Generates the reference help documentation.
help Display this help. Thanks to https://www.thapaliya.com/en/writings/well-documented-makefiles/
```
[Automatic Migration planning script](https://entgo.io/docs/versioned/programmatically#2-automatic-migration-planning-script)
```shell
docker run --rm --name atlas-db-dev -d -p 3306:3306 -e MYSQL_DATABASE=dev -e MYSQL_ROOT_PASSWORD=pass mysql:8
```