Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Solana home chain update #15892

Open
wants to merge 52 commits into
base: solana-router-deploy
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 41 commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
fa9d9f9
adding solchains to newnodes
yashnevatia Jan 10, 2025
57965b9
adding home chain changes
yashnevatia Jan 10, 2025
5b2e182
delegate changes
yashnevatia Jan 10, 2025
5e337b1
working tests
tt-cll Jan 11, 2025
0d01582
bump ccip
tt-cll Jan 11, 2025
e638d07
save existing solana + tests
tt-cll Jan 12, 2025
da7ae10
go mod tidy
tt-cll Jan 13, 2025
b46abf5
sol chains param
tt-cll Jan 13, 2025
1f08be3
try without parallel
tt-cll Jan 13, 2025
4edddaf
Merge remote-tracking branch 'origin/solana-router-deploy' into solan…
tt-cll Jan 13, 2025
8d7878b
function signature
tt-cll Jan 13, 2025
e4fa6fb
parallel
tt-cll Jan 13, 2025
366e05b
try defer
tt-cll Jan 13, 2025
f9f5fd2
retries
tt-cll Jan 13, 2025
e229877
Revert "retries"
tt-cll Jan 14, 2025
85be245
revert
tt-cll Jan 14, 2025
c55821c
gomod
tt-cll Jan 14, 2025
95d3869
remove cleanup
tt-cll Jan 14, 2025
50b87ae
fix deps
tt-cll Jan 14, 2025
60afdf4
try empty map
tt-cll Jan 14, 2025
429f87f
Merge pull request #15898 from smartcontractkit/tt/saveExisting
tt-cll Jan 14, 2025
64f6aed
Revert "yash fixed it!"
tt-cll Jan 14, 2025
7ef20dc
remove token info changes
tt-cll Jan 14, 2025
5188fc9
revert function call
tt-cll Jan 14, 2025
14675b1
Merge remote-tracking branch 'origin/solana-router-deploy' into solan…
tt-cll Jan 14, 2025
9149007
revert
tt-cll Jan 14, 2025
cca9295
go mod tidy
tt-cll Jan 14, 2025
0089910
no return
tt-cll Jan 14, 2025
5124bee
try retries
tt-cll Jan 14, 2025
e199014
try returning again
tt-cll Jan 14, 2025
9e7a37f
use CI artifact
tt-cll Jan 14, 2025
97ee0ea
try without ctf bump
tt-cll Jan 14, 2025
c4aac83
CR comments
tt-cll Jan 15, 2025
2bcb88f
lint
tt-cll Jan 15, 2025
551831e
add global lookup table
tt-cll Jan 15, 2025
c785ccf
call utils
tt-cll Jan 15, 2025
cee710d
adding token pool deploy
yashnevatia Jan 16, 2025
2f315cd
test commit
yashnevatia Jan 14, 2025
1efcf8c
adding solana token stufF
yashnevatia Jan 16, 2025
9d86933
adding token pool so
yashnevatia Jan 16, 2025
965e13f
add retries
tt-cll Jan 16, 2025
5bf1660
fix token test
tt-cll Jan 16, 2025
c2f19b8
setup token pool last
tt-cll Jan 16, 2025
f40a326
match lookup table from tests
tt-cll Jan 16, 2025
1f460a7
lint
tt-cll Jan 16, 2025
e0f8349
revert token pool uncomment
tt-cll Jan 16, 2025
7eb9262
skip early return
tt-cll Jan 16, 2025
5e3b4f3
remove retries
tt-cll Jan 16, 2025
998adc7
add ccip receiver to helpers
tt-cll Jan 17, 2025
140c8c5
initial token admin registry
tt-cll Jan 18, 2025
723b4b4
billing
yashnevatia Jan 20, 2025
44724b3
adding billing stuff
yashnevatia Jan 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions .github/workflows/build-publish-develop-pr.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
name: "Build and Publish GoReleaser"

on:
pull_request:
# The default types are opened, synchronize, and reopened
# See https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#pull_request
# We add a label trigger too, since when the build-publish label is added to a PR, we want to build and publish
types:
- opened
- synchronize
- reopened
- labeled
push:
branches:
- develop
# pull_request:
# # The default types are opened, synchronize, and reopened
# # See https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#pull_request
# # We add a label trigger too, since when the build-publish label is added to a PR, we want to build and publish
# types:
# - opened
# - synchronize
# - reopened
# - labeled
# push:
# branches:
# - develop
workflow_dispatch:
inputs:
git_ref:
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/build-publish-goreleaser.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
name: "Goreleaser Chainlink"

on:
push:
tags:
- "goreleaser-v*"

# push:
# tags:
# - "goreleaser-v*"
workflow_dispatch:
env:
ECR_HOSTNAME: public.ecr.aws

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/ci-core-partial.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ jobs:
fail-fast: false
matrix:
type:
- test-suite: "core"
module-directory: "./"
build-flags: "-tags=integration"
# - test-suite: "core"
# module-directory: "./"
# build-flags: "-tags=integration"
- test-suite: "ccip-deployment"
module-directory: "./deployment"
steps:
Expand Down
22 changes: 11 additions & 11 deletions .github/workflows/ci-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -173,20 +173,20 @@ jobs:
fail-fast: false
matrix:
type:
- cmd: go_core_tests
os: ubuntu22.04-32cores-128GB
printResults: true
- cmd: go_core_tests_integration
os: ubuntu22.04-32cores-128GB
printResults: true
# - cmd: go_core_tests
# os: ubuntu22.04-32cores-128GB
# printResults: true
# - cmd: go_core_tests_integration
# os: ubuntu22.04-32cores-128GB
# printResults: true
- cmd: go_core_ccip_deployment_tests
os: ubuntu22.04-32cores-128GB
printResults: true
- cmd: go_core_fuzz
os: ubuntu22.04-8cores-32GB
- cmd: go_core_race_tests
# use 64cores for certain scheduled runs only
os: ${{ needs.run-frequency.outputs.two-per-day-frequency == 'true' && 'ubuntu-latest-64cores-256GB' || 'ubuntu-latest-32cores-128GB' }}
# - cmd: go_core_fuzz
# os: ubuntu22.04-8cores-32GB
# - cmd: go_core_race_tests
# # use 64cores for certain scheduled runs only
# os: ${{ needs.run-frequency.outputs.two-per-day-frequency == 'true' && 'ubuntu-latest-64cores-256GB' || 'ubuntu-latest-32cores-128GB' }}
name: Core Tests (${{ matrix.type.cmd }})
# We don't directly merge dependabot PRs, so let's not waste the resources
if: ${{ github.actor != 'dependabot[bot]' }}
Expand Down
17 changes: 9 additions & 8 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
name: 'CodeQL'

on:
push:
branches:
- develop
pull_request:
# The branches below must be a subset of the branches above
branches: [develop]
schedule:
- cron: '23 19 * * 4'
# push:
# branches:
# - develop
# pull_request:
# # The branches below must be a subset of the branches above
# branches: [develop]
# schedule:
# - cron: '23 19 * * 4'
workflow_dispatch:

jobs:
filter:
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/integration-in-memory-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
name: Integration In-Memory Tests
run-name: Integration In-Memory Tests
on:
merge_group:
pull_request:
push:
tags:
- "*"
# merge_group:
# pull_request:
# push:
# tags:
# - "*"
workflow_dispatch:
inputs:
cl_ref:
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/integration-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
name: Integration Tests
run-name: Integration Tests ${{ inputs.distinct_run_name && inputs.distinct_run_name || '' }}
on:
merge_group:
pull_request:
push:
tags:
- "*"
# merge_group:
# pull_request:
# push:
# tags:
# - "*"
workflow_dispatch:
inputs:
cl_ref:
Expand Down
11 changes: 6 additions & 5 deletions .github/workflows/solidity-wrappers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,12 @@ name: Solidity Wrappers
# used for job execution. The jobs in "solidity.yml" are configured around push events, whereas
# we only want to generate gethwrappers during pull requests.
on:
pull_request:
types:
- opened
- synchronize
- reopened
# pull_request:
# types:
# - opened
# - synchronize
# - reopened
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/solidity.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
name: Solidity

on:
merge_group:
push:

# merge_group:
# push:
workflow_dispatch:
defaults:
run:
shell: bash
Expand Down
47 changes: 30 additions & 17 deletions core/capabilities/ccip/delegate.go
Original file line number Diff line number Diff line change
Expand Up @@ -251,10 +251,6 @@ func (d *Delegate) OnDeleteJob(ctx context.Context, spec job.Job) error {
func (d *Delegate) getOCRKeys(ocrKeyBundleIDs job.JSONConfig) (map[string]ocr2key.KeyBundle, error) {
ocrKeys := make(map[string]ocr2key.KeyBundle)
for networkType, bundleIDRaw := range ocrKeyBundleIDs {
if networkType != relay.NetworkEVM {
return nil, fmt.Errorf("unsupported chain type: %s", networkType)
}

bundleID, ok := bundleIDRaw.(string)
if !ok {
return nil, fmt.Errorf("OCRKeyBundleIDs must be a map of chain types to OCR key bundle IDs, got: %T", bundleIDRaw)
Expand All @@ -273,22 +269,39 @@ func (d *Delegate) getOCRKeys(ocrKeyBundleIDs job.JSONConfig) (map[string]ocr2ke
func (d *Delegate) getTransmitterKeys(ctx context.Context, relayIDs []types.RelayID) (map[types.RelayID][]string, error) {
transmitterKeys := make(map[types.RelayID][]string)
for _, relayID := range relayIDs {
chainID, ok := new(big.Int).SetString(relayID.ChainID, 10)
if !ok {
return nil, fmt.Errorf("error parsing chain ID, expected big int: %s", relayID.ChainID)
}
switch relayID.Network {
case relay.NetworkSolana:
solKeys, err := d.keystore.Solana().GetAll()
if err != nil {
return nil, fmt.Errorf("error getting enabled addresses for chain: %s %w", relayID.ChainID, err)
}

ethKeys, err := d.keystore.Eth().EnabledAddressesForChain(ctx, chainID)
if err != nil {
return nil, fmt.Errorf("error getting enabled addresses for chain: %s %w", chainID.String(), err)
}
transmitterKeys[relayID] = func() (r []string) {
for _, key := range solKeys {
r = append(r, key.PublicKey().String())
}
return
}()
case relay.NetworkEVM:
chainID, ok := new(big.Int).SetString(relayID.ChainID, 10)
if !ok {
return nil, fmt.Errorf("error parsing chain ID, expected big int: %s", relayID.ChainID)
}

transmitterKeys[relayID] = func() (r []string) {
for _, key := range ethKeys {
r = append(r, key.Hex())
ethKeys, err := d.keystore.Eth().EnabledAddressesForChain(ctx, chainID)
if err != nil {
return nil, fmt.Errorf("error getting enabled addresses for chain: %s %w", chainID.String(), err)
}
return
}()

transmitterKeys[relayID] = func() (r []string) {
for _, key := range ethKeys {
r = append(r, key.Hex())
}
return
}()
default:
return nil, fmt.Errorf("unsupported network: %s", relayID.Network)
}
}
return transmitterKeys, nil
}
Expand Down
44 changes: 22 additions & 22 deletions core/scripts/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ require (
)

require (
github.com/docker/docker v27.3.1+incompatible
github.com/docker/docker v27.5.0+incompatible
github.com/docker/go-connections v0.5.0
github.com/ethereum/go-ethereum v1.14.11
github.com/gkampitakis/go-snaps v0.5.4
Expand All @@ -42,9 +42,9 @@ require (
github.com/umbracle/fastrlp v0.0.0-20220527094140-59d5dd30e722
github.com/urfave/cli v1.22.14
google.golang.org/protobuf v1.35.1
k8s.io/api v0.31.1
k8s.io/apimachinery v0.31.1
k8s.io/client-go v0.31.1
k8s.io/api v0.31.2
k8s.io/apimachinery v0.31.2
k8s.io/client-go v0.31.2
)

require (
Expand Down Expand Up @@ -135,7 +135,7 @@ require (
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fsnotify/fsnotify v1.7.0 // indirect
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
github.com/gabriel-vasile/mimetype v1.4.6 // indirect
github.com/gabriel-vasile/mimetype v1.4.8 // indirect
github.com/gagliardetto/binary v0.8.0 // indirect
github.com/gagliardetto/solana-go v1.12.0 // indirect
github.com/gagliardetto/treeout v0.1.4 // indirect
Expand Down Expand Up @@ -164,7 +164,7 @@ require (
github.com/go-openapi/swag v0.23.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect
github.com/go-playground/universal-translator v0.18.1 // indirect
github.com/go-playground/validator/v10 v10.22.1 // indirect
github.com/go-playground/validator/v10 v10.24.0 // indirect
github.com/go-viper/mapstructure/v2 v2.1.0 // indirect
github.com/go-webauthn/webauthn v0.9.4 // indirect
github.com/go-webauthn/x v0.1.5 // indirect
Expand Down Expand Up @@ -207,7 +207,6 @@ require (
github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
github.com/hashicorp/go-plugin v1.6.2 // indirect
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
github.com/hashicorp/go-version v1.7.0 // indirect
github.com/hashicorp/golang-lru v0.6.0 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/hashicorp/yamux v0.1.1 // indirect
Expand Down Expand Up @@ -246,10 +245,10 @@ require (
github.com/libp2p/go-buffer-pool v0.1.0 // indirect
github.com/linxGnu/grocksdb v1.7.16 // indirect
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
github.com/magiconair/properties v1.8.7 // indirect
github.com/magiconair/properties v1.8.9 // indirect
github.com/mailru/easyjson v0.7.7 // indirect
github.com/maruel/natural v1.1.1 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mattn/go-runewidth v0.0.16 // indirect
github.com/mfridman/interpolate v0.0.2 // indirect
Expand Down Expand Up @@ -277,7 +276,7 @@ require (
github.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect
github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect
github.com/pressly/goose/v3 v3.21.1 // indirect
github.com/prometheus/client_model v0.6.1 // indirect
github.com/prometheus/common v0.60.1 // indirect
Expand All @@ -297,7 +296,7 @@ require (
github.com/scylladb/go-reflectx v1.0.1 // indirect
github.com/sethvargo/go-retry v0.2.4 // indirect
github.com/shirou/gopsutil v3.21.11+incompatible // indirect
github.com/shirou/gopsutil/v3 v3.24.3 // indirect
github.com/shirou/gopsutil/v3 v3.24.5 // indirect
github.com/smartcontractkit/ccip-owner-contracts v0.0.0-salt-fix // indirect
github.com/smartcontractkit/chain-selectors v1.0.36 // indirect
github.com/smartcontractkit/chainlink-ccip v0.0.0-20250109124515-ff9d86b874ba // indirect
Expand All @@ -310,7 +309,7 @@ require (
github.com/smartcontractkit/chainlink-protos/orchestrator v0.4.0 // indirect
github.com/smartcontractkit/chainlink-solana v1.1.1-0.20241223151630-eac4f1508dce // indirect
github.com/smartcontractkit/chainlink-starknet/relayer v0.1.1-0.20241202202529-2033490e77b8 // indirect
github.com/smartcontractkit/chainlink-testing-framework/lib v1.50.13 // indirect
github.com/smartcontractkit/chainlink-testing-framework/lib v1.50.20-0.20250114190635-f59dc16957c9 // indirect
github.com/smartcontractkit/grpc-proxy v0.0.0-20240830132753-a7e17fec5ab7 // indirect
github.com/smartcontractkit/tdh2/go/ocr2/decryptionplugin v0.0.0-20241009055228-33d0c0bf38de // indirect
github.com/smartcontractkit/tdh2/go/tdh2 v0.0.0-20241009055228-33d0c0bf38de // indirect
Expand All @@ -333,8 +332,8 @@ require (
github.com/tidwall/match v1.1.1 // indirect
github.com/tidwall/pretty v1.2.1 // indirect
github.com/tidwall/sjson v1.2.5 // indirect
github.com/tklauser/go-sysconf v0.3.12 // indirect
github.com/tklauser/numcpus v0.6.1 // indirect
github.com/tklauser/go-sysconf v0.3.14 // indirect
github.com/tklauser/numcpus v0.9.0 // indirect
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
github.com/tyler-smith/go-bip39 v1.1.0 // indirect
github.com/ugorji/go/codec v1.2.12 // indirect
Expand All @@ -352,10 +351,11 @@ require (
go.dedis.ch/kyber/v3 v3.1.0 // indirect
go.etcd.io/bbolt v1.3.9 // indirect
go.mongodb.org/mongo-driver v1.15.0 // indirect
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin v0.49.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.56.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 // indirect
go.opentelemetry.io/otel v1.31.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0 // indirect
go.opentelemetry.io/otel v1.33.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.0.0-20240823153156-2a54df7bffb9 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.6.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.28.0 // indirect
Expand All @@ -367,24 +367,24 @@ require (
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.28.0 // indirect
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.28.0 // indirect
go.opentelemetry.io/otel/log v0.6.0 // indirect
go.opentelemetry.io/otel/metric v1.31.0 // indirect
go.opentelemetry.io/otel/metric v1.33.0 // indirect
go.opentelemetry.io/otel/sdk v1.31.0 // indirect
go.opentelemetry.io/otel/sdk/log v0.6.0 // indirect
go.opentelemetry.io/otel/sdk/metric v1.31.0 // indirect
go.opentelemetry.io/otel/trace v1.31.0 // indirect
go.opentelemetry.io/otel/trace v1.33.0 // indirect
go.opentelemetry.io/proto/otlp v1.3.1 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/ratelimit v0.3.1 // indirect
go.uber.org/zap v1.27.0 // indirect
golang.org/x/arch v0.11.0 // indirect
golang.org/x/crypto v0.31.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/exp v0.0.0-20241210194714-1829a127f884 // indirect
golang.org/x/mod v0.22.0 // indirect
golang.org/x/net v0.32.0 // indirect
golang.org/x/net v0.34.0 // indirect
golang.org/x/oauth2 v0.23.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.28.0 // indirect
golang.org/x/term v0.27.0 // indirect
golang.org/x/sys v0.29.0 // indirect
golang.org/x/term v0.28.0 // indirect
golang.org/x/text v0.21.0 // indirect
golang.org/x/time v0.7.0 // indirect
golang.org/x/tools v0.28.0 // indirect
Expand Down
Loading
Loading