Skip to main content

Make targets

Every repository has a Makefile; run make help in it for the list. The backends load ../entrosity-infra/deploy/.env where a target needs the configuration (override with ENV_FILE=…).

entrosity-axis.backend​

TargetDoes
make gensqlc generate and oapi-codegen. CI checks that it leaves no diff.
make build / make test / make test-integration / make lintCompile, unit tests (-race), integration tests (testcontainers), golangci-lint.
make migrate / make migrate-down / make migrate-versionApply river and app migrations to RMM_DATABASE_URL / revert the last one (development only) / print the version.
make migration name=add_xCreates db/migrations/NNNN_add_x.{up,down}.sql.
make devAxis's API on :8080.
make sim token=… [count=50] [server=…]Simulated agents.
make simconnector token=… [computers=200]A simulated site connector.
make build-server / make build-simsdist/rmm-server, dist/rmm-simagent, dist/rmm-simconnector (used by the integration tests in entrosity-infra).
make release-keygenPrints a new release signing key pair (RMM_RELEASE_SIGNING_KEY + RELEASE_PUBLIC_KEY).
make publish-release api=… file=… version=… [product=connector] [channel=beta] [rollout=20]Publishes an MSI as a signed self-update release through the API (needs RMM_RELEASE_TOKEN).
make imageBuilds the container image (needs GITHUB_TOKEN that can read entrosity-shared-go).

entrosity-hub.backend​

TargetDoes
make gen, make build, make test, make test-integration, make lint, make imageAs in the Axis backend.
make migrateApplies the Hub's migrations to PLATFORM_DATABASE_URL.
make bootstrap-admin email=…Creates the first platform admin, who is Axis's first global admin (password from stdin).
make devThe Hub's API on :8090 (internal API :8091).
make build-serverdist/platform-server.

entrosity-axis-agent and entrosity-axis-connector​

TargetDoes
make buildGOOS=windows GOARCH=amd64 binary in dist/.
make msiThe MSI (Windows only: pwsh, .NET, WiX v4); signed when SIGNING_CERT_PFX / SIGNING_CERT_PASSWORD are set.
make vet / make test / make lintgo vet for Linux and Windows, unit tests, golangci-lint.
make test-ldap (connector)LDAP tests against the Samba AD test domain in test/samba/.

RELEASE_PUBLIC_KEY (base64 Ed25519) is compiled into agent and connector builds; without it they refuse every self-update (update_unsigned). VERSION defaults to git describe.

entrosity-infra​

TargetDoes
make dev-up / make dev-downStart / stop the dev services (Postgres, MinIO, mailpit).
make monitoring-upPrometheus and Grafana on 127.0.0.1.
make e2eBoth Playwright suites against one throwaway stack (scripts/e2e.sh): databases platform_e2e and rmm_e2e, the Hub's API on :8092 (internal :8093), Axis's API on :8082, and Vite for Axis (:5177) and the Hub (:5176, one origin like production). Your dev stack is untouched. Set PLAYWRIGHT_CHROMIUM_PATH to use a pre-installed Chromium.
make smoke-connectorThe real connector + Samba AD + a fresh Hub and Axis backend, end to end (scripts/connector-smoke.sh: databases platform_smoke and rmm_smoke, the Hub on :8096/:8097).
make web-image [AXIS=…] [HUB=…] [DOCS=…]Builds the Caddy web image from the published app and docs images.
make checkshellcheck, compose config, actionlint.

The web apps, entrosity-ui and this site use pnpm scripts instead (pnpm dev, pnpm build, pnpm lint, pnpm test, pnpm gen:api, pnpm fetch:api).