Skip to content

Commit

Permalink
Chore: Add forkdiff gh-page (#14)
Browse files Browse the repository at this point in the history
### Description
we need a static webpage to show changes made to astria-geth fork, this
should be used both internally and externally.
using a [forkdiff](https://github.com/protolambda/forkdiff) tool to
create a static webpage.

### Changes
add a fork.yaml file structs the changes view and define the commits to
compare with
pages.yaml workflow deploys to gh-pages

Currently deploying on PR for testing.
  • Loading branch information
quasystaty1 authored and bharath-123 committed May 29, 2024
1 parent 92315c3 commit cd985cd
Show file tree
Hide file tree
Showing 2 changed files with 137 additions and 0 deletions.
41 changes: 41 additions & 0 deletions .github/workflows/pages.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Build and publish forkdiff github-pages
permissions:
contents: write
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1000 # make sure to fetch the old commit we diff against

- name: Build forkdiff
uses: "docker://protolambda/forkdiff:latest"
with:
args: -repo=./ -fork=./fork.yaml -out=./index.html

- name: Build pages
run: |
mkdir -p ./tmp/pages
mv ./index.html ./tmp/pages/index.html
touch ./tmp/pages/.nojekyll
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
# Build output to publish to the `gh-pages` branch:
publish_dir: ./tmp/pages
# The following lines assign commit authorship to the official
# GH-Actions bot for deploys to `gh-pages` branch:
# https://github.com/actions/checkout/issues/13#issuecomment-724415212
# The GH actions bot is used by default if you didn't specify the two fields.
# You can swap them out with your own user credentials.
user_name: github-actions[bot]
user_email: 41898282+github-actions[bot]@users.noreply.github.com

96 changes: 96 additions & 0 deletions fork.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
title: "astria-geth - go-ethereum fork diff overview"
footer: |
Fork-diff overview of [`astria-geth`](https://github.com/astriaorg/astria-geth), a fork of [`go-ethereum`](https://github.com/ethereum/go-ethereum).
base:
name: go-ethereum
url: https://github.com/ethereum/go-ethereum
hash: 916d6a441a866cb618ae826c220866de118899f7
fork:
name: astria-geth
url: https://github.com/astriaorg/astria-geth
ref: refs/heads/main
def:
title: "astria-geth"
description: |
This is an overview of the changes in [`astria-geth`](https://github.com/astriaorg/astria-geth),
a fork of [`go-ethereum`](https://github.com/ethereum/go-ethereum), part of the Astria-stack.
The Astria-stack architecture is modular, following the Consensus/Execution split of post-Merge Ethereum L1:
- [`astria-geth`](https://github.com/astriaorg/astria-geth) implements the Execution-Layer, with **minimal changes** for a secure Ethereum-equivalent application environment.
Related [astria-stack specifications](https://github.com/astriaorg/astria/tree/main/specs):
sub:
- title: "Core modifications"
sub:
- title: "Execution API"
description: |
The execution implements the [execution apiֿ](https://github.com/astriaorg/astria/blob/main/specs/execution-api.md) of the shared sequencer.
Its procedures will be called from the [conductor](https://github.com/astriaorg/astria/blob/main/specs/conductor.md). It is responsible
for immediately executing lists of ordered transactions that come from the shared sequencer.
globs:
- "grpc/execution/*"
- "grpc/*"
- title: "Tx-pool"
description: |
Transactions ordering as set by the shared sequencer
globs:
- "core/txpool/blobpool/*"
- "core/txpool/*"
- "core/txpool/legacypool/*"
- title: "State-transition modifications"
description: ""
sub:
- title: "Deposit Transaction type"
description: |
`Deposit` transaction type enable changes to the rollup based on sequencer layer events
globs:
- "core/types/deposit_tx.go"
- "core/types/transaction.go"
- "core/state_transition.go"
- "core/types/receipt.go"

- title: "Block-building modifications"
description: |
The block-building code implements changes to support shared sequencer transactions ordering.
Transactions are now being fethced from the `TxPool` based on the shared sequencer.
globs:
- "miner/*"
- title: "Node modifications"
description: Changes to the node configuration and services.
sub:
- title: Node config
globs:
- "node/config.go"
- "node/defaults.go"
- "node/grpcstack.go"
- "node/node.go"
- title: "CLI"
description: |
CLI changes to support grpc server.
globs:
- "cmd/utils/flags.go"
- "cmd/geth/main.go"
- "internal/flags/categories.go"
- "cmd/geth/config.go"
- title: "Chain Configuration"
sub:
- title: "Chain config"
description: |
Configuration changes for integrating the shared seuqnecer
globs:
- "params/config.go"
- "params/protocol_params.go"
- "core/genesis.go"
- "genesis.json"
- "core/blockchain.go"
- "eth/backend.go"

# ignored globally, does not count towards line count
ignore:
- ".circleci/*"
- "*.sum"
- "go.mod"
- "fork.yaml"
- ".github/*"
- ".github/workflows/*"

0 comments on commit cd985cd

Please sign in to comment.