Developers

May 22, 2025 ยท View on GitHub

Contributing

Issues and Pull Requests (PR) are always welcome from anyone.

Pull Requests

Simple guidelines for PRs:

  • All PRs MUST be DCO signed to be accepted.
  • All PRs MUST successfully pass the make clean all process.
  • PRs do not need an associated issue, stand-alone PRs are fine.
  • However, larger PRs would benefit from a discussion prior to doing the work.

Build Locally

Most common Makefile targets:

# Build, test and run; will reset the DB & sample Registries:
make

# Build and run w/o testing; will reset the DB & sample Registries:
make run

# Build and run without testing or rebuilding DB & sample Registries:
make start

See misc/Dockefile-dev for the minimal dependencies required: golang and the packages listed on the RUN apk add command.

Makefile Targets

TargetDescription
makeAlias for make all
make cleanErase all build outputs, clean docker
make allBuild all, run test and start server (reset DB)
make runBuild and start server (no tests, reset DB)
make startBuild and start seerver (no tests, keep DB)
make testBuild all & run all tests
make qtestBuild all & run just main tests
make xrBuild xr CLI only
make xrserverBuild xrserver executable only
make cmdsBuild all executables (xrserver and xr)
make imagesBuild all container images
make pushBuild all container images & push images to registry
make mysqlStart MySQL in a container
make mysql-clientRun the MySQL client in a container, for debugging
make testdevBuild/verify dev image; make all using image