Skip to content

Latest commit

 

History

History
70 lines (47 loc) · 6.28 KB

README.md

File metadata and controls

70 lines (47 loc) · 6.28 KB

induzo/gocom

security scanner linter tests conv commits checker codecov

common golang packages

Current modules

module benchmarks latest version report docs
database/pginit benches 2.2.9 Go Report Card Go Reference
database/pgx-slog benches 1.0.15 Go Report Card Go Reference
database/redisinit benches 1.0.9 Go Report Card Go Reference
http/health benches 1.1.9 Go Report Card Go Reference
http/middleware/writablecontext benches 0.1.6 Go Report Card Go Reference
shutdown benches 1.2.5 Go Report Card Go Reference

How to use any of these private modules

Force the use of ssh instead of https for git:

git config --global --add url."[email protected]:".insteadOf "https://github.com/"

Allow internal repositories under a private company, simply add this line to your .zshrc or other, accordingly:

export GOPRIVATE="github.com/induzo/*"

How to add a new module

Let's take an example of an opentelemetry module.

  • Make sure the module is fully tested (at least 95% coverage, try to reach 100%), linted
  • Create a branch feat/opentelemetry
  • Copy in the right folder (that's quite subjective), in our case, ./monitoring/otelinit
  • Add it to the workspace
    go work use ./monitoring/otelinit
  • Add your file, commit your files (respecting conventional commits) and tag the commit properly, according to a semantic versioning
    git add ./monitoring/otelinit
    git commit -m "feat: add monitoring opentelemetry module" ./monitoring/otelinit
    git tag "monitoring/otelinit/v1.0.0"
  • Create a pull request
  • Wait for review

Dependency graph

Depends on database/pgx-slog

  • database / pginit

Depends on contextslogger

  • http / handlerwrap

Contribution

pre-commit install -t commit-msg -t pre-commit -t pre-push