Skip to content

Commit ed14df4

Browse files
Merge branch 'maksym/integrate-common-interface-rawdb' into add/ci-test-new-state
2 parents 1c8cf19 + 1457e7d commit ed14df4

399 files changed

Lines changed: 17891 additions & 9344 deletions

File tree

Some content is hidden

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

.github/dependabot.yml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,3 @@ updates:
1515
open-pull-requests-limit: 3
1616
schedule:
1717
interval: "weekly"
18-
- package-ecosystem: "cargo"
19-
directory: "/vm/rust"
20-
open-pull-requests-limit: 3
21-
schedule:
22-
interval: "weekly"
23-
ignore:
24-
- dependency-name: "cairo-vm"
25-
- dependency-name: "starknet_api"
26-
- dependency-name: "blockifier"

.github/workflows/benchmark-sync.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020

2121
steps:
2222
- name: Checkout repository
23-
uses: actions/checkout@v4
23+
uses: actions/checkout@v5
2424
with:
2525
fetch-depth: 0
2626

.github/workflows/build-binaries.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525

2626
steps:
2727
- name: Checkout code
28-
uses: actions/checkout@v4
28+
uses: actions/checkout@v5
2929
with:
3030
fetch-depth: 0
3131

.github/workflows/build-image.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
DOCKER_IMAGE_TAG: ${{ steps.set_tag.outputs.DOCKER_IMAGE_TAG }}
2828
steps:
2929
- name: Checkout
30-
uses: actions/checkout@v4
30+
uses: actions/checkout@v5
3131
with:
3232
fetch-depth: 0
3333

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
permissions: {}
2+
name: Check Juno Snapshot Age
3+
4+
on:
5+
schedule:
6+
- cron: "0 8 * * *"
7+
workflow_dispatch:
8+
9+
jobs:
10+
check-age:
11+
runs-on: ubuntu-latest
12+
strategy:
13+
fail-fast: false
14+
matrix:
15+
network:
16+
- name: "Mainnet"
17+
url: "https://juno-snapshots.nethermind.io/files/mainnet/latest"
18+
- name: "Sepolia"
19+
url: "https://juno-snapshots.nethermind.io/files/sepolia/latest"
20+
- name: "Sepolia Integration"
21+
url: "https://juno-snapshots.nethermind.io/files/sepolia-integration/latest"
22+
env:
23+
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
24+
MAX_AGE_DAYS: 7
25+
26+
steps:
27+
- name: Check snapshot age for ${{ matrix.network.name }}
28+
run: |
29+
set -eo pipefail
30+
31+
MAX_AGE_SECONDS=$((MAX_AGE_DAYS * 24 * 60 * 60))
32+
NETWORK_NAME="${{ matrix.network.name }}"
33+
SNAPSHOT_URL="${{ matrix.network.url }}"
34+
35+
echo "Checking $NETWORK_NAME snapshot: $SNAPSHOT_URL"
36+
37+
LAST_MODIFIED_STRING=$(curl -s -I -L "$SNAPSHOT_URL" | grep -i '^last-modified:' | sed -E 's/last-modified: //i' | tr -d '\r')
38+
39+
if [ -z "$LAST_MODIFIED_STRING" ]; then
40+
MESSAGE="⚠️ *WARNING:* Unable to retrieve Last-Modified header for *$NETWORK_NAME* snapshot. Check if the URL is accessible or changed.\n\n- *Network:* $NETWORK_NAME\n- *URL:* <$SNAPSHOT_URL|Snapshot Link>"
41+
curl -X POST -H 'Content-type: application/json' --data "{\"text\":\"$MESSAGE\"}" "$SLACK_WEBHOOK_URL"
42+
exit 1
43+
fi
44+
45+
echo "$NETWORK_NAME snapshot last modified on: $LAST_MODIFIED_STRING"
46+
47+
LAST_MODIFIED_TIMESTAMP=$(date -d "$LAST_MODIFIED_STRING" +%s 2>/dev/null)
48+
if [ $? -ne 0 ] || [ -z "$LAST_MODIFIED_TIMESTAMP" ]; then
49+
MESSAGE="⚠️ *WARNING:* Unable to parse Last-Modified header for *$NETWORK_NAME* snapshot. The date format may be unrecognized by the system.\n\n- *Network:* $NETWORK_NAME\n- *URL:* <$SNAPSHOT_URL|Snapshot Link>\n- *Last-Modified Header:* \`$LAST_MODIFIED_STRING\`"
50+
curl -X POST -H 'Content-type: application/json' --data "{\"text\":\"$MESSAGE\"}" "$SLACK_WEBHOOK_URL"
51+
exit 1
52+
fi
53+
CURRENT_TIMESTAMP=$(date +%s)
54+
AGE_SECONDS=$((CURRENT_TIMESTAMP - LAST_MODIFIED_TIMESTAMP))
55+
AGE_DAYS=$((AGE_SECONDS / 86400))
56+
57+
if [ "$AGE_SECONDS" -gt "$MAX_AGE_SECONDS" ]; then
58+
MESSAGE="🚨 *ALERT: Juno $NETWORK_NAME Snapshot is Outdated!* 🚨\n\nThe latest $NETWORK_NAME snapshot is *$AGE_DAYS days old*, exceeding the $MAX_AGE_DAYS-day threshold.\n\n- *Network:* $NETWORK_NAME\n- *URL:* <$SNAPSHOT_URL|Latest Snapshot>\n- *Last Modified:* \`$LAST_MODIFIED_STRING\`"
59+
echo "ALERT: $NETWORK_NAME snapshot is $AGE_DAYS days old. Sending Slack notification."
60+
curl -X POST -H 'Content-type: application/json' --data "{\"text\":\"$MESSAGE\"}" "$SLACK_WEBHOOK_URL"
61+
exit 1
62+
else
63+
echo "✅ OK: $NETWORK_NAME snapshot is fresh ($AGE_DAYS days old). No alert needed."
64+
fi
65+

.github/workflows/deploy-and-test.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ jobs:
6464
name: ${{ inputs.environment }}
6565
steps:
6666
- name: Checkout
67-
uses: actions/checkout@v4
67+
uses: actions/checkout@v5
6868

6969
- name: Setup Docker Buildx
7070
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v.3.11.1
@@ -142,7 +142,7 @@ jobs:
142142
needs: [deploy]
143143
uses: ./.github/workflows/starknet-go-tests.yml
144144
with:
145-
ref: 8ab778d86f42c344ac789acae897d9621530e3de
145+
ref: 3bdcf49394b665b5e544ac506d280d55282ee56d
146146
rpc_version: v0_8
147147
secrets:
148148
TEST_RPC_URL: ${{ secrets.RPC_URL }}
@@ -153,7 +153,7 @@ jobs:
153153
needs: [deploy]
154154
uses: ./.github/workflows/starknet-go-tests.yml
155155
with:
156-
ref: 5f5517021c173741e06a552dd81d6bd8a477713c
156+
ref: a86f53701a3be224b7b3e24c2550cbc98ffc266d
157157
rpc_version: v0_9
158158
secrets:
159159
TEST_RPC_URL: ${{ secrets.RPC_URL }}

.github/workflows/docker-image-build-push.yml

Lines changed: 22 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
1-
name: 'Build and publish Docker image'
1+
name: "Build and publish Docker image"
22

33
on:
44
workflow_call:
55
inputs:
66
repo_type:
7-
description: 'Choose repository type'
7+
description: "Choose repository type"
88
type: string
9-
default: 'non-official'
9+
default: "non-official"
1010
outputs:
1111
tag:
12-
description: 'The tag that was built'
12+
description: "The tag that was built"
1313
value: ${{ jobs.setup.outputs.tag }}
1414
workflow_dispatch:
1515
inputs:
1616
repo_type:
17-
description: 'Choose repository type'
17+
description: "Choose repository type"
1818
type: choice
1919
required: false
20-
default: 'non-official'
20+
default: "non-official"
2121
options:
2222
- official
2323
- non-official
@@ -34,10 +34,10 @@ jobs:
3434
tag: ${{ steps.set_tag.outputs.tag }}
3535
steps:
3636
- name: Checkout code
37-
uses: actions/checkout@v4
37+
uses: actions/checkout@v5
3838
with:
3939
fetch-depth: 0
40-
40+
4141
- name: Set TAG output
4242
id: set_tag
4343
run: echo "tag=$(git describe --tags)" >> $GITHUB_OUTPUT
@@ -48,7 +48,7 @@ jobs:
4848
runs-on: ubuntu-latest
4949
steps:
5050
- name: Checkout code
51-
uses: actions/checkout@v4
51+
uses: actions/checkout@v5
5252
with:
5353
fetch-depth: 0
5454

@@ -58,8 +58,8 @@ jobs:
5858
- name: Login to Docker Hub
5959
uses: docker/login-action@v3
6060
with:
61-
username: ${{ secrets.DOCKER_USERNAME }}
62-
password: ${{ secrets.DOCKER_PASSWORD }}
61+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
62+
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
6363

6464
- name: Build and push AMD64
6565
uses: docker/build-push-action@v6
@@ -75,7 +75,7 @@ jobs:
7575
runs-on: ubuntu-arm64-4-core
7676
steps:
7777
- name: Checkout code
78-
uses: actions/checkout@v4
78+
uses: actions/checkout@v5
7979
with:
8080
fetch-depth: 0
8181

@@ -85,8 +85,8 @@ jobs:
8585
- name: Login to Docker Hub
8686
uses: docker/login-action@v3
8787
with:
88-
username: ${{ secrets.DOCKER_USERNAME }}
89-
password: ${{ secrets.DOCKER_PASSWORD }}
88+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
89+
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
9090

9191
- name: Build and push ARM64
9292
uses: docker/build-push-action@v6
@@ -100,7 +100,10 @@ jobs:
100100
run: docker system prune -af
101101

102102
create_and_push_official_image:
103-
needs: [setup, build_and_push_docker_image_amd, build_and_push_docker_image_arm]
103+
needs:
104+
- setup
105+
- build_and_push_docker_image_amd
106+
- build_and_push_docker_image_arm
104107
if: github.repository_owner == 'NethermindEth' && inputs.repo_type == 'official'
105108
runs-on: ubuntu-latest
106109
steps:
@@ -110,8 +113,8 @@ jobs:
110113
- name: Login to Docker Hub
111114
uses: docker/login-action@v3
112115
with:
113-
username: ${{ secrets.DOCKER_USERNAME }}
114-
password: ${{ secrets.DOCKER_PASSWORD }}
116+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
117+
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
115118

116119
- name: Create and push manifest using buildx
117120
run: |
@@ -122,4 +125,5 @@ jobs:
122125
123126
- name: Clean up Docker config
124127
if: always()
125-
run: rm -f ${HOME}/.docker/config.json
128+
run: rm -f ${HOME}/.docker/config.json
129+

.github/workflows/docker-image-tag-latest.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ jobs:
2424
- name: Login to Docker Hub
2525
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772
2626
with:
27-
username: ${{ secrets.DOCKER_USERNAME }}
28-
password: ${{ secrets.DOCKER_PASSWORD }}
27+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
28+
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
2929

3030
- name: Tag and push as latest using buildx
3131
run: docker buildx imagetools create --tag nethermind/juno:latest nethermind/juno:${{ env.TAG }}

.github/workflows/docs-deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
name: Deploy to GitHub Pages
1919
runs-on: ubuntu-latest
2020
steps:
21-
- uses: actions/checkout@v4
21+
- uses: actions/checkout@v5
2222
- uses: actions/setup-node@v4
2323
with:
2424
node-version-file: docs/.nvmrc

.github/workflows/docs-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
name: Test deployment
1515
runs-on: ubuntu-latest
1616
steps:
17-
- uses: actions/checkout@v4
17+
- uses: actions/checkout@v5
1818
- uses: actions/setup-node@v4
1919
with:
2020
node-version-file: docs/.nvmrc

0 commit comments

Comments
 (0)