Makefile

using Makefile

use -n flag for dry-run, -s or '--silent' flag to suppress echoing

make release/* make deploy/* are manually invoked.

Targets

  • default VERSION is git tag

  • default TYPE is service

proto

codegen from proto

make proto
make proto TARGET=account
make proto-account
## generate for protos in shared package
# make proto TARGET=shared TYPE=.
make proto_shared

test

# unit tests
make test-unit TARGET=account
make test-unit TARGET=emailer
make test-unit TARGET=account TYPE=api
make test-unit TARGET=config TYPE=shared
make test-unit TARGET=demo TYPE=cmd
make test-unit

# integration tests
make test-inte TARGET=account
make test-inte TARGET=emailer
make test-inte TARGET=emailer TIMEOUT=30s
make test-inte

# end-to-end tests
make test-e2e TARGET=account
make test-e2e TARGET=emailer
make test-e2e
# e2e tests in CI envelopment with micro gRPC proxy
MICRO_PROXY_ADDRESS="localhost:8081" make test-e2e

# generate code coverage
make test-cover
# benchmark testing
make test-bench
make test-race

e2e tests on CI

trigger e2e tests on GitHub Actions

run

lint

Packager

build

release

push tag to git

docker

Optionally set export DOCKER_BUILDKIT=1 to use moby

kustomize

generate build/kubernetes.yaml for given overlay and namespace using kustomize

Release

At this point, you should inspect the release in the Github web UI. If it looks reasonable, proceed:

Deploy

Reference

Last updated

Was this helpful?