Skip to content

Commit

Permalink
Merge branch 'develop' into NONEVM-1163/update-plugin-factory-with-de…
Browse files Browse the repository at this point in the history
…stexecdata-decoder
  • Loading branch information
huangzhen1997 authored Jan 23, 2025
2 parents 1f9abf5 + f9c3869 commit 0bb2a8d
Show file tree
Hide file tree
Showing 903 changed files with 32,512 additions and 12,315 deletions.
5 changes: 5 additions & 0 deletions .changeset/chilled-papayas-jump.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": minor
---

#added Implements rate limiter for workflow executions by workflow engine
5 changes: 5 additions & 0 deletions .changeset/few-vans-wait.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": minor
---

#updated move TxMessage proto files to chainlink-protos.
5 changes: 5 additions & 0 deletions .changeset/honest-knives-reflect.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": patch
---

Bump chainlink-solana and chainlink-framework dependencies, and add NewHeadsPollInterval to MultiNode and documentation. #internal #added
5 changes: 5 additions & 0 deletions .changeset/hot-cats-enjoy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": minor
---

#added beholder metric to monitor TXMv2 transactions.
5 changes: 5 additions & 0 deletions .changeset/many-nails-explode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": patch
---

#added core configs
5 changes: 5 additions & 0 deletions .changeset/mean-pianos-train.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": minor
---

#nops change chainType from metis to optimismBedrock
5 changes: 5 additions & 0 deletions .changeset/polite-spiders-tan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": minor
---

#updated Move chainlink/common to chainlink-framework/chains.
5 changes: 5 additions & 0 deletions .changeset/poor-adults-tie.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": minor
---

#updated Explicitly use protoc installed in the makefile.
5 changes: 5 additions & 0 deletions .changeset/thin-emus-wait.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": patch
---

fix solana client calls and update solana ref. #internal
5 changes: 5 additions & 0 deletions .changeset/three-meals-promise.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"chainlink": patch
---

#added Monad Testnet Config
5 changes: 3 additions & 2 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
# Chains
/common @smartcontractkit/bix-framework @smartcontractkit/core
/core/chains/ @smartcontractkit/bix-framework @smartcontractkit/core
/evm @jmank88 @pavel-raykov @DylanTinianov

# Services
/core/services/directrequest @smartcontractkit/foundations
Expand Down Expand Up @@ -159,8 +160,8 @@ contracts/scripts/requirements.txt @smartcontractkit/core
.nvmrc @smartcontractkit/core
contracts/package.json @smartcontractkit/foundations @smartcontractkit/core
contracts/pnpm.lock @smartcontractkit/core
go.mod @smartcontractkit/core @smartcontractkit/releng @smartcontractkit/foundations
go.sum @smartcontractkit/core @smartcontractkit/releng @smartcontractkit/foundations
go.mod @smartcontractkit/core @smartcontractkit/foundations
go.sum @smartcontractkit/core @smartcontractkit/foundations
integration-tests/go.mod @smartcontractkit/core @smartcontractkit/test-tooling-team @smartcontractkit/foundations
integration-tests/go.sum @smartcontractkit/core @smartcontractkit/test-tooling-team @smartcontractkit/foundations
flake.nix @smartcontractkit/core
Expand Down
19 changes: 17 additions & 2 deletions .github/actions/build-sign-publish-chainlink/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ inputs:
aws-region:
description: The AWS region the ECR repository is located in, should only be needed for public ECR repositories, used in configuring docker/login-action
required: false
git-tag-type:
description: The type of git tag (core or ccip)
default: core
required: false

# Inputs for signing
sign-images:
Expand All @@ -70,6 +74,9 @@ runs:
- name: Set shared variables
shell: bash
# See https://docs.github.com/en/actions/learn-github-actions/workflow-commands-for-github-actions#multiline-strings
env:
GIT_COMMIT_SHA: ${{ inputs.git-commit-sha }}
GIT_TAG_TYPE: ${{ inputs.git-tag-type }}
run: |
SHARED_IMAGES=${{ inputs.ecr-hostname }}/${{ inputs.ecr-image-name }}
OIDC_ISSUER=https://token.actions.githubusercontent.com
Expand All @@ -82,10 +89,18 @@ runs:
EOF
)
SHARED_BUILD_ARGS=$(cat << EOF
COMMIT_SHA=${{ inputs.git-commit-sha }}
if [[ "${GIT_TAG_TYPE}" = "ccip" ]]; then
SHARED_BUILD_ARGS=$(cat << EOF
COMMIT_SHA=${GIT_COMMIT_SHA}
CL_CHAIN_DEFAULTS=/chainlink/ccip-config
EOF
)
else
SHARED_BUILD_ARGS=$(cat << EOF
COMMIT_SHA=${GIT_COMMIT_SHA}
EOF
)
fi
echo "shared-images<<EOF" >> $GITHUB_ENV
echo "$SHARED_IMAGES" >> $GITHUB_ENV
Expand Down
6 changes: 6 additions & 0 deletions .github/actions/golangci-lint/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@ inputs:
description: Set where the go module file is located at
default: "go.sum"

outputs:
golang-report-artifact-url:
description: The URL to the uploaded artifact
value: ${{ steps.upload-artifact.outputs.artifact-url }}

runs:
using: composite
steps:
Expand Down Expand Up @@ -100,6 +105,7 @@ runs:
- name: Store Golangci-lint report artifact
if: always()
id: upload-artifact
uses: actions/[email protected]
with:
# Use a unique suffix for each lint report artifact to avoid duplication errors
Expand Down
73 changes: 73 additions & 0 deletions .github/actions/setup-solana/build-contracts/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: Solana build contracts
description: Build Solana contracts

runs:
using: composite
steps:
- name: Checkout chainlink-ccip
uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
with:
repository: smartcontractkit/chainlink-ccip
path: chainlink-ccip
fetch-depth: 0
- name: Checkout branch based on CCIP Revision
id: get_checkout_ccip_chains_solana_revision
shell: bash
run: |
# get the short revision of the chainlink-ccip solana contracts dependency from the go.mod file
short_revision=$(grep "github.com/smartcontractkit/chainlink-ccip/chains/solana" deployment/go.mod | awk '{print $2}' | cut -d'-' -f3)
# since the github action checkout action doesn't support short revisions, we have to do it manually
cd chainlink-ccip
git checkout $short_revision
echo "CHAINLINK_CCIP_COMMIT_SHORT=${short_revision}" >> $GITHUB_ENV
- name: Get Anchor Version
id: get_anchor_version
shell: bash
run: |
cd chainlink-ccip/chains/solana
anchor=$(make anchor_version)
echo "ANCHOR_VERSION=${anchor}" >> $GITHUB_ENV
- name: cache docker build image
id: cache-image
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
lookup-only: true
path: chains/solana/contracts/docker-build.tar
key: ${{ runner.os }}-solana-build-${{ env.ANCHOR_VERSION }}-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo target dir
id: cache-target
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
lookup-only: true
path: chains/solana/contracts/target
key: ${{ runner.os }}-solana-contract-artifacts-${{ hashFiles('**/Cargo.lock') }}
- name: build & save image
if: steps.cache-image.outputs.cache-hit != 'true'
shell: bash
run: |
cd chainlink-ccip/chains/solana/contracts
docker buildx build . -t ccip-solana:build --build-arg ANCHOR_CLI=${{ env.ANCHOR_VERSION }}
docker save -o docker-build.tar ccip-solana
- name: build & save contract compilation artifacts
if: steps.cache-target.outputs.cache-hit != 'true'
shell: bash
run: |
cd chainlink-ccip/chains/solana
docker run -v "$(pwd)/contracts":/solana/contracts ccip-solana:build bash -c "\
set -eoux pipefail &&\
RUSTUP_HOME=\"/root/.rustup\" &&\
FORCE_COLOR=1 &&\
cd /solana/contracts &&\
anchor build &&\
chmod -R 755 ./target"
- name: move built contracts to test folder
shell: bash
run: |
# copy the built contracts so they can be used in the chainlink tests
mkdir -p /home/runner/work/chainlink/chainlink/deployment/ccip/changeset/internal/solana_contracts
cp chainlink-ccip/chains/solana/contracts/target/deploy/*.so /home/runner/work/chainlink/chainlink/deployment/ccip/changeset/internal/solana_contracts
# save the revision of the built chainlink-ccip solana contracts
echo ${{ env.CHAINLINK_CCIP_COMMIT_SHORT }} > /home/runner/work/chainlink/chainlink/deployment/ccip/changeset/internal/solana_contracts/.solana_contracts_rev
17 changes: 17 additions & 0 deletions .github/integration-in-memory-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -95,4 +95,21 @@ runner-test-matrix:
- PR Integration CCIP Tests
test_cmd: cd integration-tests/ && go test smoke/ccip/ccip_token_transfer_test.go -timeout 16m -test.parallel=1 -count=1 -json

- id: smoke/ccip/ccip_cs_update_rmn_config_test.go:*
path: integration-tests/smoke/ccip/ccip_cs_update_rmn_config_test.go
test_env_type: in-memory
runs_on: ubuntu-latest
triggers:
- PR Integration CCIP Tests
test_cmd: cd integration-tests/ && go test smoke/ccip/ccip_cs_update_rmn_config_test.go -timeout 20m -test.parallel=1 -count=1 -json

- id: smoke/ccip/ccip_cs_rmn_curse_uncurse_test.go:*
path: integration-tests/smoke/ccip/ccip_cs_rmn_curse_uncurse_test.go
test_env_type: in-memory
runs_on: ubuntu-latest
triggers:
- PR Integration CCIP Tests
test_cmd: cd integration-tests/ && go test smoke/ccip/ccip_cs_rmn_curse_uncurse_test.go -timeout 10m -test.parallel=1 -count=1 -json


# END: CCIP tests
1 change: 1 addition & 0 deletions .github/workflows/build-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ jobs:
dockerhub_password: ${{ secrets.DOCKERHUB_READONLY_PASSWORD }}
sign-images: true
verify-signature: true
git-tag-type: ${{ needs.checks.outputs.git-tag-type }}

- name: Attest Docker image
uses: actions/attest-build-provenance@6149ea5740be74af77f260b9db67e633f6b0a9a1 # v1.4.2
Expand Down
9 changes: 9 additions & 0 deletions .github/workflows/ci-core-partial.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,9 @@ jobs:
- name: Setup Solana
uses: ./.github/actions/setup-solana

- name: Build Solana artifacts
uses: ./.github/actions/setup-solana/build-contracts

- name: Setup wasmd
uses: ./.github/actions/setup-wasmd

Expand Down Expand Up @@ -210,6 +213,9 @@ jobs:
- name: Setup Solana
uses: ./.github/actions/setup-solana

- name: Build Solana artifacts
uses: ./.github/actions/setup-solana/build-contracts

- name: Setup wasmd
uses: ./.github/actions/setup-wasmd

Expand Down Expand Up @@ -256,6 +262,9 @@ jobs:
- name: Setup Solana
uses: ./.github/actions/setup-solana

- name: Build Solana artifacts
uses: ./.github/actions/setup-solana/build-contracts

- name: Setup wasmd
uses: ./.github/actions/setup-wasmd

Expand Down
21 changes: 19 additions & 2 deletions .github/workflows/ci-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ jobs:
with:
persist-credentials: false
- name: Golang Lint (${{ matrix.modules }})
id: golang-lint
uses: ./.github/actions/golangci-lint
with:
go-directory: ${{ matrix.modules }}
Expand All @@ -156,7 +157,10 @@ jobs:
SLACK_BOT_TOKEN: ${{ secrets.QA_SLACK_API_KEY }}
with:
channel-id: "#team-core"
slack-message: "golangci-lint failed: \n${{ format('https://github.com/{0}/actions/runs/{1}', github.repository, github.run_id) }}"
slack-message: |
"golangci-lint failed (${{ matrix.modules }})
- Run: ${{ format('https://github.com/{0}/actions/runs/{1}', github.repository, github.run_id) }}"
- Report: ${{ steps.golang-lint.outputs.golang-report-artifact-url }}"
# Fails if any golangci-lint matrix jobs fails and silently succeeds otherwise
# Consolidates golangci-lint matrix job results under one required `lint` check
Expand Down Expand Up @@ -203,6 +207,7 @@ jobs:
permissions:
id-token: write
contents: read
actions: read
steps:
- name: Checkout the repo
uses: actions/[email protected]
Expand Down Expand Up @@ -235,6 +240,10 @@ jobs:
if: ${{ needs.filter.outputs.should-run-ci-core == 'true' }}
uses: ./.github/actions/setup-solana

- name: Build Solana artifacts
if: ${{ needs.filter.outputs.should-run-ci-core == 'true' }}
uses: ./.github/actions/setup-solana/build-contracts

- name: Setup wasmd
if: ${{ needs.filter.outputs.should-run-ci-core == 'true' }}
uses: ./.github/actions/setup-wasmd
Expand Down Expand Up @@ -284,7 +293,14 @@ jobs:
- name: Print Races
id: print-races
if: ${{ failure() && matrix.type.cmd == 'go_core_race_tests' && needs.filter.outputs.should-run-ci-core == 'true' }}
env:
GH_REPO: ${{ github.repository }}
GH_RUN_ID: ${{ github.run_id }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
run_url=$(gh run --repo "$GH_REPO" view "$GH_RUN_ID" --json jobs --jq '.jobs[] | select(.name | contains("${{ matrix.type.cmd }}")) | .url')
echo "run_url=$run_url" >> $GITHUB_OUTPUT
find race.* | xargs cat > race.txt
if [[ -s race.txt ]]; then
cat race.txt
Expand Down Expand Up @@ -325,7 +341,8 @@ jobs:
SLACK_BOT_TOKEN: ${{ secrets.QA_SLACK_API_KEY }}
with:
channel-id: "#topic-data-races"
slack-message: "Race tests failed: \n${{ format('https://github.com/{0}/actions/runs/{1}', github.repository, github.run_id) }}"
slack-message: |
Race Tests Failed: ${{ steps.print-races.outputs.run_url }}
core-scripts-tests:
name: test-scripts
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/flakeguard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -257,6 +257,8 @@ jobs:
restore-build-cache-only: "true"
- name: Setup Solana
uses: ./.github/actions/setup-solana
- name: Build Solana artifacts
uses: ./.github/actions/setup-solana/build-contracts
- name: Setup wasmd
uses: ./.github/actions/setup-wasmd
- name: Setup Postgres
Expand Down
2 changes: 2 additions & 0 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -175,3 +175,5 @@ issues:
text: "^G404:"
linters:
- gosec
exclude-files:
- evm/ # need to move files here for evm extraction that have outstanding issues
15 changes: 12 additions & 3 deletions .mockery.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,24 @@ mockname: "{{ .InterfaceName }}"
outpkg: mocks
filename: "{{ .InterfaceName | snakecase }}.go"
packages:
github.com/smartcontractkit/chainlink/v2/common/headtracker:
github.com/smartcontractkit/chainlink-framework/chains/headtracker:
config:
dir: common/headtracker/mocks
outpkg: mocks
interfaces:
HeadTrackable:
HeadTracker:
HeadBroadcaster:
github.com/smartcontractkit/chainlink/v2/common/txmgr:
github.com/smartcontractkit/chainlink-framework/chains/txmgr:
config:
dir: common/txmgr/mocks
outpkg: mocks
interfaces:
TxManager:
github.com/smartcontractkit/chainlink/v2/common/txmgr/types:
github.com/smartcontractkit/chainlink-framework/chains/txmgr/types:
config:
dir: common/txmgr/types/mocks
outpkg: mocks
interfaces:
ReaperChainConfig:
config:
Expand Down
Loading

0 comments on commit 0bb2a8d

Please sign in to comment.