/hlb

HLB is a high-level build definition that compiles down to LLB

Primary LanguageGoApache License 2.0Apache-2.0

hlb

GoDoc License Test

hlb is a high-level build language for BuildKit.

Describe your build in containerized units of work, and BuildKit will build your target as efficiently as possible.

Getting started with HLB

If you're on a MacOS or Linux (linux-amd64), head on over to Releases to grab a static binary.

Otherwise, you can compile HLB yourself using go:

go get -u github.com/openllb/hlb/cmd/hlb

You'll also need to run buildkitd somewhere you can connect to. The easiest way if you have Docker, is to run a local buildkit container:

docker run -d --name buildkitd --privileged moby/buildkit:v0.7.0

Then you can run one of the examples in ./examples:

export BUILDKIT_HOST=docker-container://buildkitd
hlb run ./examples/node.hlb

If your editor has a decent LSP plugin, there is an Language Server for HLB.