forked from succinctlabs/sp1-helios
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: cleanup + docs (succinctlabs#17)
* feat: mega cleanup * add * add * add * add * Add * clean * add
- Loading branch information
1 parent
d7133af
commit dbddea9
Showing
20 changed files
with
406 additions
and
166 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
# Documentation and mdbook related jobs. | ||
# Reference: https://github.com/paradigmxyz/reth/blob/main/.github/workflows/book.yml | ||
|
||
name: book | ||
|
||
on: | ||
push: | ||
branches: [main] | ||
pull_request: | ||
branches: [main] | ||
paths: | ||
- "book/**" | ||
merge_group: | ||
|
||
jobs: | ||
lint: | ||
runs-on: ubuntu-latest | ||
name: lint | ||
timeout-minutes: 60 | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Install mdbook-linkcheck | ||
run: | | ||
mkdir mdbook-linkcheck | ||
curl -sSL -o mdbook-linkcheck.zip https://github.com/Michael-F-Bryan/mdbook-linkcheck/releases/latest/download/mdbook-linkcheck.x86_64-unknown-linux-gnu.zip | ||
unzip mdbook-linkcheck.zip -d ./mdbook-linkcheck | ||
chmod +x $(pwd)/mdbook-linkcheck/mdbook-linkcheck | ||
echo $(pwd)/mdbook-linkcheck >> $GITHUB_PATH | ||
- name: Run linkcheck | ||
run: mdbook-linkcheck --standalone | ||
|
||
build: | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 60 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: dtolnay/rust-toolchain@nightly | ||
- name: Install mdbook | ||
run: | | ||
mkdir mdbook | ||
curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.14/mdbook-v0.4.14-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=./mdbook | ||
echo $(pwd)/mdbook >> $GITHUB_PATH | ||
- name: Install mdbook-template | ||
run: | | ||
mkdir mdbook-template | ||
curl -sSL https://github.com/sgoudham/mdbook-template/releases/latest/download/mdbook-template-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=./mdbook-template | ||
echo $(pwd)/mdbook-template >> $GITHUB_PATH | ||
- uses: Swatinem/rust-cache@v2 | ||
with: | ||
cache-on-failure: true | ||
|
||
- name: Build book | ||
run: mdbook build | ||
|
||
- name: Archive artifact | ||
shell: sh | ||
run: | | ||
chmod -c -R +rX "target/book" | | ||
while read line; do | ||
echo "::warning title=Invalid file permissions automatically fixed::$line" | ||
done | ||
tar \ | ||
--dereference --hard-dereference \ | ||
--directory "target/book" \ | ||
-cvf "$RUNNER_TEMP/artifact.tar" \ | ||
--exclude=.git \ | ||
--exclude=.github \ | ||
. | ||
- name: Upload artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: github-pages | ||
path: ${{ runner.temp }}/artifact.tar | ||
retention-days: 1 | ||
if-no-files-found: error | ||
|
||
deploy: | ||
# Only deploy if a push to main | ||
if: github.ref_name == 'main' && github.event_name == 'push' | ||
runs-on: ubuntu-latest | ||
needs: [lint, build] | ||
|
||
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment | ||
permissions: | ||
pages: write | ||
id-token: write | ||
|
||
environment: | ||
name: github-pages | ||
url: ${{ steps.deployment.outputs.page_url }} | ||
|
||
timeout-minutes: 60 | ||
|
||
steps: | ||
- name: Deploy to GitHub Pages | ||
id: deployment | ||
uses: actions/deploy-pages@v4 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
name: CI | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- "**" | ||
push: | ||
branches: | ||
- main | ||
workflow_dispatch: | ||
|
||
env: | ||
FOUNDRY_PROFILE: ci | ||
|
||
jobs: | ||
check: | ||
strategy: | ||
fail-fast: true | ||
|
||
name: Foundry project | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: recursive | ||
|
||
- name: Install Foundry | ||
uses: foundry-rs/foundry-toolchain@v1 | ||
with: | ||
version: nightly | ||
|
||
- name: Show Forge version | ||
working-directory: contracts/ | ||
run: | | ||
forge --version | ||
- name: Run Forge fmt | ||
working-directory: contracts/ | ||
run: | | ||
forge fmt --check src/ test/ script/ | ||
id: fmt | ||
|
||
- name: Run Forge build | ||
working-directory: contracts/ | ||
run: | | ||
forge build --sizes | ||
id: build | ||
|
||
# - name: Run Forge tests | ||
# working-directory: contracts/ | ||
# run: | | ||
# forge test -vvv | ||
# id: test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
[book] | ||
authors = ["Ratan Kaliani"] | ||
language = "en" | ||
multilingual = false | ||
src = "book" | ||
title = "SP1 Helios" | ||
description = "A book on all things SP1 Helios" | ||
|
||
[build] | ||
build-dir = "target/book" | ||
|
||
[preprocessor.template] | ||
before = ["links"] | ||
|
||
[preprocessor.index] | ||
|
||
[preprocessor.links] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# Summary | ||
|
||
- [Introduction](./introduction.md) | ||
- [Deployment](./deployment.md) | ||
- [Components](./components.md) | ||
- [FAQ](./faq.md) | ||
- [Reproducible Builds](./reproducible-builds.md) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
# Components | ||
|
||
An SP1 Helios implementation has a few key components: | ||
- An `SP1Helios` contract. Contains the logic for verifying SP1 Helios proofs, storing the latest data from the Ethereum beacon chain, including the headers, execution state roots and sync committees. | ||
- An `SP1Verifier` contract. Verifies arbitrary SP1 programs. Most chains will have canonical deployments | ||
upon SP1's mainnet launch. Until then, users can deploy their own `SP1Verifier` contracts to verify | ||
SP1 programs on their chain. The SP1 Helios implementation will use the `SP1Verifier` contract to verify | ||
the proofs of the SP1 Helios program. | ||
- The SP1 Helios program. An SP1 program that verifies the consensus of a source chain in the execution environment of a destination chain using the `helios` library. | ||
- The operator. A Rust script that fetches the latest data from a deployed `SP1Helios` contract and an Ethereum beacon chain, determines the block to request, requests for/generates a proof, and relays the proof to the `SP1Helios` contract. |
Oops, something went wrong.