Skip to content

Commit e782017

Browse files
Merge branch 'main' into CAPPL-1065-Pass-Config-Provider
2 parents ab3ae28 + 39a3be0 commit e782017

File tree

291 files changed

+24309
-1832
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

291 files changed

+24309
-1832
lines changed

.github/workflows/golangci_lint.yml

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,35 @@
1-
name: Golangci-lint
1+
name: golangci-lint
22

3-
on: [pull_request]
3+
on: [pull_request, merge_group]
44

55
jobs:
6-
golangci-lint:
6+
detect-modules:
7+
runs-on: ubuntu-latest
8+
outputs:
9+
modules: ${{ steps.set-modules.outputs.modules }}
10+
steps:
11+
- uses: actions/checkout@v5
12+
- id: set-modules
13+
run: |
14+
# Find all go.mod files and extract their directories
15+
modules=$(find . -name "go.mod" -not -path "./vendor/*" -exec dirname {} \; | jq -R -s -c 'split("\n") | map(select(. != ""))')
16+
echo "modules=${modules}" >> $GITHUB_OUTPUT
17+
echo "Found modules: ${modules}"
18+
19+
lint-module:
20+
# Avoid running in merge queue since we run in PR's and have an optional
21+
# label to skip lint issues on a PR which would be ignored in the merge queue.
22+
if: ${{ github.event_name != 'merge_group' }}
23+
needs: detect-modules
724
runs-on: ubuntu-latest
25+
strategy:
26+
matrix:
27+
module: ${{ fromJSON(needs.detect-modules.outputs.modules) }}
828
permissions:
929
id-token: write
1030
contents: read
1131
actions: read
32+
pull-requests: read
1233
steps:
1334
- name: Checkout code
1435
uses: actions/checkout@v5
@@ -21,10 +42,20 @@ jobs:
2142
version=$(grep '^golangci-lint ' .tool-versions | awk '{print $2}')
2243
echo "version=${version}" | tee -a "$GITHUB_OUTPUT"
2344
24-
- name: golangci-lint
45+
- name: golangci-lint ${{ matrix.module }}
2546
if: ${{ always() && !contains(join(github.event.pull_request.labels.*.name, ' '), 'allow-lint-issues') }}
2647
# NOTE: Keep this version in sync with ACTION_CI_LINT_GO_GIT_TAG in ./script/lint.sh
2748
uses: smartcontractkit/.github/actions/ci-lint-go@ci-lint-go/3.0.0
2849
with:
2950
checkout-repo: false
3051
golangci-lint-version: v${{ steps.get-version.outputs.version }}
52+
go-directory: ${{ matrix.module }}
53+
54+
golangci-lint:
55+
# Required sink job that waits for all lint jobs to complete
56+
if: ${{ github.event_name != 'merge_group' }}
57+
needs: [detect-modules, lint-module]
58+
runs-on: ubuntu-latest
59+
steps:
60+
- name: Lint complete
61+
run: echo "All lint jobs completed"

.github/workflows/keystore.yml

Lines changed: 42 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,34 @@ name: Keystore Checks
22
permissions:
33
contents: read
44

5-
on:
6-
push:
7-
paths:
8-
- "keystore/**"
5+
on: [push, merge_group]
96

107
jobs:
8+
changes:
9+
name: detect changes
10+
runs-on: ubuntu-latest
11+
outputs:
12+
keystore-src: ${{ steps.keystore-changes.outputs.src }}
13+
steps:
14+
- name: Checkout the repo
15+
uses: actions/checkout@v4
16+
with:
17+
persist-credentials: false
18+
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
19+
id: keystore-changes
20+
with:
21+
filters: |
22+
src:
23+
- 'keystore/**'
24+
1125
run-tests:
26+
name: run tests
27+
runs-on: ubuntu-latest
28+
needs: changes
29+
if: needs.changes.outputs.keystore-src == 'true'
1230
defaults:
1331
run:
1432
working-directory: keystore
15-
runs-on: ubuntu-latest
1633
steps:
1734
- name: Checkout
1835
uses: actions/checkout@v4
@@ -30,7 +47,13 @@ jobs:
3047
run: go test ./... -coverpkg=./... -coverprofile=coverage.txt
3148

3249
build-race-tests:
50+
name: race tests
3351
runs-on: ubuntu-latest
52+
needs: changes
53+
if: needs.changes.outputs.keystore-src == 'true'
54+
defaults:
55+
run:
56+
working-directory: keystore
3457
steps:
3558
- name: Checkout
3659
uses: actions/checkout@v4
@@ -61,4 +84,17 @@ jobs:
6184
with:
6285
name: go-race-results
6386
path: |
64-
./race.*
87+
./race.*
88+
89+
gate:
90+
name: summary gate
91+
runs-on: ubuntu-latest
92+
needs: [changes, run-tests, build-race-tests]
93+
if: always()
94+
steps:
95+
- name: Fail if any job ran and failed
96+
if: needs.changes.outputs.keystore-src == 'true' &&
97+
(needs.run-tests.result != 'success' ||
98+
needs.build-race-tests.result != 'success')
99+
run: exit 1
100+

.github/workflows/pkg.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: PKG Build and Test
22

3-
on: [push]
3+
on: [push, merge_group]
44

55
jobs:
66
build-test:

.mockery.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ packages:
2222
ContractReader:
2323
EVMService:
2424
TONService:
25+
SolanaService:
2526
github.com/smartcontractkit/chainlink-common/pkg/types/core:
2627
interfaces:
2728
CapabilitiesRegistry:

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ rm-builders:
3333

3434
.PHONY: generate
3535
generate: mockery install-protoc gomods cre-protoc modgraph
36-
export PATH="$(HOME)/.local/bin:$(PATH)"; gomods -s proto_vendor -go generate -x ./...
36+
export PATH="$(HOME)/.local/bin:$(HOME)/go/bin:$(PATH)"; gomods -s proto_vendor -go generate -x ./...
3737
find . -type f -name .mockery.yaml -execdir mockery \; ## Execute mockery for all .mockery.yaml files. If this fails, you might have a local mockery installed. Uninstall or update it.
3838

3939
.PHONY: cre-protoc

go.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ flowchart LR
1515
chainlink-common --> grpc-proxy
1616
chainlink-common --> libocr
1717
click chainlink-common href "https://github.com/smartcontractkit/chainlink-common"
18+
chainlink-common/keystore --> chainlink-common
19+
click chainlink-common/keystore href "https://github.com/smartcontractkit/chainlink-common"
1820
chainlink-common/pkg/chipingress
1921
click chainlink-common/pkg/chipingress href "https://github.com/smartcontractkit/chainlink-common"
2022
chainlink-common/pkg/monitoring --> chainlink-common
@@ -40,6 +42,7 @@ flowchart LR
4042
4143
subgraph chainlink-common-repo[chainlink-common]
4244
chainlink-common
45+
chainlink-common/keystore
4346
chainlink-common/pkg/chipingress
4447
chainlink-common/pkg/monitoring
4548
chainlink-common/pkg/values

go.mod

Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ require (
2020
github.com/google/uuid v1.6.0
2121
github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.0.1
2222
github.com/hashicorp/go-hclog v1.6.3
23-
github.com/hashicorp/go-plugin v1.6.3
23+
github.com/hashicorp/go-plugin v1.7.0
2424
github.com/iancoleman/strcase v0.3.0
2525
github.com/invopop/jsonschema v0.13.0
2626
github.com/jackc/pgx/v4 v4.18.3
@@ -30,25 +30,26 @@ require (
3030
github.com/kylelemons/godebug v1.1.0
3131
github.com/lib/pq v1.10.9
3232
github.com/marcboeker/go-duckdb v1.8.5
33+
github.com/mr-tron/base58 v1.2.0
3334
github.com/pelletier/go-toml v1.9.5
3435
github.com/pelletier/go-toml/v2 v2.2.4
3536
github.com/prometheus/client_golang v1.22.0
3637
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1
3738
github.com/scylladb/go-reflectx v1.0.1
3839
github.com/shopspring/decimal v1.4.0
3940
github.com/smartcontractkit/chain-selectors v1.0.67
40-
github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.6
41-
github.com/smartcontractkit/chainlink-protos/billing/go v0.0.0-20251020004840-4638e4262066
42-
github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20251008161434-22d9bd439bba
41+
github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10
42+
github.com/smartcontractkit/chainlink-protos/billing/go v0.0.0-20251024234028-0988426d98f4
43+
github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20251124151448-0448aefdaab9
4344
github.com/smartcontractkit/chainlink-protos/linking-service/go v0.0.0-20251002192024-d2ad9222409b
4445
github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0
4546
github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20251020004840-4638e4262066
4647
github.com/smartcontractkit/freeport v0.1.3-0.20250716200817-cb5dfd0e369e
4748
github.com/smartcontractkit/grpc-proxy v0.0.0-20240830132753-a7e17fec5ab7
4849
github.com/smartcontractkit/libocr v0.0.0-20250912173940-f3ab0246e23d
49-
github.com/stretchr/testify v1.10.0
50-
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.61.0
51-
go.opentelemetry.io/otel v1.37.0
50+
github.com/stretchr/testify v1.11.1
51+
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.63.0
52+
go.opentelemetry.io/otel v1.38.0
5253
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.12.2
5354
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.12.2
5455
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.36.0
@@ -59,21 +60,21 @@ require (
5960
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.36.0
6061
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.36.0
6162
go.opentelemetry.io/otel/log v0.13.0
62-
go.opentelemetry.io/otel/metric v1.37.0
63-
go.opentelemetry.io/otel/sdk v1.37.0
63+
go.opentelemetry.io/otel/metric v1.38.0
64+
go.opentelemetry.io/otel/sdk v1.38.0
6465
go.opentelemetry.io/otel/sdk/log v0.13.0
65-
go.opentelemetry.io/otel/sdk/metric v1.37.0
66-
go.opentelemetry.io/otel/trace v1.37.0
66+
go.opentelemetry.io/otel/sdk/metric v1.38.0
67+
go.opentelemetry.io/otel/trace v1.38.0
6768
go.uber.org/zap v1.27.0
68-
golang.org/x/crypto v0.40.0
69+
golang.org/x/crypto v0.45.0
6970
golang.org/x/exp v0.0.0-20250711185948-6ae5c78190dc
70-
golang.org/x/sync v0.16.0
71+
golang.org/x/sync v0.18.0
7172
golang.org/x/time v0.12.0
72-
golang.org/x/tools v0.35.0
73+
golang.org/x/tools v0.38.0
7374
gonum.org/v1/gonum v0.16.0
74-
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822
75-
google.golang.org/grpc v1.74.2
76-
google.golang.org/protobuf v1.36.7
75+
google.golang.org/genproto/googleapis/rpc v0.0.0-20250825161204-c5933d9347a5
76+
google.golang.org/grpc v1.75.0
77+
google.golang.org/protobuf v1.36.8
7778
gopkg.in/yaml.v3 v3.0.1
7879
sigs.k8s.io/yaml v1.4.0
7980
)
@@ -83,7 +84,6 @@ require (
8384
github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59 // indirect
8485
github.com/bahlo/generic-list-go v0.2.0 // indirect
8586
github.com/beorn7/perks v1.0.1 // indirect
86-
github.com/bufbuild/protocompile v0.14.1 // indirect
8787
github.com/buger/goterm v1.0.4 // indirect
8888
github.com/buger/jsonparser v1.1.1 // indirect
8989
github.com/cenkalti/backoff/v5 v5.0.2 // indirect
@@ -112,7 +112,6 @@ require (
112112
github.com/jackc/pgproto3/v2 v2.3.3 // indirect
113113
github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect
114114
github.com/jackc/pgtype v1.14.4 // indirect
115-
github.com/jhump/protoreflect v1.15.3 // indirect
116115
github.com/json-iterator/go v1.1.12 // indirect
117116
github.com/klauspost/compress v1.18.0 // indirect
118117
github.com/klauspost/cpuid/v2 v2.2.10 // indirect
@@ -127,7 +126,6 @@ require (
127126
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
128127
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
129128
github.com/modern-go/reflect2 v1.0.2 // indirect
130-
github.com/mr-tron/base58 v1.2.0 // indirect
131129
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
132130
github.com/oklog/run v1.2.0 // indirect
133131
github.com/pierrec/lz4/v4 v4.1.22 // indirect
@@ -147,12 +145,13 @@ require (
147145
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.36.0 // indirect
148146
go.opentelemetry.io/proto/otlp v1.6.0 // indirect
149147
go.uber.org/multierr v1.11.0 // indirect
150-
golang.org/x/mod v0.26.0 // indirect
151-
golang.org/x/net v0.42.0 // indirect
152-
golang.org/x/sys v0.34.0 // indirect
153-
golang.org/x/term v0.33.0 // indirect
154-
golang.org/x/text v0.27.0 // indirect
148+
golang.org/x/mod v0.29.0 // indirect
149+
golang.org/x/net v0.47.0 // indirect
150+
golang.org/x/sys v0.38.0 // indirect
151+
golang.org/x/telemetry v0.0.0-20251008203120-078029d740a8 // indirect
152+
golang.org/x/term v0.37.0 // indirect
153+
golang.org/x/text v0.31.0 // indirect
155154
golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect
156-
google.golang.org/genproto/googleapis/api v0.0.0-20250528174236-200df99c418a // indirect
155+
google.golang.org/genproto/googleapis/api v0.0.0-20250707201910-8d1bb00bc6a7 // indirect
157156
gopkg.in/yaml.v2 v2.4.0 // indirect
158157
)

0 commit comments

Comments
 (0)