Skip to content
BETAGuardrails are in beta. The library, the configuration format and the CLI command can still change.

Guardrails

clojure

4 guardrails, all at version v1.

GuardrailDefault severityWhat it checks
clojure/dependencies-pinnedwarningEvery dependency the manifests declare names one released version, or the exact commit a git dependency builds from.
clojure/no-local-dependencieswarningNo dependency is taken from a :local/root, so the build resolves everything from this commit rather than from the machine it runs on.
clojure/repositories-allowederrorEvery Maven repository the manifest adds beyond the defaults resolves from a host on the allowed list.
clojure/version-declaredwarningThe project depends on the Clojure release it is built against, and that release is no older than the configured floor.

Shared inputs

Every clojure guardrail declares these inputs, and each one may add its own.

InputDescriptionDefault
projectDirDirectory holding the project, relative to the directory the CLI runs in..

Shared collectors

Every clojure guardrail is handed the facts these collectors gather, and each one may ask for more of its own.

CollectorGathers
clojureThe Clojure build in the project directory: which tool it uses, the Clojure version it depends on, the source paths and aliases it declares, the repositories it resolves from, and every dependency with its alias, origin and whether it is pinned.

Every guardrail in this category is configured the same way, in the guardrails.checks array of buildnote.json. See Configuring guardrails for every option, and Guardrails to search the whole library.

Buildnote Limited
Registered in England and Wales, Reg: 16140412