Chainlink Core is the API backend that Chainlink client contracts on Ethereum make requests to. The backend utilizes Solidity contract ABIs to generate types for interacting with Ethereum contracts.
- Headless API implementation
- CLI tool providing conveniance commands for node configuration, administration, and CRUD object operations (e.g. Jobs, Runs, and even the VRF)
See the root README for instructions on how to build the full Chainlink node.
This directory contains the majority of the code for the backend of Chainlink.
Static assets are pulled in using Go's embed
package
and included in the final binary.
Install:
By default go install
will install this directory under the name core
.
You can instead, build it, and place it in your path as chainlink
:
go build -o $GOPATH/bin/chainlink .
Test:
# A higher parallel number can speed up tests at the expense of more RAM.
go test -p 1 ./...
This excludes more extensive integration tests which require a bit more setup, head over to [./integration-tests] (../integration-tests/README.md) for more details on running those.
The golang testsuite is almost entirely parallelizable, and so running the default
go test ./...
will commonly peg your processor. Limit parallelization with the
-p 2
or whatever best fits your computer: go test -p 4 ./...
.