core, params: add kiln flag (#24548)
This commit is contained in:
		
							parent
							
								
									4f4622bc8b
								
							
						
					
					
						commit
						667e1c038e
					
				| @ -148,6 +148,7 @@ var ( | ||||
| 		utils.SepoliaFlag, | ||||
| 		utils.RinkebyFlag, | ||||
| 		utils.GoerliFlag, | ||||
| 		utils.KilnFlag, | ||||
| 		utils.VMEnableDebugFlag, | ||||
| 		utils.NetworkIdFlag, | ||||
| 		utils.EthStatsURLFlag, | ||||
|  | ||||
| @ -46,6 +46,7 @@ var AppHelpFlagGroups = []flags.FlagGroup{ | ||||
| 			utils.RinkebyFlag, | ||||
| 			utils.RopstenFlag, | ||||
| 			utils.SepoliaFlag, | ||||
| 			utils.KilnFlag, | ||||
| 			utils.SyncModeFlag, | ||||
| 			utils.ExitWhenSyncedFlag, | ||||
| 			utils.GCModeFlag, | ||||
|  | ||||
| @ -161,6 +161,10 @@ var ( | ||||
| 		Name:  "sepolia", | ||||
| 		Usage: "Sepolia network: pre-configured proof-of-work test network", | ||||
| 	} | ||||
| 	KilnFlag = cli.BoolFlag{ | ||||
| 		Name:  "kiln", | ||||
| 		Usage: "Kiln network: pre-configured proof-of-work to proof-of-stake test network", | ||||
| 	} | ||||
| 	DeveloperFlag = cli.BoolFlag{ | ||||
| 		Name:  "dev", | ||||
| 		Usage: "Ephemeral proof-of-authority network with a pre-funded developer account, mining enabled", | ||||
| @ -839,6 +843,9 @@ func MakeDataDir(ctx *cli.Context) string { | ||||
| 		if ctx.GlobalBool(SepoliaFlag.Name) { | ||||
| 			return filepath.Join(path, "sepolia") | ||||
| 		} | ||||
| 		if ctx.GlobalBool(KilnFlag.Name) { | ||||
| 			return filepath.Join(path, "kiln") | ||||
| 		} | ||||
| 		return path | ||||
| 	} | ||||
| 	Fatalf("Cannot determine default data directory, please set manually (--datadir)") | ||||
| @ -893,6 +900,8 @@ func setBootstrapNodes(ctx *cli.Context, cfg *p2p.Config) { | ||||
| 		urls = params.RinkebyBootnodes | ||||
| 	case ctx.GlobalBool(GoerliFlag.Name): | ||||
| 		urls = params.GoerliBootnodes | ||||
| 	case ctx.GlobalBool(KilnFlag.Name): | ||||
| 		urls = params.KilnBootnodes | ||||
| 	case cfg.BootstrapNodes != nil: | ||||
| 		return // already set, don't apply defaults.
 | ||||
| 	} | ||||
| @ -1343,6 +1352,8 @@ func setDataDir(ctx *cli.Context, cfg *node.Config) { | ||||
| 		cfg.DataDir = filepath.Join(node.DefaultDataDir(), "goerli") | ||||
| 	case ctx.GlobalBool(SepoliaFlag.Name) && cfg.DataDir == node.DefaultDataDir(): | ||||
| 		cfg.DataDir = filepath.Join(node.DefaultDataDir(), "sepolia") | ||||
| 	case ctx.GlobalBool(KilnFlag.Name) && cfg.DataDir == node.DefaultDataDir(): | ||||
| 		cfg.DataDir = filepath.Join(node.DefaultDataDir(), "kiln") | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| @ -1535,7 +1546,7 @@ func CheckExclusive(ctx *cli.Context, args ...interface{}) { | ||||
| // SetEthConfig applies eth-related command line flags to the config.
 | ||||
| func SetEthConfig(ctx *cli.Context, stack *node.Node, cfg *ethconfig.Config) { | ||||
| 	// Avoid conflicting network flags
 | ||||
| 	CheckExclusive(ctx, MainnetFlag, DeveloperFlag, RopstenFlag, RinkebyFlag, GoerliFlag, SepoliaFlag) | ||||
| 	CheckExclusive(ctx, MainnetFlag, DeveloperFlag, RopstenFlag, RinkebyFlag, GoerliFlag, SepoliaFlag, KilnFlag) | ||||
| 	CheckExclusive(ctx, LightServeFlag, SyncModeFlag, "light") | ||||
| 	CheckExclusive(ctx, DeveloperFlag, ExternalSignerFlag) // Can't use both ephemeral unlocked and external signer
 | ||||
| 	if ctx.GlobalString(GCModeFlag.Name) == "archive" && ctx.GlobalUint64(TxLookupLimitFlag.Name) != 0 { | ||||
| @ -1697,6 +1708,12 @@ func SetEthConfig(ctx *cli.Context, stack *node.Node, cfg *ethconfig.Config) { | ||||
| 		} | ||||
| 		cfg.Genesis = core.DefaultGoerliGenesisBlock() | ||||
| 		SetDNSDiscoveryDefaults(cfg, params.GoerliGenesisHash) | ||||
| 	case ctx.GlobalBool(KilnFlag.Name): | ||||
| 		if !ctx.GlobalIsSet(NetworkIdFlag.Name) { | ||||
| 			cfg.NetworkId = 1337802 | ||||
| 		} | ||||
| 		cfg.Genesis = core.DefaultKilnGenesisBlock() | ||||
| 		SetDNSDiscoveryDefaults(cfg, params.KilnGenesisHash) | ||||
| 	case ctx.GlobalBool(DeveloperFlag.Name): | ||||
| 		if !ctx.GlobalIsSet(NetworkIdFlag.Name) { | ||||
| 			cfg.NetworkId = 1337 | ||||
| @ -1935,6 +1952,8 @@ func MakeGenesis(ctx *cli.Context) *core.Genesis { | ||||
| 		genesis = core.DefaultRinkebyGenesisBlock() | ||||
| 	case ctx.GlobalBool(GoerliFlag.Name): | ||||
| 		genesis = core.DefaultGoerliGenesisBlock() | ||||
| 	case ctx.GlobalBool(KilnFlag.Name): | ||||
| 		genesis = core.DefaultKilnGenesisBlock() | ||||
| 	case ctx.GlobalBool(DeveloperFlag.Name): | ||||
| 		Fatalf("Developer chains are ephemeral") | ||||
| 	} | ||||
|  | ||||
| @ -254,6 +254,8 @@ func (g *Genesis) configOrDefault(ghash common.Hash) *params.ChainConfig { | ||||
| 		return params.RinkebyChainConfig | ||||
| 	case ghash == params.GoerliGenesisHash: | ||||
| 		return params.GoerliChainConfig | ||||
| 	case ghash == params.KilnGenesisHash: | ||||
| 		return DefaultKilnGenesisBlock().Config | ||||
| 	default: | ||||
| 		return params.AllEthashProtocolChanges | ||||
| 	} | ||||
| @ -419,6 +421,15 @@ func DefaultSepoliaGenesisBlock() *Genesis { | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func DefaultKilnGenesisBlock() *Genesis { | ||||
| 	g := new(Genesis) | ||||
| 	reader := strings.NewReader(KilnAllocData) | ||||
| 	if err := json.NewDecoder(reader).Decode(g); err != nil { | ||||
| 		panic(err) | ||||
| 	} | ||||
| 	return g | ||||
| } | ||||
| 
 | ||||
| // DeveloperGenesisBlock returns the 'geth --dev' genesis block.
 | ||||
| func DeveloperGenesisBlock(period uint64, gasLimit uint64, faucet common.Address) *Genesis { | ||||
| 	// Override the default period to the user requested one
 | ||||
|  | ||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @ -76,6 +76,13 @@ var GoerliBootnodes = []string{ | ||||
| 	"enode://a59e33ccd2b3e52d578f1fbd70c6f9babda2650f0760d6ff3b37742fdcdfdb3defba5d56d315b40c46b70198c7621e63ffa3f987389c7118634b0fefbbdfa7fd@51.15.119.157:40303", | ||||
| } | ||||
| 
 | ||||
| var KilnBootnodes = []string{ | ||||
| 	"enode://c354db99124f0faf677ff0e75c3cbbd568b2febc186af664e0c51ac435609badedc67a18a63adb64dacc1780a28dcefebfc29b83fd1a3f4aa3c0eb161364cf94@164.92.130.5:30303", | ||||
| 	"enode://d41af1662434cad0a88fe3c7c92375ec5719f4516ab6d8cb9695e0e2e815382c767038e72c224e04040885157da47422f756c040a9072676c6e35c5b1a383cce@138.68.66.103:30303", | ||||
| 	"enode://91a745c3fb069f6b99cad10b75c463d527711b106b622756e9ef9f12d2631b6cb885f831d1c8731b9bc7177cae5e1ea1f1be087f86d7d30b590a91f22bc041b0@165.232.180.230:30303", | ||||
| 	"enode://b74bd2e8a9f0c53f0c93bcce80818f2f19439fd807af5c7fbc3efb10130c6ee08be8f3aaec7dc0a057ad7b2a809c8f34dc62431e9b6954b07a6548cc59867884@164.92.140.200:30303", | ||||
| } | ||||
| 
 | ||||
| var V5Bootnodes = []string{ | ||||
| 	// Teku team's bootnode
 | ||||
| 	"enr:-KG4QOtcP9X1FbIMOe17QNMKqDxCpm14jcX5tiOE4_TyMrFqbmhPZHK_ZPG2Gxb1GE2xdtodOfx9-cgvNtxnRyHEmC0ghGV0aDKQ9aX9QgAAAAD__________4JpZIJ2NIJpcIQDE8KdiXNlY3AyNTZrMaEDhpehBDbZjM_L9ek699Y7vhUJ-eAdMyQW_Fil522Y0fODdGNwgiMog3VkcIIjKA", | ||||
|  | ||||
| @ -32,6 +32,7 @@ var ( | ||||
| 	SepoliaGenesisHash = common.HexToHash("0x25a5cc106eea7138acab33231d7160d69cb777ee0c2c553fcddf5138993e6dd9") | ||||
| 	RinkebyGenesisHash = common.HexToHash("0x6341fd3daf94b748c72ced5a5b26028f2474f5f00d824504e4fa37a75767e177") | ||||
| 	GoerliGenesisHash  = common.HexToHash("0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a") | ||||
| 	KilnGenesisHash    = common.HexToHash("0x51c7fe41be669f69c45c33a56982cbde405313342d9e2b00d7c91a7b284dd4f8") | ||||
| ) | ||||
| 
 | ||||
| // TrustedCheckpoints associates each known checkpoint with the genesis hash of
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user