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

CI test: Add Celestia DA logic to 3.2.1 #19

Open
wants to merge 49 commits into
base: celestia-develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
e0384c3
update submodules
Ferret-san Mar 13, 2024
8b49368
Celestia DA
Ferret-san Aug 11, 2023
b5a4451
Update deps and fix tests
Ferret-san Mar 14, 2024
25f49d0
Delete rpc_test.go
Ferret-san Mar 14, 2024
018e7d6
Atlas upgrade compatibility
Ferret-san Mar 14, 2024
15e90ef
Update contracts
Ferret-san Mar 15, 2024
dfae469
Add Celestia OSP
Ferret-san Apr 24, 2024
2b2750e
audit fixes
Ferret-san May 21, 2024
fe910ca
update submodules
Ferret-san May 28, 2024
7d0aa84
update geth dep
Ferret-san May 28, 2024
bbf6fc8
Create README.md
Ferret-san May 30, 2024
b6a3246
Add Nitro Celestia audit report
Ferret-san May 30, 2024
c8d5663
Delete audits/celestia/README.md
Ferret-san May 30, 2024
63b4412
Update celestia.go
Ferret-san May 30, 2024
3c55bec
fix openrpc dependency
Ferret-san May 30, 2024
7602075
handle single share batches
Ferret-san May 30, 2024
b28f277
Allow large MaxSize config for Celestia DA
Ferret-san May 31, 2024
798c13c
Fallback to Anytrust + Noop CelestiaWriter
Ferret-san May 31, 2024
a9e30f7
Update deps, correct fallback to DAS, improve gas logic
Ferret-san Jun 4, 2024
4f1f17f
add metrics to `das/celestia`
Ferret-san Jun 4, 2024
d8c3eb7
Update celestia.go
Ferret-san Jun 5, 2024
a0cf332
go mod tidy
Ferret-san Jun 5, 2024
c9ab8b2
Add flags and fix small issue
Ferret-san Jun 6, 2024
5694a9d
Merge branch 'celestia-v2.3.3' into 2.4.0-rc.4
Ferret-san Jun 7, 2024
5c0a511
Celestia daProvider
Ferret-san Jun 7, 2024
90df625
fix Dockerfile
Ferret-san Jun 7, 2024
0a3934e
Merge branch '2.4.0-rc.4' into celestia-v3.0.0
Ferret-san Jun 10, 2024
1831e22
da proof for Celestia
Ferret-san Jun 11, 2024
c2a7fb8
fix `batch_poster_test.go` and `node.go`
Ferret-san Jun 11, 2024
fbf5bba
update challenge test
Ferret-san Jun 14, 2024
f101345
Begin using CelestiaDASClient
Ferret-san Jun 25, 2024
1aa14ea
Add dapWriter preference list
Ferret-san Jul 2, 2024
8e77363
Merge branch 'celestia-v3.0.0' into celestia-v3.1.0
Ferret-san Jul 16, 2024
8f8caf4
v3.1.0 compatibility
Ferret-san Jul 18, 2024
3da138c
Update contracts
Ferret-san Jul 18, 2024
16a17e6
Merge pull request #2600 from OffchainLabs/fix-s3-das-expiry
PlasmaPower Aug 21, 2024
4650d89
Merge pull request #2603 from OffchainLabs/lower-log-levels
joshuacolvin0 Aug 22, 2024
b26e84e
Merge pull request #2612 from OffchainLabs/fix-wasm-rebuild-stylus-ta…
PlasmaPower Aug 26, 2024
309340a
Return false if nil is passed to IsNotExistError
PlasmaPower Aug 27, 2024
fa9ae16
update submodules
Ferret-san Aug 27, 2024
3428d52
Merge branch 'celestia-v3.1.0' into celestia-v3.1.1
Ferret-san Aug 27, 2024
28da293
Update go-ethereum
Ferret-san Aug 27, 2024
ad4ae15
Merge branch 'nitro-v3.1.2' into celestia-v3.1.2
Ferret-san Sep 3, 2024
a435a86
Merge branch 'celestia-v3.1.2' into celestia-v3.2.1
Ferret-san Sep 24, 2024
9e6fa83
update submodules
Ferret-san Sep 25, 2024
a41f73f
Change CI to use `ubuntu-latest`
Ferret-san Nov 18, 2024
f313878
correct submodule file
Ferret-san Nov 18, 2024
89dca74
Update arbitrator-ci.yml
Ferret-san Nov 18, 2024
5c0465f
fix CI cache key issue
Ferret-san Nov 18, 2024
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
41 changes: 20 additions & 21 deletions .github/workflows/arbitrator-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,32 @@ on:
inputs:
enable_tmate:
type: boolean
description: 'Enable tmate'
description: "Enable tmate"
required: false
default: false
merge_group:
pull_request:
paths:
- 'arbitrator/**'
- 'contracts'
- '.github/workflows/arbitrator-ci.yml'
- 'Makefile'
- "arbitrator/**"
- "contracts"
- ".github/workflows/arbitrator-ci.yml"
- "Makefile"
push:
branches:
- master

env:
RUST_BACKTRACE: 1
# RUSTFLAGS: -Dwarnings # TODO: re-enable after wasmer upgrade
# RUSTFLAGS: -Dwarnings # TODO: re-enable after wasmer upgrade
WABT_VERSION: 1.0.32

jobs:
arbitrator:
name: Run Arbitrator tests
runs-on: ubuntu-8
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
steps:
- name: Setup tmate session
uses: mxschmitt/action-tmate@v3
Expand Down Expand Up @@ -64,23 +67,23 @@ jobs:
- name: Setup nodejs
uses: actions/setup-node@v3
with:
node-version: '18'
cache: 'yarn'
cache-dependency-path: '**/yarn.lock'
node-version: "18"
cache: "yarn"
cache-dependency-path: "**/yarn.lock"

- name: Install rust stable
uses: dtolnay/rust-toolchain@stable
with:
toolchain: 'stable'
components: 'llvm-tools-preview, rustfmt, clippy'
toolchain: "stable"
components: "llvm-tools-preview, rustfmt, clippy"

- name: Install rust nightly
uses: dtolnay/rust-toolchain@nightly
id: install-rust-nightly
with:
toolchain: 'nightly-2024-08-06'
targets: 'wasm32-wasi, wasm32-unknown-unknown'
components: 'rust-src, rustfmt, clippy'
toolchain: "nightly-2024-08-06"
targets: "wasm32-wasi, wasm32-unknown-unknown"
components: "rust-src, rustfmt, clippy"

- name: Set STYLUS_NIGHTLY_VER environment variable
run: echo "STYLUS_NIGHTLY_VER=+$(rustup toolchain list | grep '^nightly' | head -n1 | cut -d' ' -f1)" >> "$GITHUB_ENV"
Expand Down Expand Up @@ -143,13 +146,9 @@ jobs:
if: steps.cache-cbrotli.outputs.cache-hit != 'true'
uses: mymindstorm/setup-emsdk@v12
with:
# Make sure to set a version number!
version: 3.1.6
# This is the name of the cache folder.
# The cache folder will be placed in the build directory,
# so make sure it doesn't conflict with anything!
actions-cache-folder: 'emsdk-cache'
no-cache: true
actions-cache-folder: "emsdk-cache-${{ github.run_id }}"
no-cache: false

- name: Build cbrotli-wasm
if: steps.cache-cbrotli.outputs.cache-hit != 'true'
Expand Down
22 changes: 11 additions & 11 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ on:
jobs:
test:
name: Go Tests
runs-on: ubuntu-8
runs-on: ubuntu-latest

# Creates a redis container for redis tests
services:
redis:
image: redis
ports:
- 6379:6379
- 6379:6379

strategy:
fail-fast: false
Expand All @@ -39,9 +39,9 @@ jobs:
- name: Setup nodejs
uses: actions/setup-node@v3
with:
node-version: '18'
cache: 'yarn'
cache-dependency-path: '**/yarn.lock'
node-version: "18"
cache: "yarn"
cache-dependency-path: "**/yarn.lock"

- name: Install go
uses: actions/setup-go@v4
Expand All @@ -56,17 +56,17 @@ jobs:
- name: Install rust stable
uses: dtolnay/rust-toolchain@stable
with:
toolchain: 'stable'
targets: 'wasm32-wasi, wasm32-unknown-unknown'
components: 'llvm-tools-preview, rustfmt, clippy'
toolchain: "stable"
targets: "wasm32-wasi, wasm32-unknown-unknown"
components: "llvm-tools-preview, rustfmt, clippy"

- name: Install rust nightly
uses: dtolnay/rust-toolchain@nightly
id: install-rust-nightly
with:
toolchain: 'nightly-2024-08-06'
targets: 'wasm32-wasi, wasm32-unknown-unknown'
components: 'rust-src, rustfmt, clippy'
toolchain: "nightly-2024-08-06"
targets: "wasm32-wasi, wasm32-unknown-unknown"
components: "rust-src, rustfmt, clippy"

- name: Set STYLUS_NIGHTLY_VER environment variable
run: echo "STYLUS_NIGHTLY_VER=+$(rustup toolchain list | grep '^nightly' | head -n1 | cut -d' ' -f1)" >> "$GITHUB_ENV"
Expand Down
212 changes: 106 additions & 106 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,20 +13,20 @@ name: "CodeQL"

on:
push:
branches: [ "master" ]
branches: ["master"]
merge_group:
branches: [ "master" ]
branches: ["master"]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "master" ]
branches: ["master"]
schedule:
- cron: '18 21 * * 5'
- cron: "18 21 * * 5"

jobs:
analyze:
name: Analyze
if: github.repository == 'OffchainLabs/nitro' # don't run in any forks without "Advanced Security" enabled
runs-on: ubuntu-8
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
Expand All @@ -37,108 +37,108 @@ jobs:
strategy:
fail-fast: false
matrix:
language: [ 'go' ]
language: ["go"]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support

steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true

- name: Install dependencies
run: sudo apt update && sudo apt install -y wabt

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.

# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
config-file: ./.github/codeql/codeql-config.yml

- name: Setup nodejs
uses: actions/setup-node@v3
with:
node-version: '18'
cache: 'yarn'
cache-dependency-path: '**/yarn.lock'

- name: Install go
uses: actions/setup-go@v4
with:
go-version: 1.21.x

- name: Install rust stable
uses: dtolnay/rust-toolchain@stable

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1

- name: Cache Rust Build Products
uses: actions/cache@v3
with:
path: |
~/.cargo/registry/
~/.cargo/git/
arbitrator/target/
arbitrator/wasm-libraries/target/
arbitrator/wasm-libraries/soft-float/SoftFloat/build
target/etc/initial-machine-cache/
key: ${{ runner.os }}-cargo-${{ steps.install-rust.outputs.rustc_hash }}-min-${{ hashFiles('arbitrator/Cargo.lock') }}
restore-keys: ${{ runner.os }}-cargo-${{ steps.install-rust.outputs.rustc_hash }}-

- name: Cache wabt build
id: cache-wabt
uses: actions/cache@v3
with:
path: ~/wabt-prefix
key: ${{ runner.os }}-wabt-codeql-${{ env.WABT_VERSION }}

- name: Cache cbrotli
uses: actions/cache@v3
id: cache-cbrotli
with:
path: |
target/include/brotli/
target/lib-wasm/
target/lib/libbrotlicommon-static.a
target/lib/libbrotlienc-static.a
target/lib/libbrotlidec-static.a
key: ${{ runner.os }}-brotli-3a-${{ hashFiles('scripts/build-brotli.sh') }}-${{ hashFiles('.github/workflows/arbitrator-ci.yaml') }}
restore-keys: ${{ runner.os }}-brotli-

- name: Build cbrotli-local
if: steps.cache-cbrotli.outputs.cache-hit != 'true'
run: ./scripts/build-brotli.sh -l

- name: Cache Build Products
uses: actions/cache@v3
with:
path: |
~/go/pkg/mod
~/.cache/go-build
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: ${{ runner.os }}-go-

- name: Build all lint dependencies
run: make -j build-node-deps

# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun

# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.

# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true

- name: Install dependencies
run: sudo apt update && sudo apt install -y wabt

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.

# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
config-file: ./.github/codeql/codeql-config.yml

- name: Setup nodejs
uses: actions/setup-node@v3
with:
node-version: "18"
cache: "yarn"
cache-dependency-path: "**/yarn.lock"

- name: Install go
uses: actions/setup-go@v4
with:
go-version: 1.21.x

- name: Install rust stable
uses: dtolnay/rust-toolchain@stable

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1

- name: Cache Rust Build Products
uses: actions/cache@v3
with:
path: |
~/.cargo/registry/
~/.cargo/git/
arbitrator/target/
arbitrator/wasm-libraries/target/
arbitrator/wasm-libraries/soft-float/SoftFloat/build
target/etc/initial-machine-cache/
key: ${{ runner.os }}-cargo-${{ steps.install-rust.outputs.rustc_hash }}-min-${{ hashFiles('arbitrator/Cargo.lock') }}
restore-keys: ${{ runner.os }}-cargo-${{ steps.install-rust.outputs.rustc_hash }}-

- name: Cache wabt build
id: cache-wabt
uses: actions/cache@v3
with:
path: ~/wabt-prefix
key: ${{ runner.os }}-wabt-codeql-${{ env.WABT_VERSION }}

- name: Cache cbrotli
uses: actions/cache@v3
id: cache-cbrotli
with:
path: |
target/include/brotli/
target/lib-wasm/
target/lib/libbrotlicommon-static.a
target/lib/libbrotlienc-static.a
target/lib/libbrotlidec-static.a
key: ${{ runner.os }}-brotli-3a-${{ hashFiles('scripts/build-brotli.sh') }}-${{ hashFiles('.github/workflows/arbitrator-ci.yaml') }}
restore-keys: ${{ runner.os }}-brotli-

- name: Build cbrotli-local
if: steps.cache-cbrotli.outputs.cache-hit != 'true'
run: ./scripts/build-brotli.sh -l

- name: Cache Build Products
uses: actions/cache@v3
with:
path: |
~/go/pkg/mod
~/.cache/go-build
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: ${{ runner.os }}-go-

- name: Build all lint dependencies
run: make -j build-node-deps

# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun

# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.

# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
2 changes: 1 addition & 1 deletion .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ on:
jobs:
docker:
name: Docker build
runs-on: ubuntu-8
runs-on: ubuntu-latest
services:
# local registery
registry:
Expand Down
Loading
Loading