Skip to content

Commit

Permalink
Merge branch 'ccip-develop' into mk/fix-int-test-wf
Browse files Browse the repository at this point in the history
  • Loading branch information
makramkd authored Aug 19, 2024
2 parents e8a2370 + 8747a57 commit 25a9537
Show file tree
Hide file tree
Showing 5 changed files with 56 additions and 5 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ccip-ocr3-build-lint-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-20.04
strategy:
matrix:
go-version: ['1.21']
go-version: ['1.21', '1.22']
defaults:
run:
working-directory: .
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/codegen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-20.04
strategy:
matrix:
go-version: ['1.21']
go-version: ['1.22']
defaults:
run:
working-directory: .
Expand Down
3 changes: 1 addition & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ lint: ensure_go_version
golangci-lint run -c .golangci.yml

ensure_go_version:
@go version | grep -q 'go1.21' || (echo "Please use go1.21" && exit 1)
@go version | grep -q 'go1.22' || (echo "Please use go1.22" && exit 1)

ensure_golangcilint_1_59:
@golangci-lint --version | grep -q '1.59' || (echo "Please use golangci-lint 1.59" && exit 1)

52 changes: 52 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# 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](https://go.dev/doc/install).

### Running the Linter

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

```sh
make lint
```

### Running the Unit Tests

```sh
make test
```

### Generating the Mocks

We use mockery to generate mocks and they're organized in the [mockery.yaml](./.mockery.yaml) file.

```sh
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](https://github.com/smartcontractkit/ccip/blob/03ae3bbed0e6020be5fa9be26d03af21f152d7dc/core/capabilities/ccip/ccip_integration_tests/ocr3_node_test.go#L37)
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.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module github.com/smartcontractkit/chainlink-ccip

go 1.21.7
go 1.22.5

require (
github.com/deckarep/golang-set/v2 v2.6.0
Expand Down

0 comments on commit 25a9537

Please sign in to comment.