Skip to content

smartcontractkit/chainlink-ccip

Repository files navigation

chainlink-ccip

This is the repo that implements the OCR3 CCIP plugins. This includes the commit and execution plugins.

Getting Started

Go Version

This repo uses Go 1.22. You can install Go from their installation page.

Running the Linter

We use golangci-lint as our linting tool. Run the linter like this:

make lint

Running the Unit Tests

make test

Generating the Mocks

We use mockery to generate mocks and they're organized in the mockery.yaml file.

make generate

Development Cycle

In order to keep the ccip-develop branch in working condition, we need to make sure the integration test written in the CCIP repo will pass.

As such, part of CI will run this integration test combined with your latest pushed change.

Follow the steps below to ensure that we don't run into any unexpected breakages.

  1. Create a PR on chainlink-ccip with the changes you want to make.
  2. CI will run the integration test in the CCIP repo after applying your changes.
  3. If the integration test fails, make sure to fix it first before merging your changes into the ccip-develop branch of chainlink-ccip. You can do this by:
    • Creating a branch in the CCIP repo and running go get github.com/smartcontractkit/chainlink-ccip@<your-branch-commit-sha>.
    • Fixing the build/tests.
  4. Once your ccip PR is approved, merge it.
  5. Go back to your chainlink-ccip PR and re-run the integration test workflow.
  6. Once the integration test passes, merge your chainlink-ccip PR into ccip-develop, however do not delete the branch on the remote.
  7. Create a new PR in ccip that points to the newly merged commit in the ccip-develop tree and merge that.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published