5050cloud

The Makefile

Every routine task in the repo is a make target; make help lists them.

TargetDoes
make depsDownload Go modules and install npm packages for web/ and site/
make webBuild the console into web/dist and check its size budget
make dist-placeholderCreate a placeholder console so Go builds without Node
make buildbin/5050d, bin/5050-agent, bin/5050 for your OS and architecture
make crossLinux amd64 and arm64 for all three; macOS and Windows (experimental) for the CLI
make testGo tests with -race, plus npm test in web/
make test-linuxIntegration tests inside a privileged Linux container with the Docker socket
make coverCoverage report; fails under the floors
make lintgofmt, go vet and golangci-lint
make gen-tsRegenerate the console's TypeScript API types and mocks from pkg/api
make tools, make vulncheckInstall pinned Go tools; run govulncheck
make check-publicSecret scan, banned words and em dashes, private addresses, and licence headers
make devRun the control plane, an agent and the console dev server locally
make siteBuild this site
make release-snapshotA signed snapshot release in dist/, with the test key
make e2e HOST=user@ip SUITE=...Build, serve a snapshot and run the VM end-to-end suite
make e2e-uiThe browser end-to-end suite against E2E_CONSOLE_URL
make loadtestThe scale test with fake agents against a local control plane
make cleanRemove build outputs

View as Markdown · Edit this page