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

feat: brioche configuation for devnet #108

Merged
merged 18 commits into from
Jun 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
bcba70e
feat: add testable private chain for brioche
egonspace May 21, 2024
680bed0
Merge branch 'feat/brioche' of https://github.com/wemixarchive/go-wem…
egonspace May 21, 2024
4203b33
Merge branch 'feat/brioche' of https://github.com/wemixarchive/go-wem…
egonspace May 28, 2024
b8182a9
fix: apply devnet config
egonspace May 28, 2024
97764d5
Merge branch 'feat/brioche-api' of https://github.com/wemixarchive/go…
egonspace May 28, 2024
179e493
Merge branch 'feat/brioche' of https://github.com/wemixarchive/go-wem…
egonspace May 28, 2024
6c66699
Merge branch 'feat/brioche-api' of https://github.com/wemixarchive/go…
egonspace May 28, 2024
2d63519
Merge branch 'feat/brioche' of https://github.com/wemixarchive/go-wem…
egonspace May 29, 2024
2ef3140
Merge branch 'feat/brioche-api' of https://github.com/wemixarchive/go…
egonspace May 29, 2024
536e596
ci: add ci for devnet
egonspace May 30, 2024
f3e362a
ci: add ci for devnet (#91)
egonspace May 30, 2024
e8c35c2
Merge branch 'dev' of https://github.com/wemixarchive/go-wemix into d…
egonspace May 30, 2024
7f37bf0
Merge branch 'dev' of https://github.com/wemixarchive/go-wemix into d…
egonspace May 31, 2024
f671e8e
Merge branch 'dev' of https://github.com/wemixarchive/go-wemix into d…
egonspace Jun 4, 2024
d3d1ba4
fix: remove local test
egonspace Jun 4, 2024
61ec9ac
Merge branch 'dev' of https://github.com/wemixarchive/go-wemix into d…
egonspace Jun 4, 2024
40910c4
merge: dev into devnet (#92)
egonspace Jun 10, 2024
f6f95ae
Merge branch 'devnet' of https://github.com/wemixarchive/go-wemix int…
egonspace Jun 10, 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
60 changes: 60 additions & 0 deletions .github/workflows/devnet-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: devnet-ci

on:
pull_request:
branches:
- devnet

jobs:
build_test:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.19

- name: Build Go-WEMIX
run: make gwemix.tar.gz
- name: Check Build
run: ls -al build/gwemix.tar.gz

lint_test:
strategy:
fail-fast: false
matrix:
version: [1.17, 1.18, 1.19]
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: ${{ matrix.version }}

- name: Check Lint
run: make lint

unit_test:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.19

- name: Check golang Test Cases
run: |
unset ANDROID_HOME
make test
7 changes: 6 additions & 1 deletion core/genesis.go
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,10 @@ func SetupGenesisBlockWithOverride(db ethdb.Database, genesis *Genesis, override
// chain config as that would be AllProtocolChanges (applying any new fork
// on top of an existing private network genesis block). In that case, only
// apply the overrides.
if genesis == nil && !(stored == params.MainnetGenesisHash || stored == params.WemixMainnetGenesisHash) {
if genesis == nil &&
!(stored == params.MainnetGenesisHash ||
stored == params.WemixMainnetGenesisHash ||
stored == params.DevnetGenesisHash) {
newcfg = storedcfg
if overrideArrowGlacier != nil {
newcfg.ArrowGlacierBlock = overrideArrowGlacier
Expand All @@ -327,6 +330,8 @@ func SetupGenesisBlockWithOverride(db ethdb.Database, genesis *Genesis, override

func (g *Genesis) configOrDefault(ghash common.Hash) *params.ChainConfig {
switch {
case ghash == params.DevnetGenesisHash:
return params.WemixDevnetChainConfig
case ghash == params.WemixMainnetGenesisHash:
return params.WemixMainnetChainConfig
case ghash == params.WemixTestnetGenesisHash:
Expand Down
30 changes: 30 additions & 0 deletions params/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ var (
RinkebyGenesisHash = common.HexToHash("0x6341fd3daf94b748c72ced5a5b26028f2474f5f00d824504e4fa37a75767e177")
GoerliGenesisHash = common.HexToHash("0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a")
KilnGenesisHash = common.HexToHash("0x51c7fe41be669f69c45c33a56982cbde405313342d9e2b00d7c91a7b284dd4f8")
DevnetGenesisHash = common.HexToHash("0x45ef4029e520fff2763b31821da9bf761ca73f243bb8e912f4d3004ce3598151")
)

// TrustedCheckpoints associates each known checkpoint with the genesis hash of
Expand Down Expand Up @@ -201,6 +202,35 @@ var (
},
}

WemixDevnetChainConfig = &ChainConfig{
ChainID: big.NewInt(1113),
HomesteadBlock: big.NewInt(0),
DAOForkBlock: big.NewInt(0),
DAOForkSupport: true,
EIP150Block: big.NewInt(0),
EIP155Block: big.NewInt(0),
EIP158Block: big.NewInt(0),
ByzantiumBlock: big.NewInt(0),
ConstantinopleBlock: big.NewInt(0),
PetersburgBlock: big.NewInt(0),
IstanbulBlock: big.NewInt(0),
MuirGlacierBlock: big.NewInt(0),
BerlinBlock: big.NewInt(0),
LondonBlock: big.NewInt(0),
PangyoBlock: big.NewInt(0),
ApplepieBlock: big.NewInt(0),
BriocheBlock: big.NewInt(607_147), // target date: 2024-05-29 16:00:00 (GMT+09)
Ethash: new(EthashConfig),
Brioche: &BriocheConfig{
BlockReward: big.NewInt(1e18),
FirstHalvingBlock: big.NewInt(607_147),
HalvingPeriod: big.NewInt(63_115_200),
FinishRewardBlock: big.NewInt(2_412_358_747), // target date: 2100-11-01 11:00:00 (GMT+09)
HalvingTimes: 16,
HalvingRate: 50,
},
}

// SepoliaChainConfig contains the chain parameters to run a node on the Sepolia test network.
SepoliaChainConfig = &ChainConfig{
ChainID: big.NewInt(11155111),
Expand Down
Loading