From 296b4b3fe11355f6ed74d4a63e806497559d9c0f Mon Sep 17 00:00:00 2001 From: Tristan Allaire Date: Mon, 27 Nov 2023 08:46:07 +0100 Subject: [PATCH 01/19] Mavryk Protocol integration --- .gitmodules | 8 +-- README.md | 10 ++-- bootstrap_contracts/evm_bridge.json | 2 +- bootstrap_contracts/exchanger.json | 8 +-- index.ts | 2 +- networks/dailynet/faucet_values.yaml | 4 +- networks/dailynet/mavryk-k8s | 1 + networks/dailynet/tezos-k8s | 1 - networks/dailynet/values.yaml | 8 +-- networks/ghostnet/faucet_values.yaml | 4 +- networks/ghostnet/values.yaml | 58 ++++++++++---------- networks/hangzhounet/POSTMORTEM.md | 2 +- networks/hangzhounet/values.yaml | 44 +++++++-------- networks/jakartanet/faucet_values.yaml | 2 +- networks/jakartanet/values.yaml | 42 +++++++-------- networks/kathmandunet/faucet_values.yaml | 2 +- networks/kathmandunet/values.yaml | 56 +++++++++---------- networks/limanet/faucet_values.yaml | 2 +- networks/limanet/values.yaml | 68 ++++++++++++------------ networks/mumbainet/faucet_values.yaml | 2 +- networks/mumbainet/values.yaml | 46 ++++++++-------- networks/nairobinet/faucet_values.yaml | 4 +- networks/nairobinet/values.yaml | 38 ++++++------- networks/oxfordnet/faucet_values.yaml | 2 +- networks/oxfordnet/values.yaml | 38 ++++++------- networks/weeklynet/faucet_values.yaml | 4 +- networks/weeklynet/values.yaml | 38 ++++++------- teztnets_xyz_page/website/about.markdown | 2 +- 28 files changed, 249 insertions(+), 249 deletions(-) create mode 160000 networks/dailynet/mavryk-k8s delete mode 160000 networks/dailynet/tezos-k8s diff --git a/.gitmodules b/.gitmodules index c01d39bf..454eef53 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +1,4 @@ -[submodule "networks/dailynet/tezos-k8s"] - path = networks/dailynet/tezos-k8s - url = git@github.com:oxheadalpha/tezos-k8s.git - branch = bake_remotely +[submodule "dailynet/mavryk-k8s"] + path = networks/dailynet/mavryk-k8s + url = git@github.com:mavryk-network/mavryk-k8s.git + branch = mavryk-protocol-refactoring diff --git a/README.md b/README.md index 50b56237..4f1ef952 100644 --- a/README.md +++ b/README.md @@ -6,11 +6,11 @@ See [teztnets.com](https://teztnets.com) for the list of active Teztnets. ## Features -### Based on tezos-k8s +### Based on mavryk-k8s -[tezos-k8s](https://github.com/oxheadalpha/tezos-k8s) is a framework to deploy Tezos nodes or chains using Kubernetes and Helm. +[mavryk-k8s](https://github.com/mavryk-network/mavryk-k8s) is a framework to deploy Tezos nodes or chains using Kubernetes and Helm. -See the [tezos-k8s documentation](https://github.com/oxheadalpha/tezos-k8s/blob/master/README.md) +See the [mavryk-k8s documentation](https://github.com/mavryk-network/mavryk-k8s/blob/master/README.md) ### Faucet support @@ -50,7 +50,7 @@ Each Teztnet is defined within a subdirectory of the `/networks` directory in th - A Helm chart `values.yaml` file - Optionally, a Helm chart `faucet_values.yaml` file if deploying a faucet -- Optionally, a submodule of tezos-k8s (in case you need an unreleased or custom version of the tezos-k8s software) +- Optionally, a submodule of mavryk-k8s (in case you need an unreleased or custom version of the mavryk-k8s software) ### Helm chart values.yaml @@ -65,7 +65,7 @@ The Helm chart values.yaml lets you customize your chain in many ways: Look in any Teztnet directory's values.yaml file in [`/networks`](/networks) for reference as to how to configure your own Teztnet. -The [default Helm values.yaml](https://github.com/oxheadalpha/tezos-k8s/blob/master/charts/tezos/values.yaml) has details on every possible way to customize your teztnet. +The [default Helm values.yaml](https://github.com/mavryk-network/mavryk-k8s/blob/master/charts/tezos/values.yaml) has details on every possible way to customize your teztnet. ## Teztnets.com website diff --git a/bootstrap_contracts/evm_bridge.json b/bootstrap_contracts/evm_bridge.json index 39619ef3..b3371c5c 100644 --- a/bootstrap_contracts/evm_bridge.json +++ b/bootstrap_contracts/evm_bridge.json @@ -187,7 +187,7 @@ "prim": "PUSH", "args": [ { - "prim": "mutez" + "prim": "mumav" }, { "int": "0" diff --git a/bootstrap_contracts/exchanger.json b/bootstrap_contracts/exchanger.json index 945a3436..42665552 100644 --- a/bootstrap_contracts/exchanger.json +++ b/bootstrap_contracts/exchanger.json @@ -78,7 +78,7 @@ "prim": "PUSH", "args": [ { - "prim": "mutez" + "prim": "mumav" }, { "int": "0" @@ -192,7 +192,7 @@ "prim": "PUSH", "args": [ { - "prim": "mutez" + "prim": "mumav" }, { "int": "1" @@ -256,7 +256,7 @@ "prim": "PUSH", "args": [ { - "prim": "mutez" + "prim": "mumav" }, { "int": "1" @@ -345,7 +345,7 @@ "prim": "PUSH", "args": [ { - "prim": "mutez" + "prim": "mumav" }, { "int": "0" diff --git a/index.ts b/index.ts index aceb282a..b5ed7143 100644 --- a/index.ts +++ b/index.ts @@ -509,4 +509,4 @@ function createDomainRedirectIngress(srcDomain: string, destDomain: string): k8s createDomainRedirectIngress("faucet.ghostnet.teztnets.xyz", "faucet.ghostnet.teztnets.com"); createDomainRedirectIngress("faucet.oxfordnet.teztnets.xyz", "faucet.oxfordnet.teztnets.com"); createDomainRedirectIngress("faucet.nairobinet.teztnets.xyz", "faucet.nairobinet.teztnets.com"); -createDomainRedirectIngress("status.teztnets.xyz", "status.teztnets.com"); +createDomainRedirectIngress("status.teztnets.xyz", "status.teztnets.com"); \ No newline at end of file diff --git a/networks/dailynet/faucet_values.yaml b/networks/dailynet/faucet_values.yaml index 4b9bc2ba..edb0956e 100644 --- a/networks/dailynet/faucet_values.yaml +++ b/networks/dailynet/faucet_values.yaml @@ -13,12 +13,12 @@ config: network: name: # filled in by pulumi rpcUrl: # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ viewer: https://dailynet.tzstats.com # Value the server sets for the "Access-Control-Allow-Origin" header for CORS. authorizedHost: "" # filled in by pulumi -# RPC url for the faucet backend. Default value assumes tezos-k8s created an RPC +# RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. backendRpcUrl: http://tezos-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. diff --git a/networks/dailynet/mavryk-k8s b/networks/dailynet/mavryk-k8s new file mode 160000 index 00000000..34e657da --- /dev/null +++ b/networks/dailynet/mavryk-k8s @@ -0,0 +1 @@ +Subproject commit 34e657da77e528ac42e4a7a0b4733e922c48d08f diff --git a/networks/dailynet/tezos-k8s b/networks/dailynet/tezos-k8s deleted file mode 160000 index 84805c78..00000000 --- a/networks/dailynet/tezos-k8s +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 84805c78eac0d40cfe12bf11a8a8ea5c77ba91e3 diff --git a/networks/dailynet/values.yaml b/networks/dailynet/values.yaml index a67a2095..13b29181 100644 --- a/networks/dailynet/values.yaml +++ b/networks/dailynet/values.yaml @@ -1,5 +1,5 @@ tezos_k8s_images: - utils: ghcr.io/oxheadalpha/tezos-k8s-utils:bake_remotely + utils: ghcr.io/mavryk-network/mavryk-k8s-utils:6.25.0 signers: tezos-signer-0: sign_for_accounts: @@ -247,7 +247,7 @@ images: {} accounts: teztnetsbaker: - # tz1TnEtqDV9mZyts2pfMy6Jw1BTPs4LMjL8M + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "7500000000000" is_bootstrap_baker_account: true type: secret @@ -280,14 +280,14 @@ accounts: bootstrap_balance: "100000000000" oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "5000000000000000" is_bootstrap_baker_account: false type: public faucet: # faucet on teztnets.xyz platform - # tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj bootstrap_balance: "200000000000000" is_bootstrap_baker_account: false diff --git a/networks/ghostnet/faucet_values.yaml b/networks/ghostnet/faucet_values.yaml index ebc5e81e..8f090e54 100644 --- a/networks/ghostnet/faucet_values.yaml +++ b/networks/ghostnet/faucet_values.yaml @@ -11,12 +11,12 @@ config: network: name: # filled in by pulumi rpcUrl: # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ viewer: https://ghost.tzstats.com # Value the server sets for the "Access-Control-Allow-Origin" header for CORS. authorizedHost: "" # filled in by pulumi -# RPC url for the faucet backend. Default value assumes tezos-k8s created an RPC +# RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. backendRpcUrl: https://ghostnet.tezosrpc.midl.dev/ak-a9s8i7spjm3usb # If the backend requires CAPTCHA tokens to be submitted. diff --git a/networks/ghostnet/values.yaml b/networks/ghostnet/values.yaml index 0c8cbf5c..505f4eef 100644 --- a/networks/ghostnet/values.yaml +++ b/networks/ghostnet/values.yaml @@ -103,14 +103,14 @@ images: # We give: accounts: oxheadbaker: - # tz1foXHgRzdYdaLgX6XhpZGxbBv42LZ6ubvE + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm # edpkuYLienS3Xdt5c1vfRX1ibMxQuvfM67ByhJ9nmRYYKGAAoTq1UC bootstrap_balance: '1000000000000' is_bootstrap_baker_account: true type: secret # key injected by pulumi pirbo: - # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM type: public is_bootstrap_baker_account: true @@ -121,13 +121,13 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" saroupille: - # tz1QXAAasy8TciwfvDC4a7MWo1tm3K37uN9Y + # mv1CtdUBCLRpBziu4Xkuow3Xx2kjbhTieU5Z key: edpkvMBeXH4h8H97b8qfPkv2mA9TE6McfsffLGgG2Jg5nhUESaVt5J type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" mariano_ceibo: - # tz1T7bTfbw1PsDAKFfBN24ediaqgw8FTu3qd + # mv1FV4mFvJJkSUwYPykDFtLesbhfVWkicpCT key: edpkv9xYGRddWjy9XMVeUq5d7gxWm3eVgYarrpmNW1qVvvRpmJq76G type: public is_bootstrap_baker_account: true @@ -138,7 +138,7 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" coredump: - # tz1Wn7JnLVf7PpTbaLQNzmNaF9z9UudWHGBR + # mv1K9acNerxTy6EpieyEEb4bQAr83JABwCJ8 key: edpkttKzcNNCjanS2De2Nagnpg9Bk1SoNhxDC1hqCFvHHFjfeeBK1m type: public is_bootstrap_baker_account: true @@ -149,91 +149,91 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" baketzforme: - # tz1edUYGqBtteStneTGDBrQWTFmq9cnEELiW + # mv1Szwqs9ZCFDig1nmq4Rg6XcGdoi1F4e5SF key: edpkuEoVW7HM9ehiec9exPfHrsFkT1f3jV8JxFWQHP23VX6K5EnVtD type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" vincent_xtzmaster: - # tz1XMiZwHpHZ8a1AfwRWKfzLskJgZNyV8PHs + # mv1KjBsXcBauhqnPpFzMZVgN2mAf7mWCiWhJ key: edpkvaZQ6tt9XgJJTonjFpzwaqDV7RWUQMT7TmntBJ5yXmDsPb8T7L type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" daniel_jean: - # tz1RBECWBXv4tKcuDbxYmBguvdn8wzjrejHg + # mv1DYhW6VuDRTbQ8MvXQ11Nw5ee7WPF7KVaP key: edpkucJ7Nccy2wyaU4B2Ch4rxS4reiTfc7349pKtemcd4yLeXmbAwb type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" olivier_blockwatch: - # tz1cXeGHP8Urj2pQRwpAkCdPGbCdqFUPsQwU + # mv1Qu7ZshVnDJJbdaGP1z2KQRc4cPdwRAFNQ key: edpktqRmZsGN2WEyghfqrZvn8c7xmA1xs3vDta71CsCjtHiSRMkG1z type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs_2: - # tz1RuHDSj9P7mNNhfKxsyLGRDahTX5QD1DdP + # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" smartpy: - # tz1SMARcpWCydHsGgz4MRoK9NkbpBmmUAfNe + # mv1EidjD8sWLCZeVqJdCfd1AXmTnkAEe1dGF key: edpkuyuJirNU14hEma1u7f3Qhx7uHZxzuXDyvmjRwaAsFFFqYGkzHx type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" neoktalabs_julien: - # tz1RJ74UepJA9tigjoEeUEFajowzVB3QQaVx + # mv1DfaN4yBbWjAVut7oVi3wbtpoy3ZUAGDYF key: edpktnHv9X4PjoSHqzMGZf7oF6arxZbedxKTmEgcL6xS3XZ3TA1MUE type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" michael_kernaghan: - # tz1e42w8ZaGAbM3gucbBy8iRypdbnqUj7oWY + # mv1SRWEiswZXAcpv3wA3CxQT8qVaMDuwZNEq key: edpkuRkcStobJ569XFxmE6edyRQQzMmtf4ZnmPkTPfSQnt6P3Nym2V type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" mack_baise: - # tz1SHw5vBDYNgGdUPJi57kVrEb2kFue4Yxa4 + # mv1EfQPWVaqjFYQhXdGvMaBsPbtipJBp5cFF key: edpkvKJ9voHuSBi8TApVowCu7D8hQneXGWdEHuSEMDjQDyxD9h6PYk type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" richard_ayotte: - # tz1ituzNz9MGaMSL9dVDN7jE5SArCEWNmZbS + # mv1XGPHyJWed9dDZHx44bwRFET2pkd5hbPBV key: edpkuty8oXRwNH5zRLfGkTyL2ukMVhGiht3qG8VNU5beD4NgP8X3gw type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" fredcy: - # tz1KkJtLB9pMdLKNpVRNZw9zmysrxKmYcRGU + # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" functori: - # tz1funU3PjPsuXvmtXMgnAckY1s4pNT6V7WJ + # mv1UHFmdi6hEUoi12qvY1zJmh2j3Nm1Vt9Pg key: edpkv2fhuhS4947m64XexZw2vMvr7C4zYTBFweXuWVCLbmaSqpFaT3 type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" pierre_chambart: - # tz1QvBzVmzN7F37ay4ZX12Tm2VEUmEbXJus7 + # mv1DHfJ66MfTpJtp7P8NEr9nBW6TKd1sGPgY key: edpkvGiC27B2WJRC6AoFS8wwSC4rrhnTULWxq53PkoJjJSRSCvFwJn type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" mystery_baker_6: - # tz1dqPQn5HXNJ7yjcqBx2w6sozjPXTV1kpfh + # mv1SCriNPepisPkxm9koGknty1bN5qwhgtKs key: edpkupKuAv85MDjsfAEFeNMS4jHwkS1dT1dRajVwoYeSs6jEbwcTPm type: public is_bootstrap_baker_account: true @@ -255,13 +255,13 @@ accounts: bootstrap_balance: "1000000000000" oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "5000000000000000" is_bootstrap_baker_account: false type: public - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 type: public @@ -269,7 +269,7 @@ accounts: bootstrap_balance: "5000000000000000" bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx type: public is_bootstrap_baker_account: false @@ -277,13 +277,13 @@ accounts: julien: # julien.tesson@tezcore.com # for stress testing - # tz1PicoD6HTZFNkRpN84VFUvdpT7D6xoR2QD + # mv1C666oQekupeXexgguj5AwnqK5mVRTKek6 key: edpktnArvYkSArFUGiBN4cmDmor9qwyTFCbAKEMbeSdT3z563SdTXm type: public is_bootstrap_baker_account: false bootstrap_balance: "50000000000000" tf: - # tz3Q67aMz7gSMiQRcW729sXSfuMtkyAHYfqc + # mv3CTasxJUynvzBekpfsPhDTpvDsKMezU9Hd key: p2pk66gP3wq6k9QgNwAgaGLeXc3YFfrxgYdC7cdYuJWAHYBw4hExVHW type: public is_bootstrap_baker_account: true @@ -294,7 +294,7 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" german: - # tz1TGKSrZrBpND3PELJ43nVdyadoeiM1WMzb + # mv1FdnkStDVAwUpcNeruHcBf8bVnD6rvNSik key: edpkvG8RpyhnPi3ugWWvavsKwR79rb7iMvedeFNxBdyCvenTDZeC9n type: public is_bootstrap_baker_account: true @@ -310,13 +310,13 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" cryptodad: - # tz1cwuYcQi22C2SX9m1z78UyUzYKFztXgX7t + # mv1RKNrCj5KNmJDkJ5aqLxAze1QHpPQ9iotY key: edpktk3ywyYujAUpAfWZwtNn9xRpVYDvRCd3EPGNyry9y9txUrnxhp type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" sirneb: - # tz1LQ32syCNyGj6FdAuJfko42Wep87iYZk8k + # mv18mWLUHZgKqzsUmVU9uaV5BXWngW844izL key: edpkuqjXrnDW2HAGj62ggEAMUp7o4Pv7V2saqTrXomuBQmrwjexViX type: public is_bootstrap_baker_account: true diff --git a/networks/hangzhounet/POSTMORTEM.md b/networks/hangzhounet/POSTMORTEM.md index 1930bbc0..d4061af7 100644 --- a/networks/hangzhounet/POSTMORTEM.md +++ b/networks/hangzhounet/POSTMORTEM.md @@ -44,7 +44,7 @@ Baking bad maintains a faucet telegram bot. We should always top it up on every ``` Pub edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx -Addr tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc +Addr mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW ``` Note that the usdtznet fork of hangzhounet has it configured already. diff --git a/networks/hangzhounet/values.yaml b/networks/hangzhounet/values.yaml index 4454c478..74a60513 100644 --- a/networks/hangzhounet/values.yaml +++ b/networks/hangzhounet/values.yaml @@ -1,24 +1,24 @@ accounts: ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" smartpy: - # tz1SMARcpWCydHsGgz4MRoK9NkbpBmmUAfNe + # mv1EidjD8sWLCZeVqJdCfd1AXmTnkAEe1dGF key: edpkuyuJirNU14hEma1u7f3Qhx7uHZxzuXDyvmjRwaAsFFFqYGkzHx type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" tezosil: - # tz1VWasoyFGAWZt5K2qZRzP3cWzv3z7MMhP8 + # mv1Ht4BQHcZX5qfJTMQQfp54mXrtcNagwUAL key: edpkvQj8r3YigN6QFsDRaKQCoxDNhKK4whDUkFkw6Gom36d86uhEbv type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" pirbo: - # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM type: public is_bootstrap_baker_account: true @@ -29,7 +29,7 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" blockwatch: - # tz1cXeGHP8Urj2pQRwpAkCdPGbCdqFUPsQwU + # mv1Qu7ZshVnDJJbdaGP1z2KQRc4cPdwRAFNQ key: edpktqRmZsGN2WEyghfqrZvn8c7xmA1xs3vDta71CsCjtHiSRMkG1z type: public is_bootstrap_baker_account: true @@ -45,76 +45,76 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" utdrmac: - # tz1X9arq5VDQdeUmgsrz7C8CxWVzVAJFbGaB + # mv1KX4ARPrWmCvFzqCRqM1pE7XMy3YkWa6Mv key: edpkvWPKvk8A8tk97Sr8CbyKJLekuHYwQ5R2rJ3Qe23jvtewaRAdYp type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" primate: - # tz1S9Z6VAERuwQ1QQ6FqnREiT99ZB9wdGE9z + # mv1EX2Q5UbjGWfndYQph2EvjcA1XjYSGttGa key: edpkvM7PAJiTMTAeRB1W77U5jF17aCV1vkBoKPScs8vmAd56t2BE72 type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" N1029676: - # tz1N1W47vNFSBPqnWbUoAw65LFHzv2PGqS4x + # mv1ANyMiEjYnkfd1ev3eQkn6VG9yUQuprfNY key: edpkuZ6pf5esZLnVJ7XGZbfQ6s9yFsrGW49nhrRVrCZ6ghqRvGR1n5 type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" vincent_xtzmaster: - # tz1Kr7EBSj86kbQFgCSLKo8JtvFQvYEU4SuH + # mv18DaXmm6RTKsBUpX1BZcpL3w7PUvjKVPWA key: edpkuVw1DAAJ1bucCkNJ48e9L8Md8meXogKnMUp1Z6sey1NFhCxmvU type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" neoktalabs_julien: - # tz1gECNgGXb4vzsEhAvX6a72AsAGJiQS8DLf + # mv1UbfgGattRWGeTqVVNLPo3Kt2Es6wRKiGq key: edpkv99446esWVTgGSNsfeZCpeLYbq1e69tae3Fpw22GXcMHQeRSVg type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" coredump: - # tz1Wn7JnLVf7PpTbaLQNzmNaF9z9UudWHGBR + # mv1K9acNerxTy6EpieyEEb4bQAr83JABwCJ8 key: edpkttKzcNNCjanS2De2Nagnpg9Bk1SoNhxDC1hqCFvHHFjfeeBK1m type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" german: # german wants to be a baker, but not bootstrap - # tz1TGKSrZrBpND3PELJ43nVdyadoeiM1WMzb + # mv1FdnkStDVAwUpcNeruHcBf8bVnD6rvNSik key: edpktjm6QS9TwK6z9VX36Gucknwag94EzfCiu741i8q373W4V4y24R type: public is_bootstrap_baker_account: false bootstrap_balance: "2000000000000" ping: - # tz1MvCE9dczhoij2bd4sLL2AfVuMtWfFAoCN + # mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" saroupille: # françois wants to be a baker, but not bootstrap - # tz1QXAAasy8TciwfvDC4a7MWo1tm3K37uN9Y + # mv1CtdUBCLRpBziu4Xkuow3Xx2kjbhTieU5Z key: edpkvMBeXH4h8H97b8qfPkv2mA9TE6McfsffLGgG2Jg5nhUESaVt5J type: public is_bootstrap_baker_account: false bootstrap_balance: "2000000000000" saroupille2: # françois wants to be a baker, but not bootstrap - # tz1ZaHCkooCR63bSsQhLf8WLKj9sQG5RTthP + # mv1MwkWM8AVmfKNg1jGBtxCMUk1qxeaGtzCz key: edpkueS4HbicvgHo1Y9uPp6ZaZ8kgMJBJg2uB4Zm539Wf7qvJA5g1U type: public is_bootstrap_baker_account: false bootstrap_balance: "2000000000000" victor: - # tz1VicarbXb4uAY12pQBAREHUimYCxjfKbLa + # mv1J65tSuttRUSKEB8y2QEvJdjdWmMHGX1ct key: edpkujMeTHyUEK4gqCBXHDL9yXYiHnJJ4C58AHnmgAKyfFZXcBRngB type: public is_bootstrap_baker_account: true bootstrap_balance: "2000000000000" - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 type: public @@ -122,28 +122,28 @@ accounts: bootstrap_balance: "500000000000000" julien: # for stress testing - # tz1PicoD6HTZFNkRpN84VFUvdpT7D6xoR2QD + # mv1C666oQekupeXexgguj5AwnqK5mVRTKek6 key: edpktnArvYkSArFUGiBN4cmDmor9qwyTFCbAKEMbeSdT3z563SdTXm type: public is_bootstrap_baker_account: false bootstrap_balance: "500000000000000" bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx type: public is_bootstrap_baker_account: false bootstrap_balance: "500000000000000" oxheadbaker: # Oxhead Alpha's baker hosted in teztnets.xyz infra - # tz1foXHgRzdYdaLgX6XhpZGxbBv42LZ6ubvE + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "1000000000000" is_bootstrap_baker_account: true type: secret # key injected by pulumi oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "5000000000000000" is_bootstrap_baker_account: false diff --git a/networks/jakartanet/faucet_values.yaml b/networks/jakartanet/faucet_values.yaml index 0bce92bb..68265905 100644 --- a/networks/jakartanet/faucet_values.yaml +++ b/networks/jakartanet/faucet_values.yaml @@ -19,7 +19,7 @@ config: network: name: # filled in by pulumi rpcUrl: # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ viewer: https://jakarta.tzstats.com allowSendButton: false ingress: diff --git a/networks/jakartanet/values.yaml b/networks/jakartanet/values.yaml index 42e1e9dd..d7d10ce2 100644 --- a/networks/jakartanet/values.yaml +++ b/networks/jakartanet/values.yaml @@ -1,45 +1,45 @@ accounts: oxheadbaker: - # tz1foXHgRzdYdaLgX6XhpZGxbBv42LZ6ubvE + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "6700000000000" is_bootstrap_baker_account: true type: secret # key injected by pulumi oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "5000000000000000" is_bootstrap_baker_account: false type: public bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx type: public is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 type: public is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" rodrigo_quelhas: - # tz1ViTezAvcip62Hnu2WYBFEruWEurGPbFX4 + # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" pirbo: - # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" andrewk: - # tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9 + # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR type: public is_bootstrap_baker_account: true @@ -50,73 +50,73 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" baketzforme: - # tz1edUYGqBtteStneTGDBrQWTFmq9cnEELiW + # mv1Szwqs9ZCFDig1nmq4Rg6XcGdoi1F4e5SF key: edpkuEoVW7HM9ehiec9exPfHrsFkT1f3jV8JxFWQHP23VX6K5EnVtD type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs_2: - # tz1RuHDSj9P7mNNhfKxsyLGRDahTX5QD1DdP + # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" neoktalabs_julien: - # tz1iTzWpFhURP5EnWqAc9hUkuVe2b2tSAGXC + # mv1WqTpQa4mmxM21f9jTPXAn4WW19RRFkQ1L key: edpkuMRJewemWYJcfGUe3DLvemke3BZEitc3vVPbBFfnfwrynimuzY type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" michael_kernaghan: - # tz1XGwK6kkiJaq2ZEJYcWEj5Tc8bcV6pNHqV + # mv1KeQch581fA6onNd7Tk4R6cczaAsZ6wXAQ key: edpkufKizMFA2EfbLdrUPLGcwe9EHad4MwtgGeVPCBP2x5VZeKHqsh type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" fredcy: - # tz1KkJtLB9pMdLKNpVRNZw9zmysrxKmYcRGU + # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" baking_benjamins: - # tz1WzwobH5AFz3ea8n2UEramfYm1LY96hKJK + # mv1KNR7BbSTcZKRoH6bKUgGnpZcytveswrjt key: edpkuT6dsU7krrQFBnk7c72EnrycvFeKQoL63EoiMz1AdQJGR9ux57 type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" bake_buddy: - # tz1XpntqFmUYqAJw3qMxjGMR4m8rJUrvuMnp + # mv1LCGCRa8muQS6AC9voy63SDmzprsFSZTKV key: edpkvBxh9o7dFhrXGfxZKVuTTQHaS7YrorCaUndmLhqncU4ebKTxL9 type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" tf: - # tz3Q67aMz7gSMiQRcW729sXSfuMtkyAHYfqc + # mv3CTasxJUynvzBekpfsPhDTpvDsKMezU9Hd key: p2pk66gP3wq6k9QgNwAgaGLeXc3YFfrxgYdC7cdYuJWAHYBw4hExVHW type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" tf2: - # tz3RVmZur8VMGniUpSEmoA851J7nUSe6R9dH + # mv3DsEsWAVnhr4Vhxkod2yp6AJym2qA6hgYF key: p2pk67WaNJGC3VE4dhunamqKpMHXzxshf8REycJ5zvRf7HksaH3ir2F type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ping: - #tz1hm7NuCGNSKZQLQSawjUnehJcX8yCBcCAq + #mv1W8agVWdfntqBZYm9nyJUfrKUVhMjPqESC key: edpkty9Zdoxxc8BCCseTaeKtBpAVctrzVmzhkj3dkgmbFkWduu4SCB type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ping_bob: - #tz1MvCE9dczhoij2bd4sLL2AfVuMtWfFAoCN + #mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj type: public is_bootstrap_baker_account: true @@ -128,7 +128,7 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" pea: - # tz1KhTJVAkKc5zhN29VBA3uEijtCKy6kfNBP + # mv184vc5V7cxfGUbAU42PsbFskkAtMezJ89F key: edpku2vFTjfziPbbViVqfHxVsmvTe5NZoaq6939Ex3eZCaSxkRTfpu type: public is_bootstrap_baker_account: true diff --git a/networks/kathmandunet/faucet_values.yaml b/networks/kathmandunet/faucet_values.yaml index 3b6fd90a..b1d778a3 100644 --- a/networks/kathmandunet/faucet_values.yaml +++ b/networks/kathmandunet/faucet_values.yaml @@ -19,7 +19,7 @@ config: network: name: # filled in by pulumi rpcUrl: # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ viewer: https://kathmandu.tzstats.com allowSendButton: false ingress: diff --git a/networks/kathmandunet/values.yaml b/networks/kathmandunet/values.yaml index e9e0e98a..8eee08ec 100644 --- a/networks/kathmandunet/values.yaml +++ b/networks/kathmandunet/values.yaml @@ -1,45 +1,45 @@ accounts: oxheadbaker: - # tz1foXHgRzdYdaLgX6XhpZGxbBv42LZ6ubvE + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "9700000000000" is_bootstrap_baker_account: true type: secret # key injected by pulumi oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "5000000000000000" is_bootstrap_baker_account: false type: public bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx type: public is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 type: public is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" # rodrigo_quelhas: - # # tz1ViTezAvcip62Hnu2WYBFEruWEurGPbFX4 + # # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt # key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW # type: public # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" # pirbo: - # # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b # key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM # type: public # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" andrewk: - # tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9 + # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR type: public is_bootstrap_baker_account: true @@ -50,122 +50,122 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # baketzforme: - # # tz1edUYGqBtteStneTGDBrQWTFmq9cnEELiW + # # mv1Szwqs9ZCFDig1nmq4Rg6XcGdoi1F4e5SF # key: edpkuEoVW7HM9ehiec9exPfHrsFkT1f3jV8JxFWQHP23VX6K5EnVtD # type: public # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs_2: - # tz1RuHDSj9P7mNNhfKxsyLGRDahTX5QD1DdP + # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" neoktalabs_julien: - # tz1iTzWpFhURP5EnWqAc9hUkuVe2b2tSAGXC + # mv1WqTpQa4mmxM21f9jTPXAn4WW19RRFkQ1L key: edpkuMRJewemWYJcfGUe3DLvemke3BZEitc3vVPbBFfnfwrynimuzY type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" michael_kernaghan: - # tz1bQYMFieZHomNPjJvpp2g7PuhxRPDxpnFt + # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # fredcy: - # # tz1KkJtLB9pMdLKNpVRNZw9zmysrxKmYcRGU + # # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP # key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN # type: public # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" tf: - # tz3WXYtyDUNL91qfiCJtVUX746QpNv5i5ve5 + # mv3Ju2CZXqfgiHctrWsjjJD8D7GnwJXMkdvV key: p2pk66EmFoQS6b2mYLvCrwjXs7XT1A2znX26HcT9YMiGsyCHyDvsLaF type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ping: - #tz1hm7NuCGNSKZQLQSawjUnehJcX8yCBcCAq + #mv1W8agVWdfntqBZYm9nyJUfrKUVhMjPqESC key: edpkty9Zdoxxc8BCCseTaeKtBpAVctrzVmzhkj3dkgmbFkWduu4SCB type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ping_bob: - #tz1MvCE9dczhoij2bd4sLL2AfVuMtWfFAoCN + #mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" pasqualepinto: - # tz1hoyMUiJYYr4FRPMU8Z7WJzYkqgjygjaTy + # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # pea: - # # tz1KhTJVAkKc5zhN29VBA3uEijtCKy6kfNBP + # # mv184vc5V7cxfGUbAU42PsbFskkAtMezJ89F # key: edpku2vFTjfziPbbViVqfHxVsmvTe5NZoaq6939Ex3eZCaSxkRTfpu # type: public # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" rich_ayotte: # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # tz1ZjyxaKWVgmzvcc8X8z8pmndLENDzCvnPR + # mv1N7TGAdso3MGhqkT5zDxWnweCCvcUfnZwR key: edpkuEUkeQXP1PbudqRcSYYPsxFXxk1wUNCDSDptRGq1rRsGrRpSzf type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" bakebuddy_primate: - # tz1YgDUQV2eXm8pUWNz3S5aWP86iFzNp4jnD + # mv1M3gmzoPwtLQbhehYtfuGXY8xgpNraUd51 key: edpkteP1jsCpAzmQpseKjEJpo4WFa9TZcFvuxVftVFfZfqKNU9cWTv type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" bakebuddy_waveform: - # tz1QRZrEUNDiuYadYvJa5dJRCqry7hPvYMUh + # mv1Co39pnjX5UpMrhEsRKSzSMriwg5sFtW3H key: edpkufHs4XkMUAtSkHkHsfJYD65RQMHz6PZYko6Gf1MoWvYKfLpZ9N type: public is_bootstrap_baker_account: true bootstrap_balance: "500000000000" bakebuddy_jackvargo: - # tz1MszKq6K79thewtU7ZQgCxwuzsHq6PRAG7 + # mv1AFTdRQgQWTySB2ngQeVtz6vrqrDYm5Yiq key: edpkvTtGfrbNGQ7DQ8hqi1fx9b7BYg1Cr5QwzJazpMe9Ln9WXwq8tb type: public is_bootstrap_baker_account: true bootstrap_balance: "500000000000" bakebuddy_bakinglibertez: - # tz1ddu9JTAhcTgKMYRx9YgMZZnSsZQmuhvgj + # mv1S1NStmXzy2x6agkWznW3aioJr7oJRhdov key: edpkuLqVLoHppEqR2HPF2gAr33CJ1DHS3QirDRUuzuuebyAivYQHtX type: public is_bootstrap_baker_account: true bootstrap_balance: "500000000000" bakebuddy_ryxns: - # tz1YPeVXYiihY5t94fohtNdFzk9vXM8upy9z + # mv1Lm7o7s6247MfNCzNZ8CKH9m1u5ji55Hpe key: edpktzRHRzaeJzezQRGcaXS4meHCuQZ5irfMbAxk2Em4iRCpydBWd8 type: public is_bootstrap_baker_account: true bootstrap_balance: "500000000000" bakebuddy_billyhoush: - # tz1RCuLid33rWEegKjLwptfUgGNoc7N6LLCP + # mv1DaNeJwQMD5WRuU3uo4iMVqHEnAVriDMDN key: edpku867NozNR2zsFnqEEo7wEKekkwRp258bYGbo3f52cF16MYk1bS type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" vincent_xtzmaster: - # tz1M9b1sKoh5GB7AiBiqdMrjMMyvuhsZua5n + # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" jdsika: - # tz1iZ9LkpAhN8X1L6RpBtfy3wxpEWzFrXz8j + # mv1WvceM8XzihnnZEkP38Vf56ygD5Nkbtf4W key: edpkutdFBe12UBzvgRKtAPbhQrpRA46oBSJCECeHswSLPzf6eAeqph type: public is_bootstrap_baker_account: true diff --git a/networks/limanet/faucet_values.yaml b/networks/limanet/faucet_values.yaml index d33b4c15..d50e5b40 100644 --- a/networks/limanet/faucet_values.yaml +++ b/networks/limanet/faucet_values.yaml @@ -19,7 +19,7 @@ config: network: name: # filled in by pulumi rpcUrl: # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ viewer: https://lima.tzstats.com allowSendButton: false ingress: diff --git a/networks/limanet/values.yaml b/networks/limanet/values.yaml index cd5abe33..68e90853 100644 --- a/networks/limanet/values.yaml +++ b/networks/limanet/values.yaml @@ -1,50 +1,50 @@ accounts: oxheadbaker: - # tz1foXHgRzdYdaLgX6XhpZGxbBv42LZ6ubvE + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "9700000000000" is_bootstrap_baker_account: true # key injected by pulumi oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "50000000000000000" is_bootstrap_baker_account: false bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 is_bootstrap_baker_account: false bootstrap_balance: "50000000000000000" oxheadfaucet: # the faucet on teztnets platform - # tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj is_bootstrap_baker_account: false bootstrap_balance: "15000000000000" vicall: - # tz1VicarbXb4uAY12pQBAREHUimYCxjfKbLa + # mv1J65tSuttRUSKEB8y2QEvJdjdWmMHGX1ct key: edpkujMeTHyUEK4gqCBXHDL9yXYiHnJJ4C58AHnmgAKyfFZXcBRngB is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # rodrigo_quelhas: - # # tz1ViTezAvcip62Hnu2WYBFEruWEurGPbFX4 + # # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt # key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" pirbo: - # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # andrewk: - # # tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9 + # # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL # key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" @@ -53,118 +53,118 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # baketzforme: - # # tz1edUYGqBtteStneTGDBrQWTFmq9cnEELiW + # # mv1Szwqs9ZCFDig1nmq4Rg6XcGdoi1F4e5SF # key: edpkuEoVW7HM9ehiec9exPfHrsFkT1f3jV8JxFWQHP23VX6K5EnVtD # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs_2: - # tz1RuHDSj9P7mNNhfKxsyLGRDahTX5QD1DdP + # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # neoktalabs_julien: - # # tz1iTzWpFhURP5EnWqAc9hUkuVe2b2tSAGXC + # # mv1WqTpQa4mmxM21f9jTPXAn4WW19RRFkQ1L # key: edpkuMRJewemWYJcfGUe3DLvemke3BZEitc3vVPbBFfnfwrynimuzY # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" michael_kernaghan: - # tz1bQYMFieZHomNPjJvpp2g7PuhxRPDxpnFt + # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" fredcy: - # tz1KkJtLB9pMdLKNpVRNZw9zmysrxKmYcRGU + # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" tf: - # tz3Q67aMz7gSMiQRcW729sXSfuMtkyAHYfqc + # mv3CTasxJUynvzBekpfsPhDTpvDsKMezU9Hd key: p2pk66gP3wq6k9QgNwAgaGLeXc3YFfrxgYdC7cdYuJWAHYBw4hExVHW is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # ping: - # #tz1hm7NuCGNSKZQLQSawjUnehJcX8yCBcCAq + # #mv1W8agVWdfntqBZYm9nyJUfrKUVhMjPqESC # key: edpkty9Zdoxxc8BCCseTaeKtBpAVctrzVmzhkj3dkgmbFkWduu4SCB # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" # ping_bob: - # #tz1MvCE9dczhoij2bd4sLL2AfVuMtWfFAoCN + # #mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 # key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" pasqualepinto: - # tz1hoyMUiJYYr4FRPMU8Z7WJzYkqgjygjaTy + # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # pea: - # # tz1KhTJVAkKc5zhN29VBA3uEijtCKy6kfNBP + # # mv184vc5V7cxfGUbAU42PsbFskkAtMezJ89F # key: edpku2vFTjfziPbbViVqfHxVsmvTe5NZoaq6939Ex3eZCaSxkRTfpu # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" rich_ayotte: # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # tz1gYTmLWxR4dJ8agYeU5ZSugqUvjC2JsdEs + # mv1Uuw4vqKiRCZuopsDKKP8vqrLuHaWS6tUs key: edpkvXYuB4dkcSGmm8Mxm9bovPdtVz6CgQARRYGdGeLLQKnBC4iVen is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # bakebuddy_primate: - # # tz1YgDUQV2eXm8pUWNz3S5aWP86iFzNp4jnD + # # mv1M3gmzoPwtLQbhehYtfuGXY8xgpNraUd51 # key: edpkteP1jsCpAzmQpseKjEJpo4WFa9TZcFvuxVftVFfZfqKNU9cWTv # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" # bakebuddy_waveform: - # # tz1QRZrEUNDiuYadYvJa5dJRCqry7hPvYMUh + # # mv1Co39pnjX5UpMrhEsRKSzSMriwg5sFtW3H # key: edpkufHs4XkMUAtSkHkHsfJYD65RQMHz6PZYko6Gf1MoWvYKfLpZ9N # is_bootstrap_baker_account: true # bootstrap_balance: "500000000000" # bakebuddy_jackvargo: - # # tz1MszKq6K79thewtU7ZQgCxwuzsHq6PRAG7 + # # mv1AFTdRQgQWTySB2ngQeVtz6vrqrDYm5Yiq # key: edpkvTtGfrbNGQ7DQ8hqi1fx9b7BYg1Cr5QwzJazpMe9Ln9WXwq8tb # is_bootstrap_baker_account: true # bootstrap_balance: "500000000000" # bakebuddy_bakinglibertez: - # # tz1ddu9JTAhcTgKMYRx9YgMZZnSsZQmuhvgj + # # mv1S1NStmXzy2x6agkWznW3aioJr7oJRhdov # key: edpkuLqVLoHppEqR2HPF2gAr33CJ1DHS3QirDRUuzuuebyAivYQHtX # is_bootstrap_baker_account: true # bootstrap_balance: "500000000000" # bakebuddy_ryxns: - # # tz1YPeVXYiihY5t94fohtNdFzk9vXM8upy9z + # # mv1Lm7o7s6247MfNCzNZ8CKH9m1u5ji55Hpe # key: edpktzRHRzaeJzezQRGcaXS4meHCuQZ5irfMbAxk2Em4iRCpydBWd8 # is_bootstrap_baker_account: true # bootstrap_balance: "500000000000" # bakebuddy_billyhoush: - # # tz1RCuLid33rWEegKjLwptfUgGNoc7N6LLCP + # # mv1DaNeJwQMD5WRuU3uo4iMVqHEnAVriDMDN # key: edpku867NozNR2zsFnqEEo7wEKekkwRp258bYGbo3f52cF16MYk1bS # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" vincent_xtzmaster: - # tz1M9b1sKoh5GB7AiBiqdMrjMMyvuhsZua5n + # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" stakenow: - # tz1iZ9LkpAhN8X1L6RpBtfy3wxpEWzFrXz8j + # mv1WvceM8XzihnnZEkP38Vf56ygD5Nkbtf4W key: edpkutdFBe12UBzvgRKtAPbhQrpRA46oBSJCECeHswSLPzf6eAeqph is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" killian_d: - # tz1gBnaS1n7LKqpaRnyBX5MSmamadXXfzNpt + # mv1UZFt2L9Qgu7boa7Y2ku3TvbdZBv4kJsWP key: edpkv7AqKLxQXWa2tHcPbMnah1JbMUHohvmvgPS7nVaB7kdNnrg1XW is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" daniel_jean: - # tz1ehn3nZ8PhiJ2ygtLM3Z5hVtSzU4ZKgqLZ + # mv1T5FMNsVh4HZpCqCuCHNmieuJy2SzppD6U key: edpkunCh4TWt8qLmVscktUVcuhc25obsxYNJNrYqsQCXDhP7LwnVC6 is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" visualtez: - # tz1ViTezAvcip62Hnu2WYBFEruWEurGPbFX4 + # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -253,7 +253,7 @@ activation: sc_rollup_max_lookahead_in_blocks: 30000 sc_rollup_max_active_outbox_levels: 20160 sc_rollup_max_outbox_messages_per_level: 100 - testnet_dictator: "tz1Xf8zdT3DbAX9cHw3c3CXh79rc4nK4gCe8" + testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" nodes: tezos-baking-node: diff --git a/networks/mumbainet/faucet_values.yaml b/networks/mumbainet/faucet_values.yaml index a69db151..867bf3b0 100644 --- a/networks/mumbainet/faucet_values.yaml +++ b/networks/mumbainet/faucet_values.yaml @@ -19,7 +19,7 @@ config: network: name: # filled in by pulumi rpcUrl: # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ viewer: https://mumbai.tzstats.com allowSendButton: false ingress: diff --git a/networks/mumbainet/values.yaml b/networks/mumbainet/values.yaml index 96825869..6a24495b 100644 --- a/networks/mumbainet/values.yaml +++ b/networks/mumbainet/values.yaml @@ -1,35 +1,35 @@ accounts: oxheadbaker: - # tz1foXHgRzdYdaLgX6XhpZGxbBv42LZ6ubvE + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "9700000000000" is_bootstrap_baker_account: true # key injected by pulumi oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "50000000000000000" is_bootstrap_baker_account: false bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 is_bootstrap_baker_account: false bootstrap_balance: "50000000000000000" oxheadfaucet: # the faucet on teztnets platform - # tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj is_bootstrap_baker_account: false bootstrap_balance: "15000000000000" tf: - # tz3Q1fwk1vh3zm5LqyUV9e2wZBdaEXcovh2r + # mv3CP9FLLHzQa2rZzJ3LPTixiCVYnv6U8Djt key: p2pk66p7iVbEFyJaYM5bjJmXP74B7qso8rXMCmKwVRdRZunMdhUjYBH is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -39,64 +39,64 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" andrewk: - # tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9 + # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR type: public is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # vicall: - # # tz1VicarbXb4uAY12pQBAREHUimYCxjfKbLa + # # mv1J65tSuttRUSKEB8y2QEvJdjdWmMHGX1ct # key: edpkujMeTHyUEK4gqCBXHDL9yXYiHnJJ4C58AHnmgAKyfFZXcBRngB # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" pirbo: - # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs_2: - # tz1RuHDSj9P7mNNhfKxsyLGRDahTX5QD1DdP + # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # michael_kernaghan: - # # tz1bQYMFieZHomNPjJvpp2g7PuhxRPDxpnFt + # # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh # key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" fredcy: - # tz1KkJtLB9pMdLKNpVRNZw9zmysrxKmYcRGU + # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" pasqualepinto: - # tz1hoyMUiJYYr4FRPMU8Z7WJzYkqgjygjaTy + # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" rich_ayotte: # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # tz1Sp6HTbbsHDhGDjqsucvRzV9rVe8LTb7c4 + # mv1FBZb3uyAdny3StASkrk81eAiUCWj5Reic key: edpktoAgXAvtBFojuKPoigboyPA6mPJ3pyR1JP8XES6Lg1rkf1a3T5 is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" vincent_xtzmaster: - # tz1M9b1sKoh5GB7AiBiqdMrjMMyvuhsZua5n + # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # stakenow: - # # tz1iZ9LkpAhN8X1L6RpBtfy3wxpEWzFrXz8j + # # mv1WvceM8XzihnnZEkP38Vf56ygD5Nkbtf4W # key: edpkutdFBe12UBzvgRKtAPbhQrpRA46oBSJCECeHswSLPzf6eAeqph # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" killian_d: - # tz1gBnaS1n7LKqpaRnyBX5MSmamadXXfzNpt + # mv1UZFt2L9Qgu7boa7Y2ku3TvbdZBv4kJsWP key: edpkv7AqKLxQXWa2tHcPbMnah1JbMUHohvmvgPS7nVaB7kdNnrg1XW is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -105,17 +105,17 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # daniel_jean: - # # tz1ehn3nZ8PhiJ2ygtLM3Z5hVtSzU4ZKgqLZ + # # mv1T5FMNsVh4HZpCqCuCHNmieuJy2SzppD6U # key: edpkunCh4TWt8qLmVscktUVcuhc25obsxYNJNrYqsQCXDhP7LwnVC6 # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" # visualtez: - # # tz1ViTezAvcip62Hnu2WYBFEruWEurGPbFX4 + # # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt # key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" albin: - # tz1YtB3Hn6oghVk96vkpZt6PHrfbyRY1ciL3 + # mv1MFeLt6U73GmXNFFKfohnQSsXaXp2KQVuF key: edpkuc4NCkkmTyLogcU32b7sU363J2jggs19EyBzhmms6JmjQZxEJo is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -210,7 +210,7 @@ activation: zk_rollup_enable: false zk_rollup_origination_size: 4000 zk_rollup_min_pending_to_process: 10 - testnet_dictator: "tz1Xf8zdT3DbAX9cHw3c3CXh79rc4nK4gCe8" + testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" nodes: tezos-baking-node: diff --git a/networks/nairobinet/faucet_values.yaml b/networks/nairobinet/faucet_values.yaml index 827f7bd4..2f5b56f2 100644 --- a/networks/nairobinet/faucet_values.yaml +++ b/networks/nairobinet/faucet_values.yaml @@ -11,12 +11,12 @@ config: network: name: # filled in by pulumi rpcUrl: # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ viewer: https://nairobi.tzstats.com # Value the server sets for the "Access-Control-Allow-Origin" header for CORS. authorizedHost: "" # filled in by pulumi -# RPC url for the faucet backend. Default value assumes tezos-k8s created an RPC +# RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. backendRpcUrl: http://tezos-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. diff --git a/networks/nairobinet/values.yaml b/networks/nairobinet/values.yaml index a8dcaf30..1377350e 100644 --- a/networks/nairobinet/values.yaml +++ b/networks/nairobinet/values.yaml @@ -1,23 +1,23 @@ accounts: oxheadbaker: - # tz1foXHgRzdYdaLgX6XhpZGxbBv42LZ6ubvE + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "9700000000000" is_bootstrap_baker_account: true # key injected by pulumi oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "50000000000000000" is_bootstrap_baker_account: false bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 is_bootstrap_baker_account: false @@ -25,18 +25,18 @@ accounts: foundationfaucet: # TF funds to deploy more bakers later if needed # chris.pinnock@tezos.foundation - # tz1LwEoAHSxsMm8dECaQTGNsGvXCD9HeBgdj + # mv19Ji6kbpGDw2urNX9Fh64tRwPAmXooxVeV key: edpku2v3DA5WFGE7LSjNVC8FTVhy2LdSu8U34GYaT1zfzZaugCbpVU is_bootstrap_baker_account: false bootstrap_balance: "50000000000000000" oxheadfaucet: # the faucet on teztnets platform - # tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj is_bootstrap_baker_account: false bootstrap_balance: "15000000000000" tf: - # tz3Q67aMz7gSMiQRcW729sXSfuMtkyAHYfqc + # mv3CTasxJUynvzBekpfsPhDTpvDsKMezU9Hd key: p2pk66gP3wq6k9QgNwAgaGLeXc3YFfrxgYdC7cdYuJWAHYBw4hExVHW is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -46,48 +46,48 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" andrewk: - # tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9 + # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" pirbo: - # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs_2: - # tz1RuHDSj9P7mNNhfKxsyLGRDahTX5QD1DdP + # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" fredcy: - # tz1KkJtLB9pMdLKNpVRNZw9zmysrxKmYcRGU + # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" pasqualepinto: - # tz1hoyMUiJYYr4FRPMU8Z7WJzYkqgjygjaTy + # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" rich_ayotte: # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # tz1Sp6HTbbsHDhGDjqsucvRzV9rVe8LTb7c4 + # mv1FBZb3uyAdny3StASkrk81eAiUCWj5Reic key: edpktoAgXAvtBFojuKPoigboyPA6mPJ3pyR1JP8XES6Lg1rkf1a3T5 is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" vincent_xtzmaster: - # tz1M9b1sKoh5GB7AiBiqdMrjMMyvuhsZua5n + # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" killian_d: - # tz1gBnaS1n7LKqpaRnyBX5MSmamadXXfzNpt + # mv1UZFt2L9Qgu7boa7Y2ku3TvbdZBv4kJsWP key: edpkv7AqKLxQXWa2tHcPbMnah1JbMUHohvmvgPS7nVaB7kdNnrg1XW is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -96,13 +96,13 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" albin: - # tz1YtB3Hn6oghVk96vkpZt6PHrfbyRY1ciL3 + # mv1MFeLt6U73GmXNFFKfohnQSsXaXp2KQVuF key: edpkuc4NCkkmTyLogcU32b7sU363J2jggs19EyBzhmms6JmjQZxEJo is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" blueledger: # Mike Kerhnaghan - # tz1bQYMFieZHomNPjJvpp2g7PuhxRPDxpnFt + # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" diff --git a/networks/oxfordnet/faucet_values.yaml b/networks/oxfordnet/faucet_values.yaml index b8df524b..c2f48ba5 100644 --- a/networks/oxfordnet/faucet_values.yaml +++ b/networks/oxfordnet/faucet_values.yaml @@ -16,7 +16,7 @@ config: # Value the server sets for the "Access-Control-Allow-Origin" header for CORS. authorizedHost: "" # filled in by pulumi -# RPC url for the faucet backend. Default value assumes tezos-k8s created an RPC +# RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. backendRpcUrl: http://tezos-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. diff --git a/networks/oxfordnet/values.yaml b/networks/oxfordnet/values.yaml index f1583cb4..3e194062 100644 --- a/networks/oxfordnet/values.yaml +++ b/networks/oxfordnet/values.yaml @@ -1,35 +1,35 @@ accounts: teztnetsbaker: - # tz1TnEtqDV9mZyts2pfMy6Jw1BTPs4LMjL8M + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "9700000000000" is_bootstrap_baker_account: true # key injected by pulumi oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "50000000000000000" is_bootstrap_baker_account: false bakingbadfaucet: # baking bad maintains a telegram faucet bot - # tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc + # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx is_bootstrap_baker_account: false bootstrap_balance: "5000000000000000" - tz1THUNA: - # tz1THUNARo58aD5YdNGYPnWNnvd8yHPrMdsF + mv1Fewfk: + # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS # Romain's faucet key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 is_bootstrap_baker_account: false bootstrap_balance: "50000000000000000" oxheadfaucet: # the faucet on teztnets platform - # tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj is_bootstrap_baker_account: false bootstrap_balance: "15000000000000" tf: - # tz3Q1fwk1vh3zm5LqyUV9e2wZBdaEXcovh2r + # mv3CP9FLLHzQa2rZzJ3LPTixiCVYnv6U8Djt key: p2pk66p7iVbEFyJaYM5bjJmXP74B7qso8rXMCmKwVRdRZunMdhUjYBH is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -64,48 +64,48 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" andrewk: - # # tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9 + # # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # pirbo: - # # tz1PirbogVqfmBT9XCuYJ1KnDx4bnMSYfGru + # # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b # key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" ecadlabs: - # tz1cjyja1TU6fiyiFav3mFAdnDsCReJ12hPD + # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" ecadlabs_2: - # tz1RuHDSj9P7mNNhfKxsyLGRDahTX5QD1DdP + # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # fredcy: - # # tz1KkJtLB9pMdLKNpVRNZw9zmysrxKmYcRGU + # # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP # key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" # pasqualepinto: - # # tz1hoyMUiJYYr4FRPMU8Z7WJzYkqgjygjaTy + # # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ # key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000"b # rich: # # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # # tz1MDBXbMoLwTjeGYUckSWSTKp5kznTstafr + # # mv19aeqBgAeJ31RVgoBbgL8UUpwjZAvPxCpR # key: edpkuK9vRbs1ZKLkaPHdKQ3L4h1YbDUFAt4PHT7MXRDqGpRLLBy6v8 # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" vincent_xtzmaster: - # tz1M9b1sKoh5GB7AiBiqdMrjMMyvuhsZua5n + # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" killian_d: - # tz1gBnaS1n7LKqpaRnyBX5MSmamadXXfzNpt + # mv1UZFt2L9Qgu7boa7Y2ku3TvbdZBv4kJsWP key: edpkv7AqKLxQXWa2tHcPbMnah1JbMUHohvmvgPS7nVaB7kdNnrg1XW is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" @@ -114,13 +114,13 @@ accounts: # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" albin: - # tz1YtB3Hn6oghVk96vkpZt6PHrfbyRY1ciL3 + # mv1MFeLt6U73GmXNFFKfohnQSsXaXp2KQVuF key: edpkuc4NCkkmTyLogcU32b7sU363J2jggs19EyBzhmms6JmjQZxEJo is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" # blueledger: # # Mike Kerhnaghan - # # tz1bQYMFieZHomNPjJvpp2g7PuhxRPDxpnFt + # # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh # key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" @@ -221,7 +221,7 @@ activation: zk_rollup_enable: false zk_rollup_origination_size: 4000 zk_rollup_min_pending_to_process: 10 - testnet_dictator: "tz1Xf8zdT3DbAX9cHw3c3CXh79rc4nK4gCe8" + testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" nodes: tezos-baking-node: diff --git a/networks/weeklynet/faucet_values.yaml b/networks/weeklynet/faucet_values.yaml index 485a7d41..ee4d66f4 100644 --- a/networks/weeklynet/faucet_values.yaml +++ b/networks/weeklynet/faucet_values.yaml @@ -14,11 +14,11 @@ config: network: name: custom # Beacon SDK doesn't recognize weeklynet atm. rpcUrl: "" # filled in by pulumi - faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ # Value the server sets for the "Access-Control-Allow-Origin" header for CORS. authorizedHost: "" # filled in by pulumi -# RPC url for the faucet backend. Default value assumes tezos-k8s created an RPC +# RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. backendRpcUrl: http://tezos-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. diff --git a/networks/weeklynet/values.yaml b/networks/weeklynet/values.yaml index 455ed6fd..22b6c085 100644 --- a/networks/weeklynet/values.yaml +++ b/networks/weeklynet/values.yaml @@ -1,5 +1,5 @@ tezos_k8s_images: - utils: ghcr.io/oxheadalpha/tezos-k8s-utils:bake_remotely + utils: ghcr.io/mavryk-network/mavryk-k8s-utils:6.25.0 node_config_network: activation_account_name: teztnetsbaker genesis: @@ -199,7 +199,7 @@ dalNodes: dal-dal1: attest_using_accounts: - teztnetsbaker - attesterProfiles: tz1TnEtqDV9mZyts2pfMy6Jw1BTPs4LMjL8M + attesterProfiles: mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm node_rpc_url: http://tezos-baking-node-0.tezos-baking-node:8732 storageSize: 80Gi ingress: @@ -247,106 +247,106 @@ protocols: adaptive_issuance_vote: "on" accounts: teztnetsbaker: - # tz1TnEtqDV9mZyts2pfMy6Jw1BTPs4LMjL8M + # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "1500000000000" is_bootstrap_baker_account: true type: secret # key injected by pulumi dal_node_rpc_url: http://dal-dal1:10732 tf_frankfurt1: - # tz1WLNVBKmPWEMdXD5c3NrpnUsTtb97Fdevg + # mv1Jhqnme8grodQkMQAtcgWodtKs9XY9TEY8 key: edpktzR9unKcG2XtsArVGNzQkrkUvbV3KAyWmX8XAsYFBLXwb1MicW type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_frankfurt2: - # tz1NDNCdR2REutVDQXRD791Yv8BQAt2NCMZD + # mv1AaqWDjPibVAGSYqz4Lxha593NjGbRh1SC key: edpktwQ93eJwcJUTkZYRKzDpMqNmY76av4xDmcYP6jTHKMHAvmwToi type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_frankfurt3: - # tz1SSe3hejo6tUX3jLvTEEy4VCdxYukqBdkT + # mv1Ep7MHy76TTkJGsfVJU4f5eDVw7JF3w2eP key: edpkue21EdnYUyHU9WHHMGEHA7E1HdTNy8pTZ4QQYodns7NUMFk1Fe type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_frankfurt6: - # tz1cffp9Tn4BWGFB1WniufdTqNeU5S4DtBA4 + # mv1R397jn9MY5Y2Q9qMa9VKUzPWSdpYzibCA key: edpkuiioYPwFA14hgSxnTFcS2enn2BqcMDkMrPVA3r7oZ86zGyphP3 type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_frankfurt7: - # tz1NdcV4PLiFbWS3anRAJKCKxFJwqF1Z16GL + # mv1B15nehi1cAnDGj6z1Y8tM7GAvPdYkzjqQ key: edpktsx1JxD7cgTBXrgM7B8xUHVQ6cpFEk4rSUAEcuBPzi5wjjf3hZ type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_gcp_oregon_1: - # tz1Q5yMydHkc2DHaP8GdWcz6YcuNu5wKWSa9 + # mv1CTSfZwf3xbV4oXSqUkSg7hdmMTUSSV2op key: edpkuqgGiesSEaxJ2pUjNpHa46Lq7TiRJBqDCxBgdVisEQjPG1TdxQ type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_gcp_oregon_2: - # tz1Y5nRiviBMSxdr7ZY15c2Pz8SjaG5LXQqz + # mv1LTFjKF5Ui2ER5Ft6rKRiR99Ji8ebogrMF key: edpkuhYJo1ULyLnetjq5ct1GiEpjNVRTQzU324tHU1MNcdPKtRxSM3 type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_gcp_oregon_3: - # tz1VXDXJKNZ6Vd8WGoSyrfEXNpManegYm7gd + # mv1HtgptdjrT4tujR81q6UvYXqDZM3Efn2Wy key: edpkvFBNrMAmBiFhw7G3bypjnNQpMJ7trDyGnpMmyWWJLABpDHgxGV type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_gcp_zurich_1: - # tz1e4nXmvHK8TC8VbBg9KmD8So3BxzS4qUnN + # mv1SSFqNEecV2TuijWEzZau9bouAXNyw8GQo key: edpktx15jbSycZMkDEmB9Yrnzf6YnUgSj6qzQv2MVPy2E27UFJUZDR type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_gcp_zurich_2: - # tz1htmXW41DdSVK8XoqYfCEcNqz3xb2Y4uWQ + # mv1WGEq6NNWz1m6Mg8QPu1vdXrr2WyWcKKke key: edpku8RZHsqeuuuZS5P4ExwBbRP5P44bm7gZxBWBcERrTdSQvWzc1o type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" tf_gcp_zurich_3: - # tz1RWEVV83L9YYittWtz33iGQMkFEekcv3Ui + # mv1Dsho5SQdW7pW82qTqGsQHZNcDo3APXbzp key: edpkvM1aKoDD5wJ3cYcaN4YbV2ihyP7yHtZJW7mqY8oxXNMNMww94y type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" ecadlabs: - # tz1ck3EJwzFpbLVmXVuEn5Ptwzc6Aj14mHSH + # mv1R7WXuGMZBAcGzfpU61u5v71U4j7WvBw1z key: edpkvFUn1N79a7hGtVUF8AoQHf5q3A5g6xXtDcVTmna5wzHmgF1BfA type: public is_bootstrap_baker_account: true bootstrap_balance: "370000000000" german: - # tz1TGKSrZrBpND3PELJ43nVdyadoeiM1WMzb + # mv1FdnkStDVAwUpcNeruHcBf8bVnD6rvNSik key: edpkvG8RpyhnPi3ugWWvavsKwR79rb7iMvedeFNxBdyCvenTDZeC9n type: public is_bootstrap_baker_account: false bootstrap_balance: "1000000000000" marigold: - # tz1eKKAsasRiyUGSnPD5YPu7zfEBcx9LDREQ + # mv1SgnUTuEj5Yk3fvhmvnDb99g6ABLd9xkss # cyril.bourdet.pro@gmail.com key: edpkuUD5GNH7LYQySpZNQMt7mWWNAp5phxKrdXuehtBJaoFEp8ebhG is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" oxheadfree: # an account with a lot of money in it - # tz1foxFdz2ieSj8P9YxKYBTEqYbgFXXEeiQY + # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ bootstrap_balance: "5000000000000000" is_bootstrap_baker_account: false type: public faucet: # faucet on teztnets.xyz platform - # tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj bootstrap_balance: "200000000000000" is_bootstrap_baker_account: false diff --git a/teztnets_xyz_page/website/about.markdown b/teztnets_xyz_page/website/about.markdown index 6a7f5873..0a15eae3 100644 --- a/teztnets_xyz_page/website/about.markdown +++ b/teztnets_xyz_page/website/about.markdown @@ -14,7 +14,7 @@ We have three kind of testnets: * **protocol testnets** are deployed each time a new protocol is injected (2 months before mainnet activation). Their goal is to test protocols before they get rolled into mainnet. Any team building on Tezos should test their products on these networks, * **periodic testnets** are bleeding edge networks that restart on a cadence from the development branch. The primary users of these testnets are protocol, library and indexer teams. -Teztnets is powered by [tezos-k8s](https://tezos-k8s.xyz), a collection of helm charts for Tezos. It is deployed with [Pulumi](https://pulumi.com). +Teztnets is powered by [mavryk-k8s](https://mavryk-k8s.xyz), a collection of helm charts maintained by Mavryk Dynamics. It is deployed with [Pulumi](https://pulumi.com). The [Teztnets Status page](https://status.teztnets.com) is powered by [Pyrometer](https://gitlab.com/tezos-kiln/pyrometer), a Tezos monitoring tool. From d3297bf6923d8c736773f7a5c3291ceb9a52e275 Mon Sep 17 00:00:00 2001 From: Tristan Allaire Date: Wed, 31 Jan 2024 10:47:21 +0100 Subject: [PATCH 02/19] Teztnet refactored into testnets --- .github/workflows/_publish.yml | 20 +++++++++---------- .github/workflows/cron.yml | 2 +- .github/workflows/push.yml | 2 +- README.md | 14 ++++++------- index.ts | 12 +++++------ networks/dailynet/mavryk-k8s | 2 +- networks/dailynet/values.yaml | 2 +- networks/hangzhounet/POSTMORTEM.md | 2 +- networks/hangzhounet/values.yaml | 2 +- networks/kathmandunet/values.yaml | 2 +- networks/oxfordnet/values.yaml | 12 +++++------ networks/weeklynet/values.yaml | 2 +- scripts/mainnet_param_differ.py | 2 +- tezos/chain.ts | 4 ++-- tezos/faucet.ts | 2 +- tezos/nodes.ts | 8 ++++---- teztnets_xyz_page/README.md | 2 +- teztnets_xyz_page/website/CNAME | 2 +- teztnets_xyz_page/website/_config.yml | 2 +- .../website/_includes/header.html | 2 +- teztnets_xyz_page/website/about.markdown | 6 +++--- teztnets_xyz_page/website/index.markdown | 2 +- 22 files changed, 53 insertions(+), 53 deletions(-) diff --git a/.github/workflows/_publish.yml b/.github/workflows/_publish.yml index 2d27cce4..d7800dec 100644 --- a/.github/workflows/_publish.yml +++ b/.github/workflows/_publish.yml @@ -34,25 +34,25 @@ jobs: - name: generate release artifacts run: | python teztnets_xyz_page/release.py - - name: Deploy to teztnets.com + - name: Deploy to testnets.mavryk.org uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./target/release enable_jekyll: true - # Generate release artifacts for teztnets.xyz - - name: Generate release artifacts for teztnets.com + # Generate release artifacts for testnets.mavryk.org + - name: Generate release artifacts for testnets.mavryk.org run: | python teztnets_xyz_page/release.py - # Temporary - deploy to teztnets.xyz + # Temporary - deploy to testnets.mavryk.org - name: Rewrite and replace domain in jekyll site run: | - sed -i 's/teztnets.com/teztnets.xyz/g' teztnets_xyz_page/website/CNAME - sed -i 's/teztnets.com/teztnets.xyz/g' teztnets_xyz_page/website/_config.yml - sed -i 's/teztnets.com/teztnets.xyz/g' teztnets_xyz_page/website/_includes/header.html - sed -i 's/teztnets.com/teztnets.xyz/g' teztnets_xyz_page/website/index.markdown - - name: Deploy to Teztnets.xyz + sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/CNAME + sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/_config.yml + sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/_includes/header.html + sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/index.markdown + - name: Deploy to testnets.mavryk.org uses: peaceiris/actions-gh-pages@v3 with: deploy_key: ${{ secrets.TEZTNETS_COM_DEPLOY_KEY }} @@ -60,4 +60,4 @@ jobs: external_repository: oxheadalpha/teztnets enable_jekyll: true - # End Temporary - deploy to teztnets.xyz + # End Temporary - deploy to testnets.mavryk.org diff --git a/.github/workflows/cron.yml b/.github/workflows/cron.yml index 138790ab..61ec4993 100644 --- a/.github/workflows/cron.yml +++ b/.github/workflows/cron.yml @@ -14,7 +14,7 @@ jobs: pulumi-command: up publish: - name: teztnets.xyz build + name: testnets.mavryk.org build needs: up uses: ./.github/workflows/_publish.yml secrets: inherit diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 76c8098e..01db1a48 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -14,7 +14,7 @@ jobs: pulumi-command: up publish: - name: teztnets.xyz build + name: testnets.mavryk.org build needs: up uses: ./.github/workflows/_publish.yml secrets: inherit diff --git a/README.md b/README.md index 4f1ef952..96ff7bba 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# Teztnets +# Testnets Infrastructure-as-code repo to activate and bootstrap Tezos testnets in a repeatable, automated way. -See [teztnets.com](https://teztnets.com) for the list of active Teztnets. +See [testnets.mavryk.org](https://testnets.mavryk.org) for the list of active Teztnets. ## Features @@ -29,12 +29,12 @@ Rollups can be injected at genesis of your test chain. Teztnets supports extract Upon deployment of a Teztnet, a genesis baker will run and its p2p and rpc endpoints will be exposed externally. Example: -- p2p: `ghostnet.teztnets.com` -- rpc `rpc.ghostnet.teztnets.com` +- p2p: `ghostnet.testnets.mavryk.org` +- rpc `rpc.ghostnet.testnets.mavryk.org` ### `--network` endpoint for Tezos node -Tezos nodes supports downloading of network specification from a json endpoint: `octez-node config init --network https://teztnets.com/` +Tezos nodes supports downloading of network specification from a json endpoint: `octez-node config init --network https://testnets.mavryk.org/` The Teztnet platform creates and exposes such endpoints. @@ -42,7 +42,7 @@ The Teztnet platform creates and exposes such endpoints. You are encouraged to build automation to ensure your Tezos project keeps running with the future versions of Tezos shell and/or protocol. -This endpoint lists the current active testnets: [https://teztnets.com/teztnets.json](https://teztnets.com/teztnets.json) +This endpoint lists the current active testnets: [https://testnets.mavryk.org/teztnets.json](https://testnets.mavryk.org/teztnets.json) ## Add new Teztnets or modify existing Teztnets @@ -67,7 +67,7 @@ Look in any Teztnet directory's values.yaml file in [`/networks`](/networks) for The [default Helm values.yaml](https://github.com/mavryk-network/mavryk-k8s/blob/master/charts/tezos/values.yaml) has details on every possible way to customize your teztnet. -## Teztnets.com website +## testnets.mavryk.org website The website is created with Jekyll from Markdown files generated from Jinja templates based on Pulumi outputs. diff --git a/index.ts b/index.ts index b5ed7143..69063c6e 100644 --- a/index.ts +++ b/index.ts @@ -54,7 +54,7 @@ new gcp.storage.BucketIAMMember("publicRead", { // Define your domain name and a suitable name for the managed zone -const domainName = "teztnets.xyz"; +const domainName = "testnets.mavryk.org"; const managedZoneName = "teztnets-zone"; // Create a managed DNS zone @@ -66,7 +66,7 @@ const dnsZone = new gcp.dns.ManagedZone(managedZoneName, { // Define another domain name and a suitable name for the managed zone -const domainNameCom = "teztnets.com"; +const domainNameCom = "testnets.mavryk.org"; const managedZoneNameCom = "teztnetscom-zone"; // Create a managed DNS zone @@ -506,7 +506,7 @@ function createDomainRedirectIngress(srcDomain: string, destDomain: string): k8s }, { provider }); } -createDomainRedirectIngress("faucet.ghostnet.teztnets.xyz", "faucet.ghostnet.teztnets.com"); -createDomainRedirectIngress("faucet.oxfordnet.teztnets.xyz", "faucet.oxfordnet.teztnets.com"); -createDomainRedirectIngress("faucet.nairobinet.teztnets.xyz", "faucet.nairobinet.teztnets.com"); -createDomainRedirectIngress("status.teztnets.xyz", "status.teztnets.com"); \ No newline at end of file +createDomainRedirectIngress("faucet.ghostnet.testnets.mavryk.org", "faucet.ghostnet.testnets.mavryk.org"); +createDomainRedirectIngress("faucet.oxfordnet.testnets.mavryk.org", "faucet.oxfordnet.testnets.mavryk.org"); +createDomainRedirectIngress("faucet.nairobinet.testnets.mavryk.org", "faucet.nairobinet.testnets.mavryk.org"); +createDomainRedirectIngress("status.testnets.mavryk.org", "status.testnets.mavryk.org"); \ No newline at end of file diff --git a/networks/dailynet/mavryk-k8s b/networks/dailynet/mavryk-k8s index 34e657da..6a784243 160000 --- a/networks/dailynet/mavryk-k8s +++ b/networks/dailynet/mavryk-k8s @@ -1 +1 @@ -Subproject commit 34e657da77e528ac42e4a7a0b4733e922c48d08f +Subproject commit 6a784243749568ea869f3571bf62ed70936b1e96 diff --git a/networks/dailynet/values.yaml b/networks/dailynet/values.yaml index 13b29181..5a474a1e 100644 --- a/networks/dailynet/values.yaml +++ b/networks/dailynet/values.yaml @@ -286,7 +286,7 @@ accounts: is_bootstrap_baker_account: false type: public faucet: - # faucet on teztnets.xyz platform + # faucet on testnets.mavryk.org platform # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj bootstrap_balance: "200000000000000" diff --git a/networks/hangzhounet/POSTMORTEM.md b/networks/hangzhounet/POSTMORTEM.md index d4061af7..19156da9 100644 --- a/networks/hangzhounet/POSTMORTEM.md +++ b/networks/hangzhounet/POSTMORTEM.md @@ -14,7 +14,7 @@ No action needed: when doing I network launch, I will be copy-pasting from H whi ### Wait until baking the network parameters into tezos-node binary -It is probably better to let bootstrap bakers gather their parameters from `--network https://teztnets.xyz/blah` for a while. This would allow for emergency network restarts, where the bakers just have to reboot the node to pick up the new, correct chain. Only one release later should the chain params be hardcoded. +It is probably better to let bootstrap bakers gather their parameters from `--network https://testnets.mavryk.org/blah` for a while. This would allow for emergency network restarts, where the bakers just have to reboot the node to pick up the new, correct chain. Only one release later should the chain params be hardcoded. ### Wrong value for bootstrap paran diff --git a/networks/hangzhounet/values.yaml b/networks/hangzhounet/values.yaml index 74a60513..30150278 100644 --- a/networks/hangzhounet/values.yaml +++ b/networks/hangzhounet/values.yaml @@ -135,7 +135,7 @@ accounts: is_bootstrap_baker_account: false bootstrap_balance: "500000000000000" oxheadbaker: - # Oxhead Alpha's baker hosted in teztnets.xyz infra + # Oxhead Alpha's baker hosted in testnets.mavryk.org infra # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "1000000000000" is_bootstrap_baker_account: true diff --git a/networks/kathmandunet/values.yaml b/networks/kathmandunet/values.yaml index 8eee08ec..6c4d5d59 100644 --- a/networks/kathmandunet/values.yaml +++ b/networks/kathmandunet/values.yaml @@ -179,7 +179,7 @@ node_config_network: protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P timestamp: "2022-07-28T15:00:00Z" # NEW: the hash is deterministically generated from chain_name - # check https://teztnets.xyz/kathmandunet for its value + # check https://testnets.mavryk.org/kathmandunet for its value user_activated_upgrades: - level: 8192 replacement_protocol: PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg diff --git a/networks/oxfordnet/values.yaml b/networks/oxfordnet/values.yaml index 3e194062..8f934b78 100644 --- a/networks/oxfordnet/values.yaml +++ b/networks/oxfordnet/values.yaml @@ -34,27 +34,27 @@ accounts: is_bootstrap_baker_account: true bootstrap_balance: "1000000000000" tfspare1: - # tz1Pv4fw2vYyM7yCjwmtRShAR3MaKas2rEB6 + # mv1CHXyXMHrKvPkRtGLjfGPBa4DYsyK5zecB key: edpkvGuDSyySWhiHXCwH8GB12W89WGP2GdDgm3eHuZrjfX3AeSX4UK is_bootstrap_baker_account: true bootstrap_balance: "400000000000" tfspare2: - # tz1czy3zUFrpY3p46YqrPKLFPFv7wTVCwAVh + # mv1RNSMandAB7KbHEsQhd92GYGn6Vqwx9xeM key: edpktqQjmPMTjfurDvyaQ4xSpkzKaxJMs75xBwP7dQ7beYLKt4Ew48 is_bootstrap_baker_account: true bootstrap_balance: "400000000000" tfspare3: - # tz1ReSV2MyjTbPqKTN1CJL3CMtYwe8WYrDaj + # mv1E1uncgM2pAfcYbga3Y9jDWuQvCWyaa6bS key: edpkvN2xdjxH93EESi3kjZb3Vd3zjmQ1wSGykmE6NgVLbc38zJGSfT is_bootstrap_baker_account: true bootstrap_balance: "400000000000" tfspare4: - # tz1YnTwsuM5fh83kXPC9HViMrYGRvRVP3ff1 + # mv1M9wFUDiP2GPpyfhkzXKQP1Z8QUovawTdw key: edpkvadEsLbRkJoPjG1UtpZfwxFCL7G35VXYLmfcVTw4bUHNWZNy5f is_bootstrap_baker_account: true bootstrap_balance: "400000000000" tfspare5: - # tz1P4jwyqooBmjBEWXLvgfcdy4wstG2Bzsky + # mv1BSDFaAB6YLzxTequmvVJf85orSeVnSG5F key: edpkvP1MM5ojoW94m6Tzxgw4hg2N9TbNudycwPLVC9GqDpUk8LAU3Q is_bootstrap_baker_account: true bootstrap_balance: "400000000000" @@ -125,7 +125,7 @@ accounts: # is_bootstrap_baker_account: true # bootstrap_balance: "1000000000000" dmitriy_serokell: - # tz1hoyMUiJYYr4FRPMU8Z7WJzYkqgjygjaTy + # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE is_bootstrap_baker_account: true bootstrap_balance: "700000000000" diff --git a/networks/weeklynet/values.yaml b/networks/weeklynet/values.yaml index 22b6c085..963cbb6f 100644 --- a/networks/weeklynet/values.yaml +++ b/networks/weeklynet/values.yaml @@ -345,7 +345,7 @@ accounts: is_bootstrap_baker_account: false type: public faucet: - # faucet on teztnets.xyz platform + # faucet on testnets.mavryk.org platform # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj bootstrap_balance: "200000000000000" diff --git a/scripts/mainnet_param_differ.py b/scripts/mainnet_param_differ.py index 1d1a9cad..cb20965c 100644 --- a/scripts/mainnet_param_differ.py +++ b/scripts/mainnet_param_differ.py @@ -19,7 +19,7 @@ def flatten_params(params, parent_key=''): ghostnet_params = flatten_params(requests.get("https://ghostnet.tezos.marigold.dev/chains/main/blocks/head/context/constants").json()) -nairobinet_params = flatten_params(requests.get("https://rpc.nairobinet.teztnets.xyz/chains/main/blocks/head/context/constants").json()) +nairobinet_params = flatten_params(requests.get("https://rpc.nairobinet.testnets.mavryk.org/chains/main/blocks/head/context/constants").json()) print("Param,oxfordnet,nairobinet,ghostnet,mainnet") for param in params.keys(): diff --git a/tezos/chain.ts b/tezos/chain.ts index 58c0dac0..12020bd7 100644 --- a/tezos/chain.ts +++ b/tezos/chain.ts @@ -25,8 +25,8 @@ export interface TezosParameters { } const gcpRegion = "us-central1"; -const domainName = 'teztnets.com'; -const domainNameXyz = 'teztnets.xyz'; +const domainName = 'testnets.mavryk.org'; +const domainNameXyz = 'testnets.mavryk.org'; /** * Deploy a tezos-k8s topology in a k8s cluster. diff --git a/tezos/faucet.ts b/tezos/faucet.ts index ab106729..ea0cd89a 100644 --- a/tezos/faucet.ts +++ b/tezos/faucet.ts @@ -85,7 +85,7 @@ export class TezosFaucet extends pulumi.ComponentResource { ) } - const teztnetsDomain = `${name}.teztnets.com` + const teztnetsDomain = `${name}.testnets.mavryk.org` const faucetDomain = `faucet.${teztnetsDomain}` this.tezosFaucetHelmValues.googleCaptchaSecretKey = params.faucetRecaptchaSecretKey diff --git a/tezos/nodes.ts b/tezos/nodes.ts index b1767f64..f630e1fb 100644 --- a/tezos/nodes.ts +++ b/tezos/nodes.ts @@ -226,8 +226,8 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { }, { provider: provider } ) - // Temp teztnets.xyz - const rpcFqdnXyz = "rpc.ghostnet.teztnets.xyz"; + // Temp testnets.mavryk.org + const rpcFqdnXyz = "rpc.ghostnet.testnets.mavryk.org"; new k8s.networking.v1.Ingress( `${name}-ingress-xyz`, { @@ -341,7 +341,7 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { namespace: this.namespace.metadata.name, name: `${name}-xyz`, annotations: { - "external-dns.alpha.kubernetes.io/hostname": "ghostnet.teztnets.xyz", + "external-dns.alpha.kubernetes.io/hostname": "ghostnet.testnets.mavryk.org", }, }, spec: { @@ -358,6 +358,6 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { }, { provider: provider } ) - // end temp teztnets.xyz + // end temp testnets.mavryk.org } } diff --git a/teztnets_xyz_page/README.md b/teztnets_xyz_page/README.md index 75c482a5..da542fb4 100644 --- a/teztnets_xyz_page/README.md +++ b/teztnets_xyz_page/README.md @@ -1,4 +1,4 @@ -## teztnets.com page +## testnets.mavryk.org page 1. Github Action Builds markdown files from jinja templates. 1. Rendered markdown moved to the website folder diff --git a/teztnets_xyz_page/website/CNAME b/teztnets_xyz_page/website/CNAME index 089095fb..ba32e3a6 100644 --- a/teztnets_xyz_page/website/CNAME +++ b/teztnets_xyz_page/website/CNAME @@ -1 +1 @@ -teztnets.com +testnets.mavryk.org diff --git a/teztnets_xyz_page/website/_config.yml b/teztnets_xyz_page/website/_config.yml index 67506127..4bbda052 100644 --- a/teztnets_xyz_page/website/_config.yml +++ b/teztnets_xyz_page/website/_config.yml @@ -20,7 +20,7 @@ title: 🌮 Teztnets 🚧 baseurl: "" -url: "https://teztnets.com" # the base hostname & protocol for your site, e.g. http://example.com +url: "https://testnets.mavryk.org" # the base hostname & protocol for your site, e.g. http://example.com twitter_username: tacoinfra github_username: tacoinfra diff --git a/teztnets_xyz_page/website/_includes/header.html b/teztnets_xyz_page/website/_includes/header.html index 9e01aed6..c950bcbf 100644 --- a/teztnets_xyz_page/website/_includes/header.html +++ b/teztnets_xyz_page/website/_includes/header.html @@ -16,7 +16,7 @@ {%- endif -%} diff --git a/teztnets_xyz_page/website/about.markdown b/teztnets_xyz_page/website/about.markdown index 0a15eae3..cedd701c 100644 --- a/teztnets_xyz_page/website/about.markdown +++ b/teztnets_xyz_page/website/about.markdown @@ -1,6 +1,6 @@ --- layout: page -title: About Teztnets.com +title: About testnets.mavryk.org permalink: /about/ --- @@ -16,11 +16,11 @@ We have three kind of testnets: Teztnets is powered by [mavryk-k8s](https://mavryk-k8s.xyz), a collection of helm charts maintained by Mavryk Dynamics. It is deployed with [Pulumi](https://pulumi.com). -The [Teztnets Status page](https://status.teztnets.com) is powered by [Pyrometer](https://gitlab.com/tezos-kiln/pyrometer), a Tezos monitoring tool. +The [Teztnets Status page](https://status.testnets.mavryk.org) is powered by [Pyrometer](https://gitlab.com/tezos-kiln/pyrometer), a Tezos monitoring tool. The [github repo](https://github.com/tacoinfra/teztnets) has more information regarding these testnets, how they are configured, and how to deploy new ones. -Relevant Medium articles announcing Teztnets.com features: +Relevant Medium articles announcing testnets.mavryk.org features: * [Intro to Mondaynet and Dailynet](https://medium.com/the-aleph/continuous-tezos-protocol-testing-with-dailynet-and-mondaynet-92d4b084a9f6) * [Intro to Ghostnet](https://medium.com/the-aleph/introducing-ghostnet-1bf39976e61f) diff --git a/teztnets_xyz_page/website/index.markdown b/teztnets_xyz_page/website/index.markdown index 40f2b253..02f99ffc 100644 --- a/teztnets_xyz_page/website/index.markdown +++ b/teztnets_xyz_page/website/index.markdown @@ -4,4 +4,4 @@ layout: home Current testnets for the [Tezos](https://tezos.com) blockchain are listed here. [Read more](about/). -This list of Teztnets is also available in [json format](https://teztnets.com/teztnets.json). +This list of Teztnets is also available in [json format](https://testnets.mavryk.org/teztnets.json). From ee409e2b6daf3a49e700967c95606d94d598d055 Mon Sep 17 00:00:00 2001 From: Tristan Allaire Date: Mon, 26 Feb 2024 10:55:01 +0100 Subject: [PATCH 03/19] Atlasnet configuration added --- networks/atlasnet/README.md | 5 + networks/atlasnet/faucet_values.yaml | 55 ++++++++++ networks/atlasnet/values.yaml | 157 +++++++++++++++++++++++++++ 3 files changed, 217 insertions(+) create mode 100644 networks/atlasnet/README.md create mode 100644 networks/atlasnet/faucet_values.yaml create mode 100644 networks/atlasnet/values.yaml diff --git a/networks/atlasnet/README.md b/networks/atlasnet/README.md new file mode 100644 index 00000000..1c8d3c36 --- /dev/null +++ b/networks/atlasnet/README.md @@ -0,0 +1,5 @@ +Oxfordnet has 8 second blocks (twice faster than mainnet). + +Oxfordnet started on Nairobi protocol then upgraded to Oxford at the end of cycle 1 (the second cycle). + +Adaptive Issuance is disabled on Oxfordnet. To test Adaptive Issuance, please use Weeklynet or Dailynet. diff --git a/networks/atlasnet/faucet_values.yaml b/networks/atlasnet/faucet_values.yaml new file mode 100644 index 00000000..d756ba6e --- /dev/null +++ b/networks/atlasnet/faucet_values.yaml @@ -0,0 +1,55 @@ +images: + mavrykFaucet: ghcr.io/mavryk-network/mavryk-faucet:mavryk-protocol-refactoring + mavrykFaucetBackend: ghcr.io/mavryk-network/mavryk-faucet-backend:mavryk-protocol-refactoring + +config: + application: + name: "Mavryk Atlasnet Faucet" + googleCaptchaSiteKey: #filled in by pulumi + backendUrl: # filled in by pulumi + githubRepo: https://github.com/mavryk-network/mavryk-faucet + network: + name: # filled in by pulumi + rpcUrl: # filled in by pulumi + faucetAddress: tz1a4GT7THHaGDiTxgXoatDWcZfJ5j29z5RC + viewer: https://nairobi.tzstats.com + +# Value the server sets for the "Access-Control-Allow-Origin" header for CORS. +authorizedHost: "" # filled in by pulumi +# RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC +# service in the same namespace. If not set, defaults to `config.network.rpcUrl`. +backendRpcUrl: http://tezos-node-rpc:8732 +# If the backend requires CAPTCHA tokens to be submitted. +enableCaptcha: true + +# The minimum Tez allowed per request. +minTez: 1 +# The maximum Tez allowed per request. +maxTez: 12000 + +disableChallenges: false +# Minimum number of challenges required for the minimum Tez request. +minChallenges: 1 +# Maximum number of challenges required for the maximum Tez request. +# 6,605 challenges should take ~2h. +maxChallenges: 6605 +# Maximum number of challenges required for the maximum Tez request when a +# captcha is used. +# 390 challenges should take ~30m. +maxChallengesWithCaptcha: 390 +# How many bytes the challenge string should be. +challengeSize: 2048 +# Difficulty level for challenges. +difficulty: 4 + +redis: + url: redis://redis-master:6379 + +ingress: + enabled: true + annotations: + "kubernetes.io/ingress.class": "nginx" + "cert-manager.io/cluster-issuer": "letsencrypt-prod" + host: "" # faucet fqdn, filled in by pulumi + tls: [] # filled in by pulumi + diff --git a/networks/atlasnet/values.yaml b/networks/atlasnet/values.yaml new file mode 100644 index 00000000..97ee3f3c --- /dev/null +++ b/networks/atlasnet/values.yaml @@ -0,0 +1,157 @@ +accounts: + mavryk: + # mv1V4h45W3p4e1sjSBvRkK2uYbvkTnSuHg8g + key: edskS1oSBMgeLzU7dHxizjswEJipSXMoa1yA668v5bSZwPYAADC71qSwsdXXGSbBtA8eej5XJHCTxD96w9KG36FyrhVdxbNenw + is_bootstrap_baker_account: true + bootstrap_balance: '9700000000000' + +node_config_network: + activation_account_name: mavryk + chain_name: MAVRYK_ATLASNET_2024-02-23T10:39:51Z + genesis: + block: BLockGenesisGenesisGenesisGenesisGenesis7ddfecenZrc + protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P + timestamp: "2024-02-23T10:39:51Z" + +activation: + protocol_hash: PtAtLasjh71tv2N8SDMtjajR42wTSAd9xFTvXvhDuYfRJPRLSL2 + protocol_parameters: + preserved_cycles: 3 + blocks_per_cycle: 8192 + blocks_per_commitment: 64 + nonce_revelation_threshold: 4 + blocks_per_stake_snapshot: 512 + cycles_per_voting_period: 1 + hard_gas_limit_per_operation: '1040000' + hard_gas_limit_per_block: '2600000' + proof_of_work_threshold: '-1' + minimal_stake: '6000000000' + minimal_frozen_stake: '600000000' + vdf_difficulty: "10000000000" + origination_size: 257 + issuance_weights: + base_total_issued_per_minute: '85007812' + baking_reward_fixed_portion_weight: 5120 + baking_reward_bonus_weight: 5120 + attesting_reward_weight: 10240 + liquidity_baking_subsidy_weight: 1280 + seed_nonce_revelation_tip_weight: 1 + vdf_revelation_tip_weight: 1 + cost_per_byte: '250' + hard_storage_limit_per_operation: '60000' + quorum_max: 7000 + quorum_min: 2000 + min_proposal_quorum: 500 + liquidity_baking_toggle_ema_threshold: 1000000000 + max_operations_time_to_live: 240 + minimal_block_delay: "8" + delay_increment_per_round: "3" + consensus_committee_size: 7000 + consensus_threshold: 4667 + minimal_participation_ratio: + numerator: 2 + denominator: 3 + limit_of_delegation_over_baking: 19 + percentage_of_frozen_deposits_slashed_per_double_baking: 5 + percentage_of_frozen_deposits_slashed_per_double_attestation: 50 + cache_script_size: 100000000 + cache_stake_distribution_cycles: 8 + cache_sampler_state_cycles: 8 + dal_parametric: + feature_enable: false + number_of_slots: 16 + attestation_lag: 4 + attestation_threshold: 50 + blocks_per_epoch: 1 + redundancy_factor: 8 + page_size: 128 + slot_size: 32768 + number_of_shards: 64 + smart_rollup_arith_pvm_enable: false + smart_rollup_origination_size: 6314 + smart_rollup_challenge_window_in_blocks: 40 + smart_rollup_stake_amount: "10000000000" + smart_rollup_commitment_period_in_blocks: 20 + smart_rollup_max_lookahead_in_blocks: 30000 + smart_rollup_max_active_outbox_levels: 20160 + smart_rollup_max_outbox_messages_per_level: 100 + smart_rollup_number_of_sections_in_dissection: 32 + smart_rollup_timeout_period_in_blocks: 500 + smart_rollup_max_number_of_cemented_commitments: 5 + smart_rollup_max_number_of_parallel_games: 32 + smart_rollup_reveal_activation_level: + raw_data: + Blake2B: 0 + metadata: 0 + dal_page: 2147483646 + dal_parameters: 2147483646 + smart_rollup_private_enable: true + smart_rollup_riscv_pvm_enable: false + zk_rollup_enable: false + zk_rollup_origination_size: 4000 + zk_rollup_min_pending_to_process: 10 + zk_rollup_max_ticket_payload_size: 2048 + global_limit_of_staking_over_baking: 5 + edge_of_staking_over_delegation: 2 + adaptive_issuance_launch_ema_threshold: 1600000000 + adaptive_rewards_params: + issuance_ratio_min: + numerator: "1" + denominator: "2000" + issuance_ratio_max: + numerator: "1" + denominator: "20" + max_bonus: "50000000000000" + growth_rate: + numerator: "1" + denominator: "100" + center_dz: + numerator: "1" + denominator: "2" + radius_dz: + numerator: "1" + denominator: "50" + adaptive_issuance_activation_vote_enable: false + autostaking_enable: true + testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" + +nodes: + tezos-baking-node: + env: + all: + TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" + instances: + - bake_using_accounts: + - mavryk + config: + shell: + history_mode: archive + rpc: + cors-headers: [ "content-type" ] + cors-origin: [ "*" ] + is_bootstrap_node: true + runs: + - octez_node + - baker + - accuser + - vdf + readiness_probe: false + storage_size: 160Gi + # Overwrite default values.yaml rolling-node + rolling-node: null + +full_snapshot_url: null +rolling_snapshot_url: null +rolling_tarball_url: null +archive_tarball_url: null +images: + octez: mavrykdynamics/mavryk:v19.1 + +protocols: + - command: PtAtlas + vote: + liquidity_baking_toggle_vote: "pass" + adaptive_issuance_vote: "on" + +bootstrap_peers: + - rpc.mavryk.network/atlasnet From ac303566f12ed2e5098ac2a3b29202b56994ac4f Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Wed, 1 May 2024 14:26:15 +0200 Subject: [PATCH 04/19] RPC Urls updated --- networks/atlasnet/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/networks/atlasnet/values.yaml b/networks/atlasnet/values.yaml index 97ee3f3c..1632a2ce 100644 --- a/networks/atlasnet/values.yaml +++ b/networks/atlasnet/values.yaml @@ -154,4 +154,4 @@ protocols: adaptive_issuance_vote: "on" bootstrap_peers: - - rpc.mavryk.network/atlasnet + - atlasnet.rpc.mavryk.network From 2ce7633967f6eb322203fe46fc591d1068094369 Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Tue, 4 Jun 2024 11:50:08 +0200 Subject: [PATCH 05/19] Pulumi disabled + repo vars used for frontend deployment --- .github/workflows/_publish.yml | 2 +- .github/workflows/cron.yml | 16 ++++++++-------- .github/workflows/push.yml | 17 +++++++++-------- README.md | 2 +- networks/hangzhounet/POSTMORTEM.md | 4 ++-- 5 files changed, 21 insertions(+), 20 deletions(-) diff --git a/.github/workflows/_publish.yml b/.github/workflows/_publish.yml index d7800dec..8821ad35 100644 --- a/.github/workflows/_publish.yml +++ b/.github/workflows/_publish.yml @@ -57,7 +57,7 @@ jobs: with: deploy_key: ${{ secrets.TEZTNETS_COM_DEPLOY_KEY }} publish_dir: ./target/release - external_repository: oxheadalpha/teztnets + external_repository: mavryk-network/testnets enable_jekyll: true # End Temporary - deploy to testnets.mavryk.org diff --git a/.github/workflows/cron.yml b/.github/workflows/cron.yml index 61ec4993..543bfcf4 100644 --- a/.github/workflows/cron.yml +++ b/.github/workflows/cron.yml @@ -6,12 +6,12 @@ on: - cron: "0 0 * * *" jobs: - up: - name: Pulumi Up - uses: ./.github/workflows/_pulumi.yml - secrets: inherit - with: - pulumi-command: up + # up: + # name: Pulumi Up + # uses: ./.github/workflows/_pulumi.yml + # secrets: inherit + # with: + # pulumi-command: up publish: name: testnets.mavryk.org build @@ -19,5 +19,5 @@ jobs: uses: ./.github/workflows/_publish.yml secrets: inherit with: - networks: ${{ needs.up.outputs.networks }} - teztnets: ${{ needs.up.outputs.teztnets }} + networks: ${{ vars.NETWORKS }} + teztnets: ${{ vars.TESTNETS }} diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 01db1a48..5f849adc 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -4,14 +4,15 @@ on: push: branches: - main + - mavryk-protocol-refactoring jobs: - up: - name: Pulumi Up - uses: ./.github/workflows/_pulumi.yml - secrets: inherit - with: - pulumi-command: up + # up: + # name: Pulumi Up + # uses: ./.github/workflows/_pulumi.yml + # secrets: inherit + # with: + # pulumi-command: up publish: name: testnets.mavryk.org build @@ -19,5 +20,5 @@ jobs: uses: ./.github/workflows/_publish.yml secrets: inherit with: - networks: ${{ needs.up.outputs.networks }} - teztnets: ${{ needs.up.outputs.teztnets }} + networks: ${{ vars.NETWORKS }} + teztnets: ${{ vars.TESTNETS }} diff --git a/README.md b/README.md index 96ff7bba..3057e474 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ We support the beacon-compatible Tezos Faucet. ### Injection of contracts at genesis -A [collection of raw Michelson contracts](https://github.com/oxheadalpha/teztnets/tree/main/bootstrap_contracts) can be optionally deployed in any Teztnet at genesis. +A [collection of raw Michelson contracts](https://github.com/mavryk-network/testnets/tree/main/bootstrap_contracts) can be optionally deployed in any Teztnet at genesis. ### Injection of Smart Rollups at genesis diff --git a/networks/hangzhounet/POSTMORTEM.md b/networks/hangzhounet/POSTMORTEM.md index 19156da9..a7d1e0f2 100644 --- a/networks/hangzhounet/POSTMORTEM.md +++ b/networks/hangzhounet/POSTMORTEM.md @@ -28,11 +28,11 @@ Considering we had 18 bootstrap bakers, 2 million tez per baker would have been ### Fresh genesis hash -I re-used the genesis block has from Granadanet but Romain [corrected me](https://github.com/oxheadalpha/teztnets/pull/51#discussion_r713088372). +I re-used the genesis block has from Granadanet but Romain [corrected me](https://github.com/mavryk-network/testnets/pull/51#discussion_r713088372). It is better to generate a new hash. Must understand how to do it, and maybe find ways to automate new hash creation. -The [PR](https://github.com/oxheadalpha/teztnets/pull/51) has more comments from Romain. +The [PR](https://github.com/mavryk-network/testnets/pull/51) has more comments from Romain. ### Block 0 protocol should be mainnet From f8eb52c91d9ae25d1328da94506a8be8989e85dd Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Tue, 4 Jun 2024 11:50:53 +0200 Subject: [PATCH 06/19] Pulumi disabled + repo vars used for frontend deployment --- .github/workflows/cron.yml | 2 +- .github/workflows/push.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cron.yml b/.github/workflows/cron.yml index 543bfcf4..993ab500 100644 --- a/.github/workflows/cron.yml +++ b/.github/workflows/cron.yml @@ -15,7 +15,7 @@ jobs: publish: name: testnets.mavryk.org build - needs: up + # needs: up uses: ./.github/workflows/_publish.yml secrets: inherit with: diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 5f849adc..2cd96035 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -16,7 +16,7 @@ jobs: publish: name: testnets.mavryk.org build - needs: up + # needs: up uses: ./.github/workflows/_publish.yml secrets: inherit with: From 29f7b594b27ef04f4d5934f1c0a0d411363ade01 Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Tue, 4 Jun 2024 12:04:45 +0200 Subject: [PATCH 07/19] Trigger build --- .github/workflows/preview.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/preview.yml b/.github/workflows/preview.yml index 0fc8bfe4..3f07387d 100644 --- a/.github/workflows/preview.yml +++ b/.github/workflows/preview.yml @@ -4,14 +4,14 @@ on: branches: - main jobs: - preview: - name: Pulumi Preview - # don't do this on fork - this would not work because secrets would not be accessible - if: github.event.pull_request.head.repo.full_name == github.repository - uses: ./.github/workflows/_pulumi.yml - secrets: inherit - with: - pulumi-command: preview + # preview: + # name: Pulumi Preview + # # don't do this on fork - this would not work because secrets would not be accessible + # if: github.event.pull_request.head.repo.full_name == github.repository + # uses: ./.github/workflows/_pulumi.yml + # secrets: inherit + # with: + # pulumi-command: preview validate-yaml: name: Validate YAML Files From dfc5db5f83e6f376444bcdf9e2b4244fc9350ccf Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Tue, 4 Jun 2024 12:18:11 +0200 Subject: [PATCH 08/19] Testnets page refactored --- README.md | 4 +- grafana_dashboards/dal-basic.json | 24 +- grafana_dashboards/octez-compact.json | 80 ++-- index.ts | 12 +- mavryk/chain.ts | 485 +++++++++++++++++++++++ networks/atlasnet/values.yaml | 4 +- networks/dailynet/values.yaml | 4 +- networks/ghostnet/values.yaml | 4 +- networks/hangzhounet/POSTMORTEM.md | 54 --- networks/hangzhounet/values.yaml | 237 ----------- networks/jakartanet/README.md | 1 - networks/jakartanet/faucet_values.yaml | 36 -- networks/jakartanet/values.yaml | 224 ----------- networks/kathmandunet/README.md | 1 - networks/kathmandunet/faucet_values.yaml | 36 -- networks/kathmandunet/values.yaml | 286 ------------- networks/limanet/README.md | 1 - networks/limanet/faucet_values.yaml | 36 -- networks/limanet/values.yaml | 296 -------------- networks/mumbainet/README.md | 1 - networks/mumbainet/faucet_values.yaml | 30 -- networks/mumbainet/values.yaml | 252 ------------ networks/nairobinet/README.md | 3 - networks/nairobinet/faucet_values.yaml | 55 --- networks/nairobinet/values.yaml | 158 -------- networks/oxfordnet/values.yaml | 4 +- networks/weeklynet/values.yaml | 4 +- tezos/chain.ts | 8 +- tezos/imageResolver.ts | 2 +- tezos/metricsPage.ts | 4 +- tezos/nodes.ts | 8 +- teztnets_xyz_page/release.py | 24 +- teztnets_xyz_page/teztnet_page.md.jinja2 | 34 +- teztnets_xyz_page/website/_config.yml | 6 +- teztnets_xyz_page/website/about.markdown | 14 +- teztnets_xyz_page/website/index.markdown | 4 +- 36 files changed, 607 insertions(+), 1829 deletions(-) create mode 100644 mavryk/chain.ts delete mode 100644 networks/hangzhounet/POSTMORTEM.md delete mode 100644 networks/hangzhounet/values.yaml delete mode 100644 networks/jakartanet/README.md delete mode 100644 networks/jakartanet/faucet_values.yaml delete mode 100644 networks/jakartanet/values.yaml delete mode 100644 networks/kathmandunet/README.md delete mode 100644 networks/kathmandunet/faucet_values.yaml delete mode 100644 networks/kathmandunet/values.yaml delete mode 100644 networks/limanet/README.md delete mode 100644 networks/limanet/faucet_values.yaml delete mode 100644 networks/limanet/values.yaml delete mode 100644 networks/mumbainet/README.md delete mode 100644 networks/mumbainet/faucet_values.yaml delete mode 100644 networks/mumbainet/values.yaml delete mode 100644 networks/nairobinet/README.md delete mode 100644 networks/nairobinet/faucet_values.yaml delete mode 100644 networks/nairobinet/values.yaml diff --git a/README.md b/README.md index 3057e474..838866ab 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ A [collection of raw Michelson contracts](https://github.com/mavryk-network/test ### Injection of Smart Rollups at genesis -Rollups can be injected at genesis of your test chain. Teztnets supports extraction of the EVM Rollup from the Octez container, and its injection at a predetermined address. +Rollups can be injected at genesis of your test chain. Teztnets supports extraction of the EVM Rollup from the Mavkit container, and its injection at a predetermined address. ### Bootstrap baker and bootstrap p2p endpoint @@ -34,7 +34,7 @@ Example: ### `--network` endpoint for Tezos node -Tezos nodes supports downloading of network specification from a json endpoint: `octez-node config init --network https://testnets.mavryk.org/` +Tezos nodes supports downloading of network specification from a json endpoint: `mavkit-node config init --network https://testnets.mavryk.org/` The Teztnet platform creates and exposes such endpoints. diff --git a/grafana_dashboards/dal-basic.json b/grafana_dashboards/dal-basic.json index f1ff4f71..1dee8c5f 100644 --- a/grafana_dashboards/dal-basic.json +++ b/grafana_dashboards/dal-basic.json @@ -1468,14 +1468,14 @@ "steppedLine": false, "targets": [ { - "expr": "deriv(octez_p2p_io_scheduler_total_recv{pod=\"$node_instance\"}[1m]) / 1000", + "expr": "deriv(mavkit_p2p_io_scheduler_total_recv{pod=\"$node_instance\"}[1m]) / 1000", "format": "time_series", "intervalFactor": 2, "legendFormat": "Received data (KB)", "refId": "A" }, { - "expr": "deriv(octez_p2p_io_scheduler_total_sent{pod=\"$node_instance\"}[1m]) / 1000", + "expr": "deriv(mavkit_p2p_io_scheduler_total_sent{pod=\"$node_instance\"}[1m]) / 1000", "format": "time_series", "intervalFactor": 2, "legendFormat": "Sent data (KB)", @@ -1563,14 +1563,14 @@ "steppedLine": false, "targets": [ { - "expr": "octez_p2p_connections_outgoing{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_connections_outgoing{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Outgoing connections", "refId": "A" }, { - "expr": "octez_p2p_connections_incoming{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_connections_incoming{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Incoming connections", @@ -1659,21 +1659,21 @@ "steppedLine": false, "targets": [ { - "expr": "octez_p2p_peers_disconnected{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_peers_disconnected{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Disconnected peers", "refId": "A" }, { - "expr": "octez_p2p_peers_running{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_peers_running{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Running peers", "refId": "B" }, { - "expr": "octez_p2p_points_greylisted{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_points_greylisted{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Waiting to reconnect", @@ -1762,21 +1762,21 @@ "steppedLine": false, "targets": [ { - "expr": "octez_p2p_points_disconnected{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_points_disconnected{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Disconnected points", "refId": "A" }, { - "expr": "octez_p2p_points_running{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_points_running{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Running points", "refId": "B" }, { - "expr": "octez_p2p_points_trusted{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_points_trusted{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Trusted points", @@ -1826,7 +1826,7 @@ "style": "dark", "tags": [ "tezos", - "octez", + "mavkit", "dal" ], "templating": { @@ -1903,6 +1903,6 @@ ] }, "timezone": "browser", - "title": "Octez DAL Node Dashboard", + "title": "Mavkit DAL Node Dashboard", "version": 0 } diff --git a/grafana_dashboards/octez-compact.json b/grafana_dashboards/octez-compact.json index 9fab2e67..b3677f16 100644 --- a/grafana_dashboards/octez-compact.json +++ b/grafana_dashboards/octez-compact.json @@ -71,7 +71,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_validator_chain_is_bootstrapped{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_is_bootstrapped{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -148,7 +148,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_validator_chain_synchronisation_status{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_synchronisation_status{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -221,7 +221,7 @@ "tableColumn": "", "targets": [ { - "expr": "octez_version{pod=\"$node_instance\"}", + "expr": "mavkit_version{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -303,7 +303,7 @@ "tableColumn": "", "targets": [ { - "expr": "octez_version{pod=\"$node_instance\"}", + "expr": "mavkit_version{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -385,7 +385,7 @@ "tableColumn": "", "targets": [ { - "expr": "(label_replace(octez_version{pod=\"$node_instance\"},\"commit_hash_short\" ,\"$1\",\"commit_hash\",\"^(.{8}).*$\"))", + "expr": "(label_replace(mavkit_version{pod=\"$node_instance\"},\"commit_hash_short\" ,\"$1\",\"commit_hash\",\"^(.{8}).*$\"))", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -550,7 +550,7 @@ "tableColumn": "", "targets": [ { - "expr": "octez_validator_chain_head_level{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_head_level{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -591,7 +591,7 @@ ], "targets": [ { - "expr": "octez_validator_chain_head_cycle{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_head_cycle{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -599,7 +599,7 @@ "refId": "A" }, { - "expr": "octez_store_caboose_level{pod=\"$node_instance\"}", + "expr": "mavkit_store_caboose_level{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -607,7 +607,7 @@ "refId": "B" }, { - "expr": "octez_store_checkpoint_level{pod=\"$node_instance\"}", + "expr": "mavkit_store_checkpoint_level{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -615,7 +615,7 @@ "refId": "C" }, { - "expr": "octez_store_savepoint_level{pod=\"$node_instance\"}", + "expr": "mavkit_store_savepoint_level{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -649,7 +649,7 @@ ], "targets": [ { - "expr": "octez_p2p_connections_incoming{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_connections_incoming{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -657,7 +657,7 @@ "refId": "A" }, { - "expr": "octez_p2p_points_trusted{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_points_trusted{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -665,7 +665,7 @@ "refId": "B" }, { - "expr": "octez_p2p_connections_private{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_connections_private{pod=\"$node_instance\"}", "format": "time_series", "instant": true, "intervalFactor": 2, @@ -724,14 +724,14 @@ "steppedLine": false, "targets": [ { - "expr": "octez_p2p_connections_outgoing{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_connections_outgoing{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Outgoing connections", "refId": "A" }, { - "expr": "octez_p2p_connections_incoming{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_connections_incoming{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Incoming connections", @@ -817,28 +817,28 @@ "steppedLine": false, "targets": [ { - "expr": "octez_validator_block_operations_per_pass{pass_id=\"0\",pod=\"$node_instance\"}", + "expr": "mavkit_validator_block_operations_per_pass{pass_id=\"0\",pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Consensus", "refId": "A" }, { - "expr": "octez_validator_block_operations_per_pass{pass_id=\"1\",pod=\"$node_instance\"}", + "expr": "mavkit_validator_block_operations_per_pass{pass_id=\"1\",pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Vote", "refId": "B" }, { - "expr": "octez_validator_block_operations_per_pass{pass_id=\"2\",pod=\"$node_instance\"}", + "expr": "mavkit_validator_block_operations_per_pass{pass_id=\"2\",pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Anonymous", "refId": "C" }, { - "expr": "octez_validator_block_operations_per_pass{pass_id=\"3\",pod=\"$node_instance\"}", + "expr": "mavkit_validator_block_operations_per_pass{pass_id=\"3\",pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Manager", @@ -927,7 +927,7 @@ "steppedLine": false, "targets": [ { - "expr": "octez_validator_chain_head_level{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_head_level{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Head level", @@ -1014,7 +1014,7 @@ "steppedLine": false, "targets": [ { - "expr": "octez_validator_block_last_finished_request_completion_timestamp{pod=\"$node_instance\"} - octez_validator_block_last_finished_request_treatment_timestamp{pod=\"$node_instance\"}", + "expr": "mavkit_validator_block_last_finished_request_completion_timestamp{pod=\"$node_instance\"} - mavkit_validator_block_last_finished_request_treatment_timestamp{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Validation time", @@ -1101,7 +1101,7 @@ "steppedLine": false, "targets": [ { - "expr": "octez_validator_chain_head_consumed_gas{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_head_consumed_gas{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Gas consumed", @@ -1188,7 +1188,7 @@ "steppedLine": false, "targets": [ { - "expr": "octez_validator_chain_head_round{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_head_round{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Round", @@ -1275,7 +1275,7 @@ "steppedLine": false, "targets": [ { - "expr": "octez_store_last_written_block_size{pod=\"$node_instance\"}", + "expr": "mavkit_store_last_written_block_size{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Written block size", @@ -1362,7 +1362,7 @@ "steppedLine": false, "targets": [ { - "expr": "octez_store_alternate_heads_count{pod=\"$node_instance\"}", + "expr": "mavkit_store_alternate_heads_count{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Alternate heads count", @@ -1452,7 +1452,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_store_invalid_blocks{pod=\"$node_instance\"}", + "expr": "mavkit_store_invalid_blocks{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", @@ -1501,7 +1501,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_validator_chain_branch_switch_count{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_branch_switch_count{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", @@ -1550,7 +1550,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_store_last_merge_time{pod=\"$node_instance\"}", + "expr": "mavkit_store_last_merge_time{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "Merge time", @@ -1599,7 +1599,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_validator_chain_head_round{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_head_round{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", @@ -1657,7 +1657,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_validator_block_last_finished_request_completion_timestamp{pod=\"$node_instance\"} - octez_validator_block_last_finished_request_treatment_timestamp{pod=\"$node_instance\"}", + "expr": "mavkit_validator_block_last_finished_request_completion_timestamp{pod=\"$node_instance\"} - mavkit_validator_block_last_finished_request_treatment_timestamp{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "blocks validation mean", @@ -1715,7 +1715,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_validator_chain_last_finished_request_completion_timestamp{pod=\"$node_instance\"} - octez_validator_chain_last_finished_request_treatment_timestamp{pod=\"$node_instance\"}", + "expr": "mavkit_validator_chain_last_finished_request_completion_timestamp{pod=\"$node_instance\"} - mavkit_validator_chain_last_finished_request_treatment_timestamp{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", @@ -1773,35 +1773,35 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_validator_peer_system_error{pod=\"$node_instance\"}", + "expr": "mavkit_validator_peer_system_error{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", "refId": "A" }, { - "expr": "octez_validator_peer_too_short_locator{pod=\"$node_instance\"}", + "expr": "mavkit_validator_peer_too_short_locator{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", "refId": "B" }, { - "expr": "octez_validator_peer_unavailable_protocol{pod=\"$node_instance\"}", + "expr": "mavkit_validator_peer_unavailable_protocol{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", "refId": "C" }, { - "expr": "octez_validator_peer_unknown_ancestor{pod=\"$node_instance\"}", + "expr": "mavkit_validator_peer_unknown_ancestor{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", "refId": "D" }, { - "expr": "octez_validator_peer_unknown_error{pod=\"$node_instance\"}", + "expr": "mavkit_validator_peer_unknown_error{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", @@ -1862,7 +1862,7 @@ "pluginVersion": "7", "targets": [ { - "expr": "octez_p2p_connections_incoming{pod=\"$node_instance\"}", + "expr": "mavkit_p2p_connections_incoming{pod=\"$node_instance\"}", "format": "time_series", "intervalFactor": 2, "legendFormat": "", @@ -1880,7 +1880,7 @@ "style": "dark", "tags": [ "tezos", - "octez" + "mavkit" ], "templating": { "list": [ @@ -1894,7 +1894,7 @@ "multi": false, "name": "node_instance", "options": [ ], - "query": "label_values(octez_version,pod)", + "query": "label_values(mavkit_version,pod)", "refresh": 1, "regex": "", "sort": 0, @@ -1956,6 +1956,6 @@ ] }, "timezone": "browser", - "title": "Octez compact dashboard", + "title": "Mavkit compact dashboard", "version": 0 } diff --git a/index.ts b/index.ts index 69063c6e..4f9dc0b6 100644 --- a/index.ts +++ b/index.ts @@ -113,7 +113,7 @@ const dailynet_chain = new TezosChain( category: periodicCategory, humanName: "Dailynet", description: - "A testnet that restarts every day launched from tezos/tezos master branch and protocol alpha.", + "A testnet that restarts every day launched from mavrykdynamics/mavryk-protocol master branch and protocol alpha.", schedule: "0 0 * * *", activationBucket: activationBucket, bootstrapContracts: [ @@ -147,7 +147,7 @@ const weeklynet_chain = new TezosChain( category: periodicCategory, humanName: "Weeklynet", description: - "A testnet that restarts every Wednesday launched from tezos/tezos master branch. It runs Oxford for 4 cycles then upgrades to proto Alpha.", + "A testnet that restarts every Wednesday launched from mavrykdynamics/mavryk-protocol master branch. It runs Oxford for 4 cycles then upgrades to proto Alpha.", schedule: "0 0 * * WED", activationBucket: activationBucket, bootstrapContracts: [ @@ -189,8 +189,8 @@ const ghostnet_chain = new TezosNodes( chainName: "ghostnet", rpcFqdn: `rpc.ghostnet.${domainNameCom}`, p2pFqdn: `ghostnet.${domainNameCom}`, - octezRollingVersion: ghostnetRollingVersion, - octezArchiveVersion: ghostnetArchiveVersion, + mavkitRollingVersion: ghostnetRollingVersion, + mavkitArchiveVersion: ghostnetArchiveVersion, chartRepoVersion: "6.25.0", rollingPvcSize: "50Gi", archivePvcSize: "750Gi" @@ -411,7 +411,7 @@ const ghostnetTeztnet = { category: "Long-running Teztnets", chain_name: "TEZOS_ITHACANET_2022-01-25T15:00:00Z", description: "Ghostnet is the long-running testnet for Tezos.", - docker_build: `tezos/tezos:${ghostnetRollingVersion}`, + docker_build: `mavrykdynamics/mavryk-protocol:${ghostnetRollingVersion}`, faucet_url: `https://faucet.ghostnet.${domainNameCom}`, git_ref: ghostnetRollingVersion, human_name: "Ghostnet", @@ -443,7 +443,7 @@ const mainnetMetadata = { category: "Long-running Teztnets", chain_name: "TEZOS_MAINNET", description: "Tezos Mainnet", - docker_build: `tezos/tezos:${ghostnetRollingVersion}`, + docker_build: `mavrykdynamics/mavryk-protocol:${ghostnetRollingVersion}`, git_ref: ghostnetRollingVersion, human_name: "Mainnet", indexers: [ diff --git a/mavryk/chain.ts b/mavryk/chain.ts new file mode 100644 index 00000000..e3f33fea --- /dev/null +++ b/mavryk/chain.ts @@ -0,0 +1,485 @@ +import * as gcp from "@pulumi/gcp" +import * as k8s from "@pulumi/kubernetes" +import * as pulumi from "@pulumi/pulumi" +import * as cronParser from "cron-parser" +import * as fs from "fs" +import * as YAML from "yaml" +const mime = require("mime") +import { getChartParams } from './chartResolver' +import { MavrykImageResolver } from "./imageResolver" + +export interface MavrykParameters { + readonly activationBucket: gcp.storage.Bucket + readonly bootstrapContracts?: string[] + readonly category: string + readonly description: string + readonly bakingPrivateKey: pulumi.Output + readonly humanName: string + readonly indexers?: { name: string; url: string }[] + readonly chartPath?: string + readonly chartRepoVersion?: string + readonly bootstrapPeers?: string[] + readonly rpcUrls?: string[] + readonly helmValuesFile: string + readonly schedule?: string +} + +const gcpRegion = "us-central1"; +const domainName = 'testnets.mavryk.org'; +const domainNameXyz = 'testnets.mavryk.org'; + +/** + * Deploy a mavryk-k8s topology in a k8s cluster. + * Supports either local charts or charts from a repo + */ + +export class MavrykChain extends pulumi.ComponentResource { + readonly name: string + readonly params: MavrykParameters + readonly mavrykHelmValues: any + readonly namespace: k8s.core.v1.Namespace + readonly dalNodes: { + [name: string]: { + humanName: string; + rpc: string; + p2p: string; + }; + }; + + /** + * Deploys a private chain on a Kubernetes cluster. + * @param name The name of the Pulumi resource. + * @param params Helm chart values and chain bootstrap parameters + * @param provider The Kubernetes cluster to deploy it into. + */ + constructor( + params: MavrykParameters, + provider: k8s.Provider, + opts?: pulumi.ResourceOptions + ) { + const inputs: pulumi.Inputs = { + options: opts, + } + + let name: string; + if (params.schedule) { + const deployDate = new Date( + cronParser + .parseExpression(params.schedule, { utc: true }) + .prev() + .toLocaleString() + ) + name = + `${params.humanName.toLowerCase()}-${ + deployDate.toISOString().split("T")[0] + }` + } else { + name = params.humanName.toLowerCase() + } + super("pulumi-contrib:components:MavrykChain", name, inputs, opts) + + this.params = params + this.name = name + this.dalNodes = {} + + this.mavrykHelmValues = YAML.parse( + fs.readFileSync(this.params.helmValuesFile, "utf8") + ); + if (this.name == "nairobinet") { + this.mavrykHelmValues["accounts"]["oxheadbaker"]["key"] = this.params.bakingPrivateKey + } else { + this.mavrykHelmValues["accounts"]["teztnetsbaker"]["key"] = this.params.bakingPrivateKey + } + if (this.params.schedule) { + const deployDate = new Date( + cronParser + .parseExpression(this.params.schedule, { utc: true }) + .prev() + .toLocaleString() + ) + const imageResolver = new MavrykImageResolver() + this.mavrykHelmValues["images"]["mavkit"] = + pulumi + .output(imageResolver.getLatestTagAsync(deployDate)) + .apply((tag) => `${imageResolver.image}:${tag}`) + // this is a trick to change mondaynet's name when it needs to be respun. + // if the chain has already launched but gets bricked because it can no longer upgrade from one proto to the next, + // change the date below. It will start with a different chainId. + // This way, it won't mix with the existing mondaynet and will be able to sync. + // Otherwise, the old broken mondaynet will mix with the new one and you'll never be able to produce + // another genesis block. + this.mavrykHelmValues["node_config_network"]["chain_name"] = + `TEZOS-${this.params.humanName.toUpperCase()}-${deployDate.toISOString()}` + this.mavrykHelmValues["node_config_network"]["genesis"]["timestamp"] = deployDate.toISOString(); + } + + if (params.bootstrapContracts) { + params.bootstrapContracts.forEach((contractFile) => { + let contractFullName = `${name}-${contractFile}`; + + // Create a new GCP storage object + new gcp.storage.BucketObject(contractFullName, { + bucket: params.activationBucket.name, + name: contractFullName, + source: new pulumi.asset.FileAsset(`bootstrap_contracts/${contractFile}`), + contentType: mime.getType(contractFile) || undefined, + }); + + // Push the URL to the helm values + if (!this.mavrykHelmValues["activation"]["bootstrap_contract_urls"]) { + this.mavrykHelmValues["activation"]["bootstrap_contract_urls"] = []; + } + this.mavrykHelmValues["activation"]["bootstrap_contract_urls"].push( + pulumi.interpolate`https://storage.googleapis.com/${params.activationBucket.name}/${contractFullName}` + ); + }); + } + + this.namespace = new k8s.core.v1.Namespace( + this.name, + { metadata: { name: name } }, + { provider: provider } + ) + + + // RPC Ingress + const rpcDomain = `rpc.${name}.${domainName}` + + const rpcIngName = `${rpcDomain}-ingress` + new k8s.networking.v1.Ingress( + rpcIngName, + { + metadata: { + namespace: this.namespace.metadata.name, + name: rpcIngName, + annotations: { + "kubernetes.io/ingress.class": "nginx", + "cert-manager.io/cluster-issuer": "letsencrypt-prod", + "nginx.ingress.kubernetes.io/enable-cors": "true", + "nginx.ingress.kubernetes.io/cors-allow-origin": "*", + }, + labels: { app: "mavryk-node" }, + }, + spec: { + rules: [ + { + host: rpcDomain, + http: { + paths: [ + { + path: "/", + pathType: "Prefix", + backend: { + service: { + name: "mavryk-node-rpc", + port: { + name: "rpc", + }, + }, + }, + }, + ], + }, + }, + ], + tls: [ + { + hosts: [rpcDomain], + secretName: `${rpcDomain}-secret`, + }, + ], + }, + }, + { provider, parent: this } + ) + // RPC Ingress + const rpcDomainCom = `rpc.${name}.${domainNameXyz}` + + const rpcIngNameCom = `${rpcDomainCom}-ingress` + new k8s.networking.v1.Ingress( + rpcIngNameCom, + { + metadata: { + namespace: this.namespace.metadata.name, + name: rpcIngNameCom, + annotations: { + "kubernetes.io/ingress.class": "nginx", + "cert-manager.io/cluster-issuer": "letsencrypt-prod", + "nginx.ingress.kubernetes.io/enable-cors": "true", + "nginx.ingress.kubernetes.io/cors-allow-origin": "*", + }, + labels: { app: "mavryk-node" }, + }, + spec: { + rules: [ + { + host: rpcDomainCom, + http: { + paths: [ + { + path: "/", + pathType: "Prefix", + backend: { + service: { + name: "mavryk-node-rpc", + port: { + name: "rpc", + }, + }, + }, + }, + ], + }, + }, + ], + tls: [ + { + hosts: [rpcDomainCom], + secretName: `${rpcDomainCom}-secret`, + }, + ], + }, + }, + { provider, parent: this } + ) + + + // Rollup + if ( + this.mavrykHelmValues.smartRollupNodes && + this.mavrykHelmValues.smartRollupNodes.length != 0 + ) { + let rollupFqdn = `evm-rollup-node.${name}.${domainName}` + let rollupIngressParams = { + enabled: true, + host: rollupFqdn, + labels: { + app: "rollup-evm", + }, + annotations: { + "kubernetes.io/ingress.class": "nginx", + "cert-manager.io/cluster-issuer": "letsencrypt-prod", + "nginx.ingress.kubernetes.io/enable-cors": "true", + "nginx.ingress.kubernetes.io/cors-allow-origin": "*", + }, + tls: [ + { + hosts: [rollupFqdn], + secretName: `${rollupFqdn}-secret`, + }, + ], + } + this.mavrykHelmValues.smartRollupNodes.evm.ingress = rollupIngressParams + let evmProxyFqdn = `evm.${name}.${domainName}` + let evmProxyIngressParams = { + enabled: true, + host: evmProxyFqdn, + labels: { + app: "evm-proxy", + }, + annotations: { + "kubernetes.io/ingress.class": "nginx", + "cert-manager.io/cluster-issuer": "letsencrypt-prod", + "nginx.ingress.kubernetes.io/enable-cors": "true", + "nginx.ingress.kubernetes.io/cors-allow-origin": "*", + }, + tls: [ + { + hosts: [evmProxyFqdn], + secretName: `${evmProxyFqdn}-secret`, + }, + ], + } + this.mavrykHelmValues.smartRollupNodes.evm.evm_proxy.ingress = + evmProxyIngressParams + } + + if (this.mavrykHelmValues.dalNodes && this.mavrykHelmValues.dalNodes.length !== 0) { + // We define both DAL nodes: the bootstrap node for the network, and the attester. + // This is different than the L1, where the same node does everything. + // Gossipsub requires separation from the bootstrap node and the nodes that actually + // does the duties. + const dalP2pPort = 11732; + + Object.entries({ + "dal-bootstrap": { + humanName: 'DAL Bootstrap', + rpcFqdn: `dal-bootstrap-rpc.${name}.${domainName}`, + p2pFqdn: `dal.${name}.${domainName}`, + }, + "dal-dal1": { + humanName: 'DAL Teztnets Attester', + rpcFqdn: `dal-attester-rpc.${name}.${domainName}`, + p2pFqdn: `dal1.${name}.${domainName}`, + + } + }).forEach(([dalNodeName, { humanName, rpcFqdn, p2pFqdn }]) => { + + const ingressParams = { + enabled: true, + host: rpcFqdn, + labels: { app: `dal-${dalNodeName}` }, + annotations: { + "kubernetes.io/ingress.class": "nginx", + "cert-manager.io/cluster-issuer": "letsencrypt-prod", + "nginx.ingress.kubernetes.io/enable-cors": "true", + "nginx.ingress.kubernetes.io/cors-allow-origin": "*", + }, + tls: [{ hosts: [rpcFqdn], secretName: `${rpcFqdn}-secret` }], + }; + this.mavrykHelmValues.dalNodes[dalNodeName].ingress = ingressParams; + + // Setting up GCP static IP address + const staticIPName = `${name}-${dalNodeName}-ip`; + const staticIP = new gcp.compute.Address(staticIPName, { + name: staticIPName, + region: gcpRegion, + }); + + const serviceName = `${name}-${dalNodeName}`; + new k8s.core.v1.Service(`${serviceName}-p2p-lb`, { + metadata: { + namespace: this.namespace.metadata.name, + name: serviceName, + annotations: { + "external-dns.alpha.kubernetes.io/hostname": p2pFqdn, + "service.beta.kubernetes.io/gcp-load-balancer-type": "External", + "networking.gke.io/load-balancer-type": "External", + }, + }, + spec: { + ports: [{ port: dalP2pPort, targetPort: dalP2pPort, protocol: "TCP" }], + selector: { app: `dal-${dalNodeName}` }, + type: "LoadBalancer", + loadBalancerIP: staticIP.address, + }, + }, + { + provider: provider, + } + ); + + this.mavrykHelmValues.dalNodes[dalNodeName].publicAddr = pulumi.interpolate`${staticIP.address}:${dalP2pPort}`; + this.dalNodes[dalNodeName] = { + humanName: humanName, + rpc: `https://${rpcFqdn}`, + p2p: `${p2pFqdn}:${dalP2pPort}` + } + }) + + // Set bootstrap peers on the network config (specific to testnets) + this.mavrykHelmValues.node_config_network.dal_config.bootstrap_peers = [ + `dal.${name}.${domainName}:11732` + ]; + } + + let chartParams = getChartParams(params, "mavryk"); + const chartValues: any = { + ...chartParams, + namespace: this.namespace.metadata.name, + values: this.mavrykHelmValues, + } + new k8s.helm.v3.Chart( + name, + chartValues, + { providers: { kubernetes: provider } } + ) + + new k8s.core.v1.Service( + `${name}-p2p-lb`, + { + metadata: { + namespace: this.namespace.metadata.name, + name: name, + annotations: { + "external-dns.alpha.kubernetes.io/hostname": `${name}.${domainName}`, + }, + }, + spec: { + ports: [ + { + port: 9732, + targetPort: 9732, + protocol: "TCP", + }, + ], + selector: { node_class: "mavryk-baking-node" }, + type: "LoadBalancer", + }, + }, + { provider: provider } + ) + // temporary domain name for .xyz + new k8s.core.v1.Service( + `${name}-p2p-lb-com`, + { + metadata: { + namespace: this.namespace.metadata.name, + name: `${name}-teztnetscom`, + annotations: { + "external-dns.alpha.kubernetes.io/hostname": `${name}.${domainNameXyz}`, + }, + }, + spec: { + ports: [ + { + port: 9732, + targetPort: 9732, + protocol: "TCP", + }, + ], + selector: { node_class: "mavryk-baking-node" }, + type: "LoadBalancer", + }, + }, + { provider: provider } + ) + // end temporary domain name for .com + } + + getDockerBuild(): string { + return this.mavrykHelmValues["images"]["mavkit"] + } + + getGitRef(): pulumi.Output { + // guessing git version or release version based on docker naming convention + // This will fail if mavkit changes repo tagging convention. + let dockerBuild = pulumi.output(this.mavrykHelmValues["images"]["mavkit"]) + return dockerBuild.apply((s: string) => { + let o = s.split(":")[1] + if (s.includes("master_")) { + o = o.split("_")[1] + } + return o + }) + } + + getRpcUrl(): string { + return `https://rpc.${this.name}.${domainName}` + } + getRollupUrls(): string[] { + if ( + this.mavrykHelmValues.smartRollupNodes && + this.mavrykHelmValues.smartRollupNodes.length != 0 + ) { + return [`https://evm-rollup-node.${this.name}.${domainName}`] + } + return [] + } + getEvmProxyUrls(): string[] { + if ( + this.mavrykHelmValues.smartRollupNodes && + this.mavrykHelmValues.smartRollupNodes.length != 0 + ) { + return [`https://evm.${this.name}.${domainName}`] + } + return [] + } + getRpcUrls(): Array { + return [...[this.getRpcUrl()], ...this.params.rpcUrls || []] + } + + getLastBakingDaemon(): string { + return this.mavrykHelmValues["protocols"].slice(-1)[0]["command"] + } +} diff --git a/networks/atlasnet/values.yaml b/networks/atlasnet/values.yaml index 1632a2ce..9afdfd4f 100644 --- a/networks/atlasnet/values.yaml +++ b/networks/atlasnet/values.yaml @@ -131,7 +131,7 @@ nodes: cors-origin: [ "*" ] is_bootstrap_node: true runs: - - octez_node + - mavkit_node - baker - accuser - vdf @@ -145,7 +145,7 @@ rolling_snapshot_url: null rolling_tarball_url: null archive_tarball_url: null images: - octez: mavrykdynamics/mavryk:v19.1 + mavkit: mavrykdynamics/mavryk:v19.1 protocols: - command: PtAtlas diff --git a/networks/dailynet/values.yaml b/networks/dailynet/values.yaml index 5a474a1e..9d50a0de 100644 --- a/networks/dailynet/values.yaml +++ b/networks/dailynet/values.yaml @@ -171,7 +171,7 @@ nodes: 934a9c2912fb49d5e4f0ff3e81dd8b0033aa227aa44e8bf7a60697a6dcff0b90 proof_of_work_stamp: 874a325a463d6b6c1948eaa09252253ad9b2f1e01a4d6a7a runs: - - octez_node + - mavkit_node - baker - accuser - vdf @@ -190,7 +190,7 @@ smartRollupNodes: annotations: # sometimes evm proxy takes too long to initialize # because it depends on the rollup node which in turn - # depends on the octez node to be available + # depends on the mavkit node to be available 'pulumi.com/skipAwait': true ingress: # ingress details filled by pulumi diff --git a/networks/ghostnet/values.yaml b/networks/ghostnet/values.yaml index 505f4eef..98a9dd4d 100644 --- a/networks/ghostnet/values.yaml +++ b/networks/ghostnet/values.yaml @@ -77,7 +77,7 @@ nodes: cors-origin: [ "*" ] is_bootstrap_node: true runs: - - octez_node + - mavkit_node - baker - accuser storage_size: 400Gi @@ -98,7 +98,7 @@ rolling_tarball_url: null archive_tarball_url: "https://ghostnet-v15.xtz-shots.io/archive-tarball" images: - octez: tezos/tezos:v15.1 + mavkit: mavrykdynamics/mavryk-protocol:v15.1 # We give: accounts: diff --git a/networks/hangzhounet/POSTMORTEM.md b/networks/hangzhounet/POSTMORTEM.md deleted file mode 100644 index a7d1e0f2..00000000 --- a/networks/hangzhounet/POSTMORTEM.md +++ /dev/null @@ -1,54 +0,0 @@ -# Hangzhounet - -This folder contains the yaml file that was used to activate hangzhounet. - -## Post-mortem - -Here are notes in what went well in hangzhounet deployment, what went not so well. 4 months is a lot of time to forget things, so better keep them documented. - -### Zero faucets - -Chain was initially instantiated with zero faucets. Despite having the faucet creation infrastructure all automated, I mistakenly copied `number_of_faucets=0` from Granadanet. Nomadic helped me reactivate the chain by pushing an activation block with a higher fitness. - -No action needed: when doing I network launch, I will be copy-pasting from H which now has the currect number of faucets. - -### Wait until baking the network parameters into tezos-node binary - -It is probably better to let bootstrap bakers gather their parameters from `--network https://testnets.mavryk.org/blah` for a while. This would allow for emergency network restarts, where the bakers just have to reboot the node to pick up the new, correct chain. Only one release later should the chain params be hardcoded. - -### Wrong value for bootstrap paran - -`"hard_storage_limit_per_operation":"32768"`: should have been 60000. - -TODO: for next network, verify that every parameter matches mainnet. - -### Too high balance for bakers - -Considering we had 18 bootstrap bakers, 2 million tez per baker would have been enough. We gave 5 million to everyone, so it will be hard for the newcomers to become bakers and get a lot of rights by just using the faucet. - -### Fresh genesis hash - -I re-used the genesis block has from Granadanet but Romain [corrected me](https://github.com/mavryk-network/testnets/pull/51#discussion_r713088372). - -It is better to generate a new hash. Must understand how to do it, and maybe find ways to automate new hash creation. - -The [PR](https://github.com/mavryk-network/testnets/pull/51) has more comments from Romain. - -### Block 0 protocol should be mainnet - -Our block 0 is alays `PtYuensgYBb3G3x1hLLbCmcav8ue8Kyd2khADcL5LsT5R1hcXex` which is the proto genesis of carthagenet. Instead, we should switch to using mainnet's genesis proto `proto_000_Ps9mPmXa`. We will do it first in dailynet/mondaynet and if it works, do I network this way. - -### Add baking bad faucet - -Baking bad maintains a faucet telegram bot. We should always top it up on every testnet: - -``` -Pub edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx -Addr mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW -``` - -Note that the usdtznet fork of hangzhounet has it configured already. - -### Faucet should have a manual - -The faucet has no explanation whatsoever on how to use it. Fix this. diff --git a/networks/hangzhounet/values.yaml b/networks/hangzhounet/values.yaml deleted file mode 100644 index 30150278..00000000 --- a/networks/hangzhounet/values.yaml +++ /dev/null @@ -1,237 +0,0 @@ -accounts: - ecadlabs: - # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw - key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - smartpy: - # mv1EidjD8sWLCZeVqJdCfd1AXmTnkAEe1dGF - key: edpkuyuJirNU14hEma1u7f3Qhx7uHZxzuXDyvmjRwaAsFFFqYGkzHx - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - tezosil: - # mv1Ht4BQHcZX5qfJTMQQfp54mXrtcNagwUAL - key: edpkvQj8r3YigN6QFsDRaKQCoxDNhKK4whDUkFkw6Gom36d86uhEbv - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - pirbo: - # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b - key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - andrewk: - key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - blockwatch: - # mv1Qu7ZshVnDJJbdaGP1z2KQRc4cPdwRAFNQ - key: edpktqRmZsGN2WEyghfqrZvn8c7xmA1xs3vDta71CsCjtHiSRMkG1z - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - marco: - key: edpkubw32gvTfUYRERGECHbMTsiLdM9z9JrEXGVEahbZf9yMhTozSg - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - fifthelement: - key: edpkujqmLUVGNbSNZV7CBMdtXAMGTTwJDQoXp2aRGrotys51rYvaRi - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - utdrmac: - # mv1KX4ARPrWmCvFzqCRqM1pE7XMy3YkWa6Mv - key: edpkvWPKvk8A8tk97Sr8CbyKJLekuHYwQ5R2rJ3Qe23jvtewaRAdYp - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - primate: - # mv1EX2Q5UbjGWfndYQph2EvjcA1XjYSGttGa - key: edpkvM7PAJiTMTAeRB1W77U5jF17aCV1vkBoKPScs8vmAd56t2BE72 - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - N1029676: - # mv1ANyMiEjYnkfd1ev3eQkn6VG9yUQuprfNY - key: edpkuZ6pf5esZLnVJ7XGZbfQ6s9yFsrGW49nhrRVrCZ6ghqRvGR1n5 - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - vincent_xtzmaster: - # mv18DaXmm6RTKsBUpX1BZcpL3w7PUvjKVPWA - key: edpkuVw1DAAJ1bucCkNJ48e9L8Md8meXogKnMUp1Z6sey1NFhCxmvU - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - neoktalabs_julien: - # mv1UbfgGattRWGeTqVVNLPo3Kt2Es6wRKiGq - key: edpkv99446esWVTgGSNsfeZCpeLYbq1e69tae3Fpw22GXcMHQeRSVg - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - coredump: - # mv1K9acNerxTy6EpieyEEb4bQAr83JABwCJ8 - key: edpkttKzcNNCjanS2De2Nagnpg9Bk1SoNhxDC1hqCFvHHFjfeeBK1m - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - german: - # german wants to be a baker, but not bootstrap - # mv1FdnkStDVAwUpcNeruHcBf8bVnD6rvNSik - key: edpktjm6QS9TwK6z9VX36Gucknwag94EzfCiu741i8q373W4V4y24R - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "2000000000000" - ping: - # mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 - key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - saroupille: - # françois wants to be a baker, but not bootstrap - # mv1CtdUBCLRpBziu4Xkuow3Xx2kjbhTieU5Z - key: edpkvMBeXH4h8H97b8qfPkv2mA9TE6McfsffLGgG2Jg5nhUESaVt5J - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "2000000000000" - saroupille2: - # françois wants to be a baker, but not bootstrap - # mv1MwkWM8AVmfKNg1jGBtxCMUk1qxeaGtzCz - key: edpkueS4HbicvgHo1Y9uPp6ZaZ8kgMJBJg2uB4Zm539Wf7qvJA5g1U - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "2000000000000" - victor: - # mv1J65tSuttRUSKEB8y2QEvJdjdWmMHGX1ct - key: edpkujMeTHyUEK4gqCBXHDL9yXYiHnJJ4C58AHnmgAKyfFZXcBRngB - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "2000000000000" - mv1Fewfk: - # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS - # Romain's faucet - key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "500000000000000" - julien: - # for stress testing - # mv1C666oQekupeXexgguj5AwnqK5mVRTKek6 - key: edpktnArvYkSArFUGiBN4cmDmor9qwyTFCbAKEMbeSdT3z563SdTXm - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "500000000000000" - bakingbadfaucet: - # baking bad maintains a telegram faucet bot - # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW - key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "500000000000000" - oxheadbaker: - # Oxhead Alpha's baker hosted in testnets.mavryk.org infra - # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm - bootstrap_balance: "1000000000000" - is_bootstrap_baker_account: true - type: secret - # key injected by pulumi - oxheadfree: - # an account with a lot of money in it - # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm - key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ - bootstrap_balance: "5000000000000000" - is_bootstrap_baker_account: false - type: public - -node_config_network: - activation_account_name: oxheadbaker - chain_name: TEZOS_HANGZHOUNET_2021-11-04T15:00:00Z - genesis: - block: BLockGenesisGenesisGenesisGenesisGenesis7e8c4d4snJW - protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P - timestamp: "2021-11-04T15:00:00Z" - user_activated_upgrades: - - level: 8191 - replacement_protocol: PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx - -bootstrap_peers: - - hangzhounet.smartpy.io - - hangzhounet.kaml.fr - - hangzhounet.boot.tez.ie - -images: - octez: tezos/tezos:v12.2 - -nodes: - tezos-baking-node: - instances: - - bake_using_accounts: - - oxheadbaker - config: - shell: - history_mode: archive - rpc: - cors-headers: [ "content-type" ] - cors-origin: [ "*" ] - is_bootstrap_node: true - runs: - - baker - - endorser - - octez_node - - accuser - storage_size: 80Gi - # Overwrite default values.yaml rolling-node - rolling-node: null - -activation: - protocol_hash: PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV - protocol_parameters: - preserved_cycles: 3 - blocks_per_cycle: 4096 - blocks_per_commitment: 32 - blocks_per_roll_snapshot: 256 - blocks_per_voting_period: 20480 - time_between_blocks: - - "20" - - "10" - endorsers_per_block: 256 - hard_gas_limit_per_operation: "1040000" - hard_gas_limit_per_block: "5200000" - proof_of_work_threshold: "70368744177663" - tokens_per_roll: "8000000000" - seed_nonce_revelation_tip: "125000" - origination_size: 257 - block_security_deposit: "640000000" - endorsement_security_deposit: "2500000" - baking_reward_per_endorsement: - - "78125" - - "11719" - endorsement_reward: - - "78125" - - "52083" - cost_per_byte: "250" - hard_storage_limit_per_operation: "60000" - quorum_min: 2000 - quorum_max: 7000 - min_proposal_quorum: 500 - initial_endorsers: 192 - delay_per_missing_endorsement: "2" - liquidity_baking_escape_ema_threshold: 100000 - liquidity_baking_subsidy: '2500000' - liquidity_baking_sunset_level: 525600 - minimal_block_delay: '15' - michelson_maximum_type_size: 1000 - -protocols: - - command: 011-PtHangz2 - -full_snapshot_url: null -rolling_snapshot_url: null -rolling_tarball_url: null -archive_tarball_url: "https://hangzhounet.xtz-shots.io/archive-tarball" diff --git a/networks/jakartanet/README.md b/networks/jakartanet/README.md deleted file mode 100644 index dee89b75..00000000 --- a/networks/jakartanet/README.md +++ /dev/null @@ -1 +0,0 @@ -Jakartanet ran Ithaca for 2 cycles then switched to Jakarta at block 8192. diff --git a/networks/jakartanet/faucet_values.yaml b/networks/jakartanet/faucet_values.yaml deleted file mode 100644 index 68265905..00000000 --- a/networks/jakartanet/faucet_values.yaml +++ /dev/null @@ -1,36 +0,0 @@ -images: - tezos_faucet: ghcr.io/oxheadalpha/tezos-faucet:1.0.2 - tezos_faucet_backend: ghcr.io/oxheadalpha/tezos-faucet-backend:1.1 -authorizedHost: # filled in by pulumi -maxBalance: 61000 -config: - application: - name: "Tezos Jakartanet faucet" - googleCaptchaSiteKey: #filled in by pulumi - backendUrl: # filled in by pulumi - githubRepo: "https://github.com/avysel/tezos-faucet" - profiles: - user: - profile: USER - amount: 1 - baker: - profile: BAKER - amount: 6001 - network: - name: # filled in by pulumi - rpcUrl: # filled in by pulumi - faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - viewer: https://jakarta.tzstats.com - allowSendButton: false -ingress: - enabled: true - annotations: - "kubernetes.io/ingress.class": "alb" - "alb.ingress.kubernetes.io/scheme": "internet-facing" - "alb.ingress.kubernetes.io/healthcheck-path": "/" - "alb.ingress.kubernetes.io/healthcheck-port": "80" - "alb.ingress.kubernetes.io/listen-ports": '[{"HTTP": 80}, {"HTTPS":443}]' - "ingress.kubernetes.io/force-ssl-redirect": "true" - "alb.ingress.kubernetes.io/actions.ssl-redirect": - '{"type": "redirect", "redirectconfig": { "protocol": "https", "port": "443", "statuscode": "http_301"}}' - host: # faucet fqdn, filled in by pulumi diff --git a/networks/jakartanet/values.yaml b/networks/jakartanet/values.yaml deleted file mode 100644 index d7d10ce2..00000000 --- a/networks/jakartanet/values.yaml +++ /dev/null @@ -1,224 +0,0 @@ -accounts: - oxheadbaker: - # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm - bootstrap_balance: "6700000000000" - is_bootstrap_baker_account: true - type: secret - # key injected by pulumi - oxheadfree: - # an account with a lot of money in it - # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm - key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ - bootstrap_balance: "5000000000000000" - is_bootstrap_baker_account: false - type: public - bakingbadfaucet: - # baking bad maintains a telegram faucet bot - # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW - key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "5000000000000000" - mv1Fewfk: - # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS - # Romain's faucet - key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "5000000000000000" - rodrigo_quelhas: - # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt - key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - pirbo: - # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b - key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - andrewk: - # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL - key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - marco: - key: edpkubw32gvTfUYRERGECHbMTsiLdM9z9JrEXGVEahbZf9yMhTozSg - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - baketzforme: - # mv1Szwqs9ZCFDig1nmq4Rg6XcGdoi1F4e5SF - key: edpkuEoVW7HM9ehiec9exPfHrsFkT1f3jV8JxFWQHP23VX6K5EnVtD - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs: - # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw - key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs_2: - # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw - key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - neoktalabs_julien: - # mv1WqTpQa4mmxM21f9jTPXAn4WW19RRFkQ1L - key: edpkuMRJewemWYJcfGUe3DLvemke3BZEitc3vVPbBFfnfwrynimuzY - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - michael_kernaghan: - # mv1KeQch581fA6onNd7Tk4R6cczaAsZ6wXAQ - key: edpkufKizMFA2EfbLdrUPLGcwe9EHad4MwtgGeVPCBP2x5VZeKHqsh - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - fredcy: - # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP - key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - baking_benjamins: - # mv1KNR7BbSTcZKRoH6bKUgGnpZcytveswrjt - key: edpkuT6dsU7krrQFBnk7c72EnrycvFeKQoL63EoiMz1AdQJGR9ux57 - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - bake_buddy: - # mv1LCGCRa8muQS6AC9voy63SDmzprsFSZTKV - key: edpkvBxh9o7dFhrXGfxZKVuTTQHaS7YrorCaUndmLhqncU4ebKTxL9 - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - tf: - # mv3CTasxJUynvzBekpfsPhDTpvDsKMezU9Hd - key: p2pk66gP3wq6k9QgNwAgaGLeXc3YFfrxgYdC7cdYuJWAHYBw4hExVHW - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - tf2: - # mv3DsEsWAVnhr4Vhxkod2yp6AJym2qA6hgYF - key: p2pk67WaNJGC3VE4dhunamqKpMHXzxshf8REycJ5zvRf7HksaH3ir2F - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ping: - #mv1W8agVWdfntqBZYm9nyJUfrKUVhMjPqESC - key: edpkty9Zdoxxc8BCCseTaeKtBpAVctrzVmzhkj3dkgmbFkWduu4SCB - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ping_bob: - #mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 - key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - pasqualepinto: - # ??? - key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - pea: - # mv184vc5V7cxfGUbAU42PsbFskkAtMezJ89F - key: edpku2vFTjfziPbbViVqfHxVsmvTe5NZoaq6939Ex3eZCaSxkRTfpu - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - -node_config_network: - activation_account_name: oxheadbaker - chain_name: TEZOS_JAKARTANET_2022-04-27T15:00:00Z - genesis: - block: BLockGenesisGenesisGenesisGenesisGenesisbd16dciJxo9 - protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P - timestamp: "2022-04-27T15:00:00Z" - user_activated_upgrades: - - level: 8192 - replacement_protocol: PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY - -activation: - protocol_hash: Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A - protocol_parameters: - preserved_cycles: 3 - blocks_per_cycle: 4096 - blocks_per_commitment: 32 - blocks_per_stake_snapshot: 256 - blocks_per_voting_period: 4096 - hard_gas_limit_per_operation: '1040000' - hard_gas_limit_per_block: '5200000' - proof_of_work_threshold: '-1' - tokens_per_roll: '6000000000' - seed_nonce_revelation_tip: '125000' - baking_reward_fixed_portion: '10000000' - baking_reward_bonus_per_slot: '4286' - endorsing_reward_per_slot: '2857' - hard_storage_limit_per_operation: '60000' - origination_size: 257 - cost_per_byte: '250' - quorum_max: 7000 - quorum_min: 2000 - min_proposal_quorum: 500 - liquidity_baking_subsidy: '2500000' - liquidity_baking_sunset_level: 10000000 - liquidity_baking_escape_ema_threshold: 100000 - max_operations_time_to_live: 120 - minimal_block_delay: "15" - delay_increment_per_round: "7" - consensus_committee_size: 7000 - consensus_threshold: 4667 - minimal_participation_ratio: - numerator: 2 - denominator: 3 - max_slashing_period: 2 - frozen_deposits_percentage: 10 - double_baking_punishment: "640000000" - ratio_of_frozen_deposits_slashed_per_double_endorsement: - numerator: 1 - denominator: 2 - -nodes: - tezos-baking-node: - instances: - - bake_using_accounts: - - oxheadbaker - config: - shell: - history_mode: archive - rpc: - cors-headers: [ "content-type" ] - cors-origin: [ "*" ] - is_bootstrap_node: true - runs: - - octez_node - - baker - - accuser - readiness_probe: false - storage_size: 160Gi - # Overwrite default values.yaml rolling-node - rolling-node: null - -bootstrap_peers: - - jakartanet.kaml.fr - - jakartanet.boot.ecadinfra.com - -full_snapshot_url: null -rolling_snapshot_url: null -rolling_tarball_url: null -archive_tarball_url: "https://jakartanet.xtz-shots.io/archive-tarball" - -images: - octez: tezos/tezos:v13.0 - -protocols: - - command: 013-PtJakart - vote: - liquidity_baking_toggle_vote: "on" diff --git a/networks/kathmandunet/README.md b/networks/kathmandunet/README.md deleted file mode 100644 index afeb2536..00000000 --- a/networks/kathmandunet/README.md +++ /dev/null @@ -1 +0,0 @@ -For the first 8192 blocks, Kathmandunet will run the Jakarta protocol. Please start your Jakarta bakers. diff --git a/networks/kathmandunet/faucet_values.yaml b/networks/kathmandunet/faucet_values.yaml deleted file mode 100644 index b1d778a3..00000000 --- a/networks/kathmandunet/faucet_values.yaml +++ /dev/null @@ -1,36 +0,0 @@ -images: - tezos_faucet: ghcr.io/oxheadalpha/tezos-faucet:1.0.2 - tezos_faucet_backend: ghcr.io/oxheadalpha/tezos-faucet-backend:1.1 -authorizedHost: # filled in by pulumi -maxBalance: 61000 -config: - application: - name: "Tezos Kathmandunet faucet" - googleCaptchaSiteKey: #filled in by pulumi - backendUrl: # filled in by pulumi - githubRepo: "https://github.com/avysel/tezos-faucet" - profiles: - user: - profile: USER - amount: 1 - baker: - profile: BAKER - amount: 6001 - network: - name: # filled in by pulumi - rpcUrl: # filled in by pulumi - faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - viewer: https://kathmandu.tzstats.com - allowSendButton: false -ingress: - enabled: true - annotations: - "kubernetes.io/ingress.class": "alb" - "alb.ingress.kubernetes.io/scheme": "internet-facing" - "alb.ingress.kubernetes.io/healthcheck-path": "/" - "alb.ingress.kubernetes.io/healthcheck-port": "80" - "alb.ingress.kubernetes.io/listen-ports": '[{"HTTP": 80}, {"HTTPS":443}]' - "ingress.kubernetes.io/force-ssl-redirect": "true" - "alb.ingress.kubernetes.io/actions.ssl-redirect": - '{"type": "redirect", "redirectconfig": { "protocol": "https", "port": "443", "statuscode": "http_301"}}' - host: # faucet fqdn, filled in by pulumi diff --git a/networks/kathmandunet/values.yaml b/networks/kathmandunet/values.yaml deleted file mode 100644 index 6c4d5d59..00000000 --- a/networks/kathmandunet/values.yaml +++ /dev/null @@ -1,286 +0,0 @@ -accounts: - oxheadbaker: - # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm - bootstrap_balance: "9700000000000" - is_bootstrap_baker_account: true - type: secret - # key injected by pulumi - oxheadfree: - # an account with a lot of money in it - # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm - key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ - bootstrap_balance: "5000000000000000" - is_bootstrap_baker_account: false - type: public - bakingbadfaucet: - # baking bad maintains a telegram faucet bot - # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW - key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "5000000000000000" - mv1Fewfk: - # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS - # Romain's faucet - key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 - type: public - is_bootstrap_baker_account: false - bootstrap_balance: "5000000000000000" - # rodrigo_quelhas: - # # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt - # key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW - # type: public - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - # pirbo: - # # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b - # key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM - # type: public - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - andrewk: - # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL - key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - marco: - key: edpkubw32gvTfUYRERGECHbMTsiLdM9z9JrEXGVEahbZf9yMhTozSg - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # baketzforme: - # # mv1Szwqs9ZCFDig1nmq4Rg6XcGdoi1F4e5SF - # key: edpkuEoVW7HM9ehiec9exPfHrsFkT1f3jV8JxFWQHP23VX6K5EnVtD - # type: public - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - ecadlabs: - # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw - key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs_2: - # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw - key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - neoktalabs_julien: - # mv1WqTpQa4mmxM21f9jTPXAn4WW19RRFkQ1L - key: edpkuMRJewemWYJcfGUe3DLvemke3BZEitc3vVPbBFfnfwrynimuzY - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - michael_kernaghan: - # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh - key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # fredcy: - # # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP - # key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN - # type: public - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - tf: - # mv3Ju2CZXqfgiHctrWsjjJD8D7GnwJXMkdvV - key: p2pk66EmFoQS6b2mYLvCrwjXs7XT1A2znX26HcT9YMiGsyCHyDvsLaF - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ping: - #mv1W8agVWdfntqBZYm9nyJUfrKUVhMjPqESC - key: edpkty9Zdoxxc8BCCseTaeKtBpAVctrzVmzhkj3dkgmbFkWduu4SCB - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ping_bob: - #mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 - key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - pasqualepinto: - # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ - key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # pea: - # # mv184vc5V7cxfGUbAU42PsbFskkAtMezJ89F - # key: edpku2vFTjfziPbbViVqfHxVsmvTe5NZoaq6939Ex3eZCaSxkRTfpu - # type: public - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - rich_ayotte: - # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # mv1N7TGAdso3MGhqkT5zDxWnweCCvcUfnZwR - key: edpkuEUkeQXP1PbudqRcSYYPsxFXxk1wUNCDSDptRGq1rRsGrRpSzf - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - bakebuddy_primate: - # mv1M3gmzoPwtLQbhehYtfuGXY8xgpNraUd51 - key: edpkteP1jsCpAzmQpseKjEJpo4WFa9TZcFvuxVftVFfZfqKNU9cWTv - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - bakebuddy_waveform: - # mv1Co39pnjX5UpMrhEsRKSzSMriwg5sFtW3H - key: edpkufHs4XkMUAtSkHkHsfJYD65RQMHz6PZYko6Gf1MoWvYKfLpZ9N - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "500000000000" - bakebuddy_jackvargo: - # mv1AFTdRQgQWTySB2ngQeVtz6vrqrDYm5Yiq - key: edpkvTtGfrbNGQ7DQ8hqi1fx9b7BYg1Cr5QwzJazpMe9Ln9WXwq8tb - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "500000000000" - bakebuddy_bakinglibertez: - # mv1S1NStmXzy2x6agkWznW3aioJr7oJRhdov - key: edpkuLqVLoHppEqR2HPF2gAr33CJ1DHS3QirDRUuzuuebyAivYQHtX - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "500000000000" - bakebuddy_ryxns: - # mv1Lm7o7s6247MfNCzNZ8CKH9m1u5ji55Hpe - key: edpktzRHRzaeJzezQRGcaXS4meHCuQZ5irfMbAxk2Em4iRCpydBWd8 - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "500000000000" - bakebuddy_billyhoush: - # mv1DaNeJwQMD5WRuU3uo4iMVqHEnAVriDMDN - key: edpku867NozNR2zsFnqEEo7wEKekkwRp258bYGbo3f52cF16MYk1bS - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - vincent_xtzmaster: - # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb - key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - jdsika: - # mv1WvceM8XzihnnZEkP38Vf56ygD5Nkbtf4W - key: edpkutdFBe12UBzvgRKtAPbhQrpRA46oBSJCECeHswSLPzf6eAeqph - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - - -node_config_network: - activation_account_name: oxheadbaker - chain_name: TEZOS_KATHMANDUNET_2022-07-28T15:00:00Z - genesis: - protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P - timestamp: "2022-07-28T15:00:00Z" - # NEW: the hash is deterministically generated from chain_name - # check https://testnets.mavryk.org/kathmandunet for its value - user_activated_upgrades: - - level: 8192 - replacement_protocol: PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg - -activation: - protocol_hash: PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY - protocol_parameters: - preserved_cycles: 3 - blocks_per_cycle: 4096 - blocks_per_commitment: 32 - blocks_per_stake_snapshot: 256 - cycles_per_voting_period: 1 - hard_gas_limit_per_operation: '1040000' - hard_gas_limit_per_block: '5200000' - proof_of_work_threshold: '-1' - tokens_per_roll: '6000000000' - seed_nonce_revelation_tip: '125000' - baking_reward_fixed_portion: '10000000' - baking_reward_bonus_per_slot: '4286' - endorsing_reward_per_slot: '2857' - hard_storage_limit_per_operation: '60000' - origination_size: 257 - cost_per_byte: '250' - quorum_max: 7000 - quorum_min: 2000 - min_proposal_quorum: 500 - liquidity_baking_subsidy: '2500000' - liquidity_baking_sunset_level: 10000000 - liquidity_baking_toggle_ema_threshold: 1000000000 - max_operations_time_to_live: 120 - minimal_block_delay: "15" - delay_increment_per_round: "15" - consensus_committee_size: 7000 - consensus_threshold: 4667 - minimal_participation_ratio: - numerator: 2 - denominator: 3 - max_slashing_period: 2 - frozen_deposits_percentage: 10 - double_baking_punishment: "640000000" - ratio_of_frozen_deposits_slashed_per_double_endorsement: - numerator: 1 - denominator: 2 - cache_script_size: 100000000 - cache_stake_distribution_cycles: 8 - cache_sampler_state_cycles: 8 - tx_rollup_enable: true - tx_rollup_origination_size: 4000 - tx_rollup_hard_size_limit_per_inbox: 500000 - tx_rollup_hard_size_limit_per_message: 5000 - tx_rollup_max_withdrawals_per_batch: 15 - tx_rollup_commitment_bond: "10000000000" - tx_rollup_finality_period: 40000 - tx_rollup_max_inboxes_count: 40100 - tx_rollup_withdraw_period: 40000 - tx_rollup_max_messages_per_inbox: 1010 - tx_rollup_max_commitments_count: 80100 - tx_rollup_cost_per_byte_ema_factor: 120 - tx_rollup_max_ticket_payload_size: 2048 - tx_rollup_rejection_max_proof_size: 30000 - tx_rollup_sunset_level: 10000000 - sc_rollup_enable: false - sc_rollup_origination_size: 6314 - sc_rollup_challenge_window_in_blocks: 20160 - sc_rollup_max_available_messages: 1000000 - -nodes: - tezos-baking-node: - instances: - - bake_using_accounts: - - oxheadbaker - config: - shell: - history_mode: archive - rpc: - cors-headers: [ "content-type" ] - cors-origin: [ "*" ] - is_bootstrap_node: true - runs: - - octez_node - - baker - - accuser - - vdf - readiness_probe: false - storage_size: 160Gi - # Overwrite default values.yaml rolling-node - rolling-node: null - -full_snapshot_url: null -rolling_snapshot_url: null -rolling_tarball_url: null -archive_tarball_url: null - -images: - octez: tezos/tezos:v14.1 - -protocols: - - command: 014-PtKathma - vote: - liquidity_baking_toggle_vote: "pass" - -bootstrap_peers: - - kathmandunet.boot.ecadinfra.com - - kathmandunet.tzboot.net diff --git a/networks/limanet/README.md b/networks/limanet/README.md deleted file mode 100644 index 7f6732c8..00000000 --- a/networks/limanet/README.md +++ /dev/null @@ -1 +0,0 @@ -For the first 8192 blocks, Limanet ran the Kathmandu protocol then it switched to Lima. diff --git a/networks/limanet/faucet_values.yaml b/networks/limanet/faucet_values.yaml deleted file mode 100644 index d50e5b40..00000000 --- a/networks/limanet/faucet_values.yaml +++ /dev/null @@ -1,36 +0,0 @@ -images: - tezos_faucet: ghcr.io/oxheadalpha/tezos-faucet:1.1.0 - tezos_faucet_backend: ghcr.io/oxheadalpha/tezos-faucet-backend:1.1 -authorizedHost: # filled in by pulumi -maxBalance: 61000 -config: - application: - name: "Tezos Limanet faucet" - googleCaptchaSiteKey: #filled in by pulumi - backendUrl: # filled in by pulumi - githubRepo: "https://github.com/oxheadalpha/tezos-faucet" - profiles: - user: - profile: USER - amount: 100 - baker: - profile: BAKER - amount: 6001 - network: - name: # filled in by pulumi - rpcUrl: # filled in by pulumi - faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - viewer: https://lima.tzstats.com - allowSendButton: false -ingress: - enabled: true - annotations: - "kubernetes.io/ingress.class": "alb" - "alb.ingress.kubernetes.io/scheme": "internet-facing" - "alb.ingress.kubernetes.io/healthcheck-path": "/" - "alb.ingress.kubernetes.io/healthcheck-port": "80" - "alb.ingress.kubernetes.io/listen-ports": '[{"HTTP": 80}, {"HTTPS":443}]' - "ingress.kubernetes.io/force-ssl-redirect": "true" - "alb.ingress.kubernetes.io/actions.ssl-redirect": - '{"type": "redirect", "redirectconfig": { "protocol": "https", "port": "443", "statuscode": "http_301"}}' - host: # faucet fqdn, filled in by pulumi diff --git a/networks/limanet/values.yaml b/networks/limanet/values.yaml deleted file mode 100644 index 68e90853..00000000 --- a/networks/limanet/values.yaml +++ /dev/null @@ -1,296 +0,0 @@ -accounts: - oxheadbaker: - # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm - bootstrap_balance: "9700000000000" - is_bootstrap_baker_account: true - # key injected by pulumi - oxheadfree: - # an account with a lot of money in it - # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm - key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ - bootstrap_balance: "50000000000000000" - is_bootstrap_baker_account: false - bakingbadfaucet: - # baking bad maintains a telegram faucet bot - # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW - key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx - is_bootstrap_baker_account: false - bootstrap_balance: "5000000000000000" - mv1Fewfk: - # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS - # Romain's faucet - key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 - is_bootstrap_baker_account: false - bootstrap_balance: "50000000000000000" - oxheadfaucet: - # the faucet on teztnets platform - # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj - is_bootstrap_baker_account: false - bootstrap_balance: "15000000000000" - vicall: - # mv1J65tSuttRUSKEB8y2QEvJdjdWmMHGX1ct - key: edpkujMeTHyUEK4gqCBXHDL9yXYiHnJJ4C58AHnmgAKyfFZXcBRngB - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # rodrigo_quelhas: - # # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt - # key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - pirbo: - # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b - key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # andrewk: - # # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL - # key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - marco: - key: edpkubw32gvTfUYRERGECHbMTsiLdM9z9JrEXGVEahbZf9yMhTozSg - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # baketzforme: - # # mv1Szwqs9ZCFDig1nmq4Rg6XcGdoi1F4e5SF - # key: edpkuEoVW7HM9ehiec9exPfHrsFkT1f3jV8JxFWQHP23VX6K5EnVtD - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - ecadlabs: - # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw - key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs_2: - # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw - key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # neoktalabs_julien: - # # mv1WqTpQa4mmxM21f9jTPXAn4WW19RRFkQ1L - # key: edpkuMRJewemWYJcfGUe3DLvemke3BZEitc3vVPbBFfnfwrynimuzY - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - michael_kernaghan: - # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh - key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - fredcy: - # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP - key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - tf: - # mv3CTasxJUynvzBekpfsPhDTpvDsKMezU9Hd - key: p2pk66gP3wq6k9QgNwAgaGLeXc3YFfrxgYdC7cdYuJWAHYBw4hExVHW - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # ping: - # #mv1W8agVWdfntqBZYm9nyJUfrKUVhMjPqESC - # key: edpkty9Zdoxxc8BCCseTaeKtBpAVctrzVmzhkj3dkgmbFkWduu4SCB - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - # ping_bob: - # #mv1AHfXjwzJ4NzWFjwdia9iBpWmLSu6rm2n8 - # key: edpkvZcJNTNG3q4A4N42eNPPCtUDT5jffMCYwiD7QLzRGZ4CQR8pyj - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - pasqualepinto: - # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ - key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # pea: - # # mv184vc5V7cxfGUbAU42PsbFskkAtMezJ89F - # key: edpku2vFTjfziPbbViVqfHxVsmvTe5NZoaq6939Ex3eZCaSxkRTfpu - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - rich_ayotte: - # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # mv1Uuw4vqKiRCZuopsDKKP8vqrLuHaWS6tUs - key: edpkvXYuB4dkcSGmm8Mxm9bovPdtVz6CgQARRYGdGeLLQKnBC4iVen - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # bakebuddy_primate: - # # mv1M3gmzoPwtLQbhehYtfuGXY8xgpNraUd51 - # key: edpkteP1jsCpAzmQpseKjEJpo4WFa9TZcFvuxVftVFfZfqKNU9cWTv - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - # bakebuddy_waveform: - # # mv1Co39pnjX5UpMrhEsRKSzSMriwg5sFtW3H - # key: edpkufHs4XkMUAtSkHkHsfJYD65RQMHz6PZYko6Gf1MoWvYKfLpZ9N - # is_bootstrap_baker_account: true - # bootstrap_balance: "500000000000" - # bakebuddy_jackvargo: - # # mv1AFTdRQgQWTySB2ngQeVtz6vrqrDYm5Yiq - # key: edpkvTtGfrbNGQ7DQ8hqi1fx9b7BYg1Cr5QwzJazpMe9Ln9WXwq8tb - # is_bootstrap_baker_account: true - # bootstrap_balance: "500000000000" - # bakebuddy_bakinglibertez: - # # mv1S1NStmXzy2x6agkWznW3aioJr7oJRhdov - # key: edpkuLqVLoHppEqR2HPF2gAr33CJ1DHS3QirDRUuzuuebyAivYQHtX - # is_bootstrap_baker_account: true - # bootstrap_balance: "500000000000" - # bakebuddy_ryxns: - # # mv1Lm7o7s6247MfNCzNZ8CKH9m1u5ji55Hpe - # key: edpktzRHRzaeJzezQRGcaXS4meHCuQZ5irfMbAxk2Em4iRCpydBWd8 - # is_bootstrap_baker_account: true - # bootstrap_balance: "500000000000" - # bakebuddy_billyhoush: - # # mv1DaNeJwQMD5WRuU3uo4iMVqHEnAVriDMDN - # key: edpku867NozNR2zsFnqEEo7wEKekkwRp258bYGbo3f52cF16MYk1bS - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - vincent_xtzmaster: - # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb - key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - stakenow: - # mv1WvceM8XzihnnZEkP38Vf56ygD5Nkbtf4W - key: edpkutdFBe12UBzvgRKtAPbhQrpRA46oBSJCECeHswSLPzf6eAeqph - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - killian_d: - # mv1UZFt2L9Qgu7boa7Y2ku3TvbdZBv4kJsWP - key: edpkv7AqKLxQXWa2tHcPbMnah1JbMUHohvmvgPS7nVaB7kdNnrg1XW - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - daniel_jean: - # mv1T5FMNsVh4HZpCqCuCHNmieuJy2SzppD6U - key: edpkunCh4TWt8qLmVscktUVcuhc25obsxYNJNrYqsQCXDhP7LwnVC6 - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - visualtez: - # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt - key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - -node_config_network: - activation_account_name: oxheadbaker - chain_name: TEZOS_LIMANET_2022-10-13T15:00:00Z - genesis: - protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P - timestamp: "2022-10-13T15:00:00Z" - user_activated_upgrades: - - level: 8192 - replacement_protocol: PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW - -activation: - protocol_hash: PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg - protocol_parameters: - preserved_cycles: 3 - blocks_per_cycle: 4096 - blocks_per_commitment: 32 - blocks_per_stake_snapshot: 256 - cycles_per_voting_period: 1 - hard_gas_limit_per_operation: '1040000' - hard_gas_limit_per_block: '5200000' - proof_of_work_threshold: '-1' - tokens_per_roll: '6000000000' - seed_nonce_revelation_tip: '125000' - baking_reward_fixed_portion: '10000000' - baking_reward_bonus_per_slot: '4286' - endorsing_reward_per_slot: '2857' - hard_storage_limit_per_operation: '60000' - origination_size: 257 - cost_per_byte: '250' - quorum_max: 7000 - quorum_min: 2000 - min_proposal_quorum: 500 - liquidity_baking_subsidy: '2500000' - liquidity_baking_sunset_level: 10000000 - liquidity_baking_toggle_ema_threshold: 1000000000 - max_operations_time_to_live: 120 - minimal_block_delay: "15" - delay_increment_per_round: "5" - consensus_committee_size: 7000 - consensus_threshold: 4667 - minimal_participation_ratio: - numerator: 2 - denominator: 3 - max_slashing_period: 2 - frozen_deposits_percentage: 10 - double_baking_punishment: "640000000" - ratio_of_frozen_deposits_slashed_per_double_endorsement: - numerator: 1 - denominator: 2 - cache_script_size: 100000000 - cache_stake_distribution_cycles: 8 - cache_sampler_state_cycles: 8 - nonce_revelation_threshold: 256 - vdf_difficulty: '2000000000' - tx_rollup_enable: true - tx_rollup_origination_size: 4000 - tx_rollup_hard_size_limit_per_inbox: 500000 - tx_rollup_hard_size_limit_per_message: 5000 - tx_rollup_commitment_bond: "10000000000" - tx_rollup_finality_period: 40000 - tx_rollup_max_inboxes_count: 40100 - tx_rollup_withdraw_period: 40000 - tx_rollup_max_messages_per_inbox: 1010 - tx_rollup_max_commitments_count: 80100 - tx_rollup_cost_per_byte_ema_factor: 120 - tx_rollup_max_withdrawals_per_batch: 15 - tx_rollup_max_ticket_payload_size: 2048 - tx_rollup_rejection_max_proof_size: 30000 - tx_rollup_sunset_level: 10000000 - dal_parametric: - feature_enable: false - number_of_slots: 256 - number_of_shards: 2048 - endorsement_lag: 1 - availability_threshold: 50 - sc_rollup_enable: false - sc_rollup_origination_size: 6314 - sc_rollup_challenge_window_in_blocks: 20160 - sc_rollup_max_available_messages: 1000000 - sc_rollup_stake_amount: "32000000" - sc_rollup_commitment_period_in_blocks: 30 - sc_rollup_max_lookahead_in_blocks: 30000 - sc_rollup_max_active_outbox_levels: 20160 - sc_rollup_max_outbox_messages_per_level: 100 - testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" - -nodes: - tezos-baking-node: - instances: - - bake_using_accounts: - - oxheadbaker - config: - shell: - history_mode: archive - rpc: - cors-headers: [ "content-type" ] - cors-origin: [ "*" ] - is_bootstrap_node: true - runs: - - octez_node - - baker - - accuser - - vdf - readiness_probe: false - storage_size: 160Gi - # Overwrite default values.yaml rolling-node - rolling-node: null - -full_snapshot_url: null -rolling_snapshot_url: null -rolling_tarball_url: null -archive_tarball_url: null - -images: - octez: tezos/tezos:v15.1 - -protocols: - - command: PtLimaPt - vote: - liquidity_baking_toggle_vote: "pass" - -bootstrap_peers: - - limanet.boot.ecadinfra.com - - limanet.tzboot.net - - limanet.visualtez.com diff --git a/networks/mumbainet/README.md b/networks/mumbainet/README.md deleted file mode 100644 index 6545c65c..00000000 --- a/networks/mumbainet/README.md +++ /dev/null @@ -1 +0,0 @@ -Mumbainet has 8 second blocks (twice faster than mainnet). diff --git a/networks/mumbainet/faucet_values.yaml b/networks/mumbainet/faucet_values.yaml deleted file mode 100644 index 867bf3b0..00000000 --- a/networks/mumbainet/faucet_values.yaml +++ /dev/null @@ -1,30 +0,0 @@ -images: - tezos_faucet: ghcr.io/oxheadalpha/tezos-faucet:1.1.0 - tezos_faucet_backend: ghcr.io/oxheadalpha/tezos-faucet-backend:1.1 -authorizedHost: # filled in by pulumi -maxBalance: 61000 -config: - application: - name: "Tezos Mumbainet faucet" - googleCaptchaSiteKey: #filled in by pulumi - backendUrl: # filled in by pulumi - githubRepo: "https://github.com/oxheadalpha/tezos-faucet" - profiles: - user: - profile: USER - amount: 100 - baker: - profile: BAKER - amount: 6001 - network: - name: # filled in by pulumi - rpcUrl: # filled in by pulumi - faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - viewer: https://mumbai.tzstats.com - allowSendButton: false -ingress: - enabled: true - annotations: - "kubernetes.io/ingress.class": "nginx" - 'cert-manager.io/cluster-issuer': "letsencrypt-prod" - host: # faucet fqdn, filled in by pulumi diff --git a/networks/mumbainet/values.yaml b/networks/mumbainet/values.yaml deleted file mode 100644 index 6a24495b..00000000 --- a/networks/mumbainet/values.yaml +++ /dev/null @@ -1,252 +0,0 @@ -accounts: - oxheadbaker: - # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm - bootstrap_balance: "9700000000000" - is_bootstrap_baker_account: true - # key injected by pulumi - oxheadfree: - # an account with a lot of money in it - # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm - key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ - bootstrap_balance: "50000000000000000" - is_bootstrap_baker_account: false - bakingbadfaucet: - # baking bad maintains a telegram faucet bot - # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW - key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx - is_bootstrap_baker_account: false - bootstrap_balance: "5000000000000000" - mv1Fewfk: - # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS - # Romain's faucet - key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 - is_bootstrap_baker_account: false - bootstrap_balance: "50000000000000000" - oxheadfaucet: - # the faucet on teztnets platform - # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj - is_bootstrap_baker_account: false - bootstrap_balance: "15000000000000" - tf: - # mv3CP9FLLHzQa2rZzJ3LPTixiCVYnv6U8Djt - key: p2pk66p7iVbEFyJaYM5bjJmXP74B7qso8rXMCmKwVRdRZunMdhUjYBH - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - marco: - # Marco Schurtenberger - key: edpkubw32gvTfUYRERGECHbMTsiLdM9z9JrEXGVEahbZf9yMhTozSg - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - andrewk: - # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL - key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR - type: public - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # vicall: - # # mv1J65tSuttRUSKEB8y2QEvJdjdWmMHGX1ct - # key: edpkujMeTHyUEK4gqCBXHDL9yXYiHnJJ4C58AHnmgAKyfFZXcBRngB - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - pirbo: - # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b - key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs: - # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw - key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs_2: - # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw - key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # michael_kernaghan: - # # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh - # key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - fredcy: - # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP - key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - pasqualepinto: - # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ - key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - rich_ayotte: - # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # mv1FBZb3uyAdny3StASkrk81eAiUCWj5Reic - key: edpktoAgXAvtBFojuKPoigboyPA6mPJ3pyR1JP8XES6Lg1rkf1a3T5 - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - vincent_xtzmaster: - # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb - key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # stakenow: - # # mv1WvceM8XzihnnZEkP38Vf56ygD5Nkbtf4W - # key: edpkutdFBe12UBzvgRKtAPbhQrpRA46oBSJCECeHswSLPzf6eAeqph - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - killian_d: - # mv1UZFt2L9Qgu7boa7Y2ku3TvbdZBv4kJsWP - key: edpkv7AqKLxQXWa2tHcPbMnah1JbMUHohvmvgPS7nVaB7kdNnrg1XW - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - feeny: - key: edpktmqPi9eRefM9ZrwsPNAdg9832UDg3r894J4rkBGfUhpqZpqx6y - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - # daniel_jean: - # # mv1T5FMNsVh4HZpCqCuCHNmieuJy2SzppD6U - # key: edpkunCh4TWt8qLmVscktUVcuhc25obsxYNJNrYqsQCXDhP7LwnVC6 - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - # visualtez: - # # mv1J5vxaVHv5PMoWwDbMmzwG1vNDUEjg9GUt - # key: edpkuDJ1GULsA4qX8LUy3ERSVkjnrJDaGaX9Q2Ea55RX2t2sZxc3iW - # is_bootstrap_baker_account: true - # bootstrap_balance: "1000000000000" - albin: - # mv1MFeLt6U73GmXNFFKfohnQSsXaXp2KQVuF - key: edpkuc4NCkkmTyLogcU32b7sU363J2jggs19EyBzhmms6JmjQZxEJo - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - -node_config_network: - activation_account_name: oxheadbaker - chain_name: TEZOS_MUMBAINET_2023-03-09T15:00:00Z - genesis: - protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P - timestamp: "2023-03-09T15:00:00Z" - -activation: - protocol_hash: PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1 - protocol_parameters: - preserved_cycles: 3 - blocks_per_cycle: 8192 - blocks_per_commitment: 64 - blocks_per_stake_snapshot: 512 - cycles_per_voting_period: 1 - hard_gas_limit_per_operation: '1040000' - hard_gas_limit_per_block: '2600000' - proof_of_work_threshold: '-1' - minimal_stake: '6000000000' - seed_nonce_revelation_tip: '125000' - baking_reward_fixed_portion: '2666666' - baking_reward_bonus_per_slot: '1143' - endorsing_reward_per_slot: '761' - hard_storage_limit_per_operation: '60000' - origination_size: 257 - cost_per_byte: '250' - quorum_max: 7000 - quorum_min: 2000 - min_proposal_quorum: 500 - liquidity_baking_subsidy: '666666' - liquidity_baking_toggle_ema_threshold: 1000000000 - max_operations_time_to_live: 240 - minimal_block_delay: "8" - delay_increment_per_round: "3" - consensus_committee_size: 7000 - consensus_threshold: 4667 - minimal_participation_ratio: - numerator: 2 - denominator: 3 - max_slashing_period: 2 - frozen_deposits_percentage: 10 - double_baking_punishment: "640000000" - ratio_of_frozen_deposits_slashed_per_double_endorsement: - numerator: 1 - denominator: 2 - cache_script_size: 100000000 - cache_stake_distribution_cycles: 8 - cache_sampler_state_cycles: 8 - nonce_revelation_threshold: 512 - vdf_difficulty: "10000000000" - tx_rollup_enable: false - tx_rollup_origination_size: 4000 - tx_rollup_hard_size_limit_per_inbox: 500000 - tx_rollup_hard_size_limit_per_message: 5000 - tx_rollup_commitment_bond: "10000000000" - tx_rollup_finality_period: 40000 - tx_rollup_max_inboxes_count: 40100 - tx_rollup_withdraw_period: 40000 - tx_rollup_max_messages_per_inbox: 1010 - tx_rollup_max_commitments_count: 80100 - tx_rollup_cost_per_byte_ema_factor: 120 - tx_rollup_max_withdrawals_per_batch: 15 - tx_rollup_max_ticket_payload_size: 2048 - tx_rollup_rejection_max_proof_size: 30000 - tx_rollup_sunset_level: 10000000 - dal_parametric: - feature_enable: false - number_of_slots: 256 - number_of_shards: 2048 - attestation_lag: 1 - availability_threshold: 50 - slot_size: 1048576 - redundancy_factor: 16 - page_size: 4096 - smart_rollup_enable: true - smart_rollup_origination_size: 6314 - smart_rollup_challenge_window_in_blocks: 40 - smart_rollup_stake_amount: "10000000000" - smart_rollup_commitment_period_in_blocks: 20 - smart_rollup_max_lookahead_in_blocks: 30000 - smart_rollup_max_active_outbox_levels: 20160 - smart_rollup_max_outbox_messages_per_level: 100 - smart_rollup_number_of_sections_in_dissection: 32 - smart_rollup_timeout_period_in_blocks: 500 - smart_rollup_max_number_of_cemented_commitments: 5 - smart_rollup_max_number_of_parallel_games: 32 - smart_rollup_arith_pvm_enable: false - zk_rollup_enable: false - zk_rollup_origination_size: 4000 - zk_rollup_min_pending_to_process: 10 - testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" - -nodes: - tezos-baking-node: - instances: - - bake_using_accounts: - - oxheadbaker - config: - shell: - history_mode: archive - rpc: - cors-headers: [ "content-type" ] - cors-origin: [ "*" ] - is_bootstrap_node: true - runs: - - octez_node - - baker - - accuser - - vdf - readiness_probe: false - storage_size: 160Gi - # Overwrite default values.yaml rolling-node - rolling-node: null - -full_snapshot_url: null -rolling_snapshot_url: null -rolling_tarball_url: null -archive_tarball_url: https://mumbainet.xtz-shots.io/archive-tarball - -images: - octez: tezos/tezos:v16.1 - -protocols: - - command: PtMumbai - vote: - liquidity_baking_toggle_vote: "pass" - -bootstrap_peers: - - mumbainet.boot.ecadinfra.com -# - mumbainet.visualtez.com diff --git a/networks/nairobinet/README.md b/networks/nairobinet/README.md deleted file mode 100644 index 4f51937e..00000000 --- a/networks/nairobinet/README.md +++ /dev/null @@ -1,3 +0,0 @@ -Nairobinet started on Mumbai protocol then upgraded to Nairobi at the end of cycle 2. - -Nairobinet has 8 second blocks (twice faster than mainnet). diff --git a/networks/nairobinet/faucet_values.yaml b/networks/nairobinet/faucet_values.yaml deleted file mode 100644 index 2f5b56f2..00000000 --- a/networks/nairobinet/faucet_values.yaml +++ /dev/null @@ -1,55 +0,0 @@ -images: - tezosFaucet: ghcr.io/oxheadalpha/tezos-faucet:2.2.3 - tezosFaucetBackend: ghcr.io/oxheadalpha/tezos-faucet-backend:2.2.1 - -config: - application: - name: "Tezos Nairobinet Faucet" - googleCaptchaSiteKey: #filled in by pulumi - backendUrl: # filled in by pulumi - githubRepo: https://github.com/oxheadalpha/tezos-faucet - network: - name: # filled in by pulumi - rpcUrl: # filled in by pulumi - faucetAddress: mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - viewer: https://nairobi.tzstats.com - -# Value the server sets for the "Access-Control-Allow-Origin" header for CORS. -authorizedHost: "" # filled in by pulumi -# RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC -# service in the same namespace. If not set, defaults to `config.network.rpcUrl`. -backendRpcUrl: http://tezos-node-rpc:8732 -# If the backend requires CAPTCHA tokens to be submitted. -enableCaptcha: true - -# The minimum Tez allowed per request. -minTez: 1 -# The maximum Tez allowed per request. -maxTez: 12000 - -disableChallenges: false -# Minimum number of challenges required for the minimum Tez request. -minChallenges: 1 -# Maximum number of challenges required for the maximum Tez request. -# 6,605 challenges should take ~2h. -maxChallenges: 6605 -# Maximum number of challenges required for the maximum Tez request when a -# captcha is used. -# 390 challenges should take ~30m. -maxChallengesWithCaptcha: 390 -# How many bytes the challenge string should be. -challengeSize: 2048 -# Difficulty level for challenges. -difficulty: 4 - -redis: - url: redis://redis-master:6379 - -ingress: - enabled: true - annotations: - "kubernetes.io/ingress.class": "nginx" - "cert-manager.io/cluster-issuer": "letsencrypt-prod" - host: "" # faucet fqdn, filled in by pulumi - tls: [] # filled in by pulumi - diff --git a/networks/nairobinet/values.yaml b/networks/nairobinet/values.yaml deleted file mode 100644 index 1377350e..00000000 --- a/networks/nairobinet/values.yaml +++ /dev/null @@ -1,158 +0,0 @@ -accounts: - oxheadbaker: - # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm - bootstrap_balance: "9700000000000" - is_bootstrap_baker_account: true - # key injected by pulumi - oxheadfree: - # an account with a lot of money in it - # mv1UBRZEJQ211zucHsXAn19FzZTeov3DSmbm - key: edpkubSgCoMjB2a6vPWRNRHfGa6HUFfFyEUKoEQhWC8osnav8QzBdJ - bootstrap_balance: "50000000000000000" - is_bootstrap_baker_account: false - bakingbadfaucet: - # baking bad maintains a telegram faucet bot - # mv185FmHGAimjbxkFEz8fcfeNHJ9pFwLquQW - key: edpkuFRauFAdhipQu9s4xmfNJWmtLxPKpoaoG41gYGq5AgUA43Vxqx - is_bootstrap_baker_account: false - bootstrap_balance: "5000000000000000" - mv1Fewfk: - # mv1FewfkkANV9UrmmgqPdcCPwwV7XftdvhLS - # Romain's faucet - key: edpkuh3WSwziyd6nXqDXeh48vZHp5ETxFd43EdkbzhmW98BvuLXK81 - is_bootstrap_baker_account: false - bootstrap_balance: "50000000000000000" - foundationfaucet: - # TF funds to deploy more bakers later if needed - # chris.pinnock@tezos.foundation - # mv19Ji6kbpGDw2urNX9Fh64tRwPAmXooxVeV - key: edpku2v3DA5WFGE7LSjNVC8FTVhy2LdSu8U34GYaT1zfzZaugCbpVU - is_bootstrap_baker_account: false - bootstrap_balance: "50000000000000000" - oxheadfaucet: - # the faucet on teztnets platform - # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ - key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj - is_bootstrap_baker_account: false - bootstrap_balance: "15000000000000" - tf: - # mv3CTasxJUynvzBekpfsPhDTpvDsKMezU9Hd - key: p2pk66gP3wq6k9QgNwAgaGLeXc3YFfrxgYdC7cdYuJWAHYBw4hExVHW - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - marco: - # Marco Schurtenberger - key: edpkubw32gvTfUYRERGECHbMTsiLdM9z9JrEXGVEahbZf9yMhTozSg - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - andrewk: - # mv1NszgcMUUhWe4XkWmupruw3DWuGEKi2EmL - key: edpkvNGUd3xcBNmPWRbXJoS6WEvxu1BVoWjHr7ab7QoAJFFqhx9tkR - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - pirbo: - # mv1C6KuPzs92LTENfXUPXq1oNxvaLjxJ9p8b - key: edpkvaQpRgsSGPJSY91sjNArLMgpTUHmmfkvuSekwos43uze2H2EFM - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs: - # mv1R7T3AKpmTEzkwPuUu14rewEjAz2qbT5tw - key: edpkvP1NXoo8vhYbPSvXdy466EHoYWBpf6zmjghB2p3DwJPjbB5nsf - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - ecadlabs_2: - # mv1EGkX33WgULe9voeXjD9xSNbZS5TtrUXgw - key: edpkthQu5xeKjD9Dxh5tAf3f61z2Nteqk9xRVPVoZekk1CF738zbcJ - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - fredcy: - # mv187nBvVX7iCc6bxozDokr1vzjqWiJk13rP - key: edpkvTUqzRYhotk2YFnemLfBk8apvcSVNwTSxB6F6CaXUA64CRXgHN - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - pasqualepinto: - # mv1WBSf52fquRL2eXg2ynwCL9ZcpF8Xq8syZ - key: edpkugfNCoDerYV9pq1EfGgjX9mPk3uxX2wXhRz85dUNMtTUPnhjJE - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - rich_ayotte: - # Richard Ayotte (https://twitter.com/RichAyotte or anarcode) - # mv1FBZb3uyAdny3StASkrk81eAiUCWj5Reic - key: edpktoAgXAvtBFojuKPoigboyPA6mPJ3pyR1JP8XES6Lg1rkf1a3T5 - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - vincent_xtzmaster: - # mv19X4KTeAzRqStPrWHgsBYkWNquU6NFxYLb - key: edpktrpiJF24hcmJ22tfDaFWuFihZYbSgr15vFAGUmHThtnr37BZqX - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - killian_d: - # mv1UZFt2L9Qgu7boa7Y2ku3TvbdZBv4kJsWP - key: edpkv7AqKLxQXWa2tHcPbMnah1JbMUHohvmvgPS7nVaB7kdNnrg1XW - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - feeny: - key: edpktmqPi9eRefM9ZrwsPNAdg9832UDg3r894J4rkBGfUhpqZpqx6y - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - albin: - # mv1MFeLt6U73GmXNFFKfohnQSsXaXp2KQVuF - key: edpkuc4NCkkmTyLogcU32b7sU363J2jggs19EyBzhmms6JmjQZxEJo - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - blueledger: - # Mike Kerhnaghan - # mv1Pn1er31reP39csdVg3rN8YvZvymjU5Fuh - key: edpkvMWcnT7ha4m9kDv82X11Yx39xyowquUdBKpne5tpUyajcbjH6L - is_bootstrap_baker_account: true - bootstrap_balance: "1000000000000" - -node_config_network: - activation_account_name: oxheadbaker - chain_name: TEZOS_NAIROBINET_2023-04-20T15:00:00Z - genesis: - protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P - timestamp: "2023-04-20T15:00:00Z" - -nodes: - tezos-baking-node: - instances: - - bake_using_accounts: - - oxheadbaker - config: - shell: - history_mode: rolling - rpc: - cors-headers: [ "content-type" ] - cors-origin: [ "*" ] - is_bootstrap_node: true - runs: - - octez_node - - baker - - accuser - #- vdf - readiness_probe: false - storage_size: 20Gi - # Overwrite default values.yaml rolling-node - rolling-node: null - -full_snapshot_url: null -rolling_snapshot_url: null -rolling_tarball_url: null -archive_tarball_url: null - -snapshot_source: https://snapshots.tezos.marigold.dev/api/tezos-snapshots.json -snapshot_metadata_network_name: nairobinet - -images: - octez: tezos/tezos:v18.1 - -protocols: - - command: PtNairob - vote: - liquidity_baking_toggle_vote: "pass" - -bootstrap_peers: - - nairobinet.tzboot.net - - nairobinet.tzinit.org -# - mumbainet.visualtez.com diff --git a/networks/oxfordnet/values.yaml b/networks/oxfordnet/values.yaml index 8f934b78..37dc072b 100644 --- a/networks/oxfordnet/values.yaml +++ b/networks/oxfordnet/values.yaml @@ -239,7 +239,7 @@ nodes: cors-origin: [ "*" ] is_bootstrap_node: true runs: - - octez_node + - mavkit_node - baker - accuser - vdf @@ -253,7 +253,7 @@ rolling_snapshot_url: null rolling_tarball_url: null archive_tarball_url: null images: - octez: tezos/tezos:v19.0-rc1 + mavkit: mavrykdynamics/mavryk-protocol:v19.0-rc1 protocols: - command: Proxford diff --git a/networks/weeklynet/values.yaml b/networks/weeklynet/values.yaml index 963cbb6f..18184e0c 100644 --- a/networks/weeklynet/values.yaml +++ b/networks/weeklynet/values.yaml @@ -159,7 +159,7 @@ nodes: 38ffcb4629db7152141824835bebf42f12d90933d68773d78002f86637500b62 proof_of_work_stamp: 3ee07208e41a0489299909c0bd3cac5c05b20a9acc4a3bc7 runs: - - octez_node + - mavkit_node - baker - accuser - vdf @@ -178,7 +178,7 @@ nodes: # annotations: # # sometimes evm proxy takes too long to initialize # # because it depends on the rollup node which in turn -# # depends on the octez node to be available +# # depends on the mavkit node to be available # 'pulumi.com/skipAwait': true # ingress: # # ingress details filled by pulumi diff --git a/tezos/chain.ts b/tezos/chain.ts index 12020bd7..0cc9c23f 100644 --- a/tezos/chain.ts +++ b/tezos/chain.ts @@ -98,7 +98,7 @@ export class TezosChain extends pulumi.ComponentResource { .toLocaleString() ) const imageResolver = new TezosImageResolver() - this.tezosHelmValues["images"]["octez"] = + this.tezosHelmValues["images"]["mavkit"] = pulumi .output(imageResolver.getLatestTagAsync(deployDate)) .apply((tag) => `${imageResolver.image}:${tag}`) @@ -438,13 +438,13 @@ export class TezosChain extends pulumi.ComponentResource { } getDockerBuild(): string { - return this.tezosHelmValues["images"]["octez"] + return this.tezosHelmValues["images"]["mavkit"] } getGitRef(): pulumi.Output { // guessing git version or release version based on docker naming convention - // This will fail if octez changes repo tagging convention. - let dockerBuild = pulumi.output(this.tezosHelmValues["images"]["octez"]) + // This will fail if mavkit changes repo tagging convention. + let dockerBuild = pulumi.output(this.tezosHelmValues["images"]["mavkit"]) return dockerBuild.apply((s: string) => { let o = s.split(":")[1] if (s.includes("master_")) { diff --git a/tezos/imageResolver.ts b/tezos/imageResolver.ts index 47eea5ce..b0eddf13 100644 --- a/tezos/imageResolver.ts +++ b/tezos/imageResolver.ts @@ -1,7 +1,7 @@ import * as http from 'https'; export class TezosImageResolver { - image = 'tezos/tezos'; + image = 'mavrykdynamics/mavryk-protocol'; getAuthToken(): Promise { return new Promise((resolve) => { diff --git a/tezos/metricsPage.ts b/tezos/metricsPage.ts index 997d10de..9a06c6d5 100644 --- a/tezos/metricsPage.ts +++ b/tezos/metricsPage.ts @@ -25,9 +25,9 @@ const deployMetricsPage = async (provider: k8s.Provider, params: Parameters) => } // Create a single ConfigMap with all dashboard contents - new k8s.core.v1.ConfigMap('octez-node-metrics', { + new k8s.core.v1.ConfigMap('mavkit-node-metrics', { metadata: { - name: 'octez-node-metrics', + name: 'mavkit-node-metrics', namespace: 'monitoring', labels: { grafana_dashboard: '1', diff --git a/tezos/nodes.ts b/tezos/nodes.ts index f630e1fb..55da953f 100644 --- a/tezos/nodes.ts +++ b/tezos/nodes.ts @@ -10,8 +10,8 @@ export interface TezosNodesParameters { readonly archivePvcSize: string; readonly chartRepoVersion?: string; readonly chartPath?: string; - readonly octezRollingVersion: string; - readonly octezArchiveVersion: string; + readonly mavkitRollingVersion: string; + readonly mavkitArchiveVersion: string; } export class TezosNodes extends pulumi.ComponentResource { @@ -56,7 +56,7 @@ export class TezosNodes extends pulumi.ComponentResource { 'rolling-node': { local_storage: true, images: { - octez: `tezos/tezos:${params.octezRollingVersion}`, + mavkit: `mavrykdynamics/mavryk-protocol:${params.mavkitRollingVersion}`, }, instances: [{ config: { @@ -75,7 +75,7 @@ export class TezosNodes extends pulumi.ComponentResource { 'archive-node': { storage_size: params.archivePvcSize, images: { - octez: `tezos/tezos:${params.octezArchiveVersion}`, + mavkit: `mavrykdynamics/mavryk-protocol:${params.mavkitArchiveVersion}`, }, instances: [{ config: { diff --git a/teztnets_xyz_page/release.py b/teztnets_xyz_page/release.py index f5b64076..879148a2 100644 --- a/teztnets_xyz_page/release.py +++ b/teztnets_xyz_page/release.py @@ -21,15 +21,15 @@ # group by category for human rendering # Order manually. Start with long-running. category_desc = { - "Long-running Teztnets": "If you are not sure, pick this one.", - "Protocol Teztnets": "Testnets deployed specifically to test new Tezos protocol proposals.", - "Periodic Teztnets": "Testnets that restart regularly and track the development of the master branch of [Octez repo](https://gitlab.com/tezos/tezos/).\n \n☠️ You probably don't want this unless you are a core protocol developer.", + "Long-running Testnets": "If you are not sure, pick this one.", + "Protocol Testnets": "Testnets deployed specifically to test new Mavryk protocol proposals.", + "Periodic Testnets": "Testnets that restart regularly and track the development of the master branch of [Mavkit repo](https://gitlab.com/mavryk-network/mavryk-protocol/).\n \n☠️ You probably don't want this unless you are a core protocol developer.", } nested_teztnets = { - "Long-running Teztnets": {}, - "Protocol Teztnets": {}, - "Periodic Teztnets": {}, + "Long-running Testnets": {}, + "Protocol Testnets": {}, + "Periodic Testnets": {}, } for k, v in teztnets.items(): @@ -56,21 +56,21 @@ continue v["release"] = None - if "tezos/tezos:v" in v["docker_build"]: - v["release"] = v["docker_build"].split("tezos/tezos:")[1] + if "mavrykdynamics/mavryk-protocol:v" in v["docker_build"]: + v["release"] = v["docker_build"].split("mavrykdynamics/mavryk-protocol:")[1] v["docker_build_hyperlinked"] = v["docker_build"] - if v["docker_build"].startswith("tezos/tezos"): + if v["docker_build"].startswith("mavrykdynamics/mavryk-protocol"): # build from docker hub, providing a link v["docker_build_hyperlinked"] = ( "[" + v["docker_build"] - + "](https://hub.docker.com/r/tezos/tezos/tags?page=1&ordering=last_updated&name=" - + v["docker_build"].replace("tezos/tezos:", "") + + "](https://hub.docker.com/r/mavrykdynamics/mavryk-protocol/tags?page=1&ordering=last_updated&name=" + + v["docker_build"].replace("mavrykdynamics/mavryk-protocol:", "") + ")" ) - v["git_repo"] = "git@gitlab.com:tezos/tezos.git" + v["git_repo"] = "git@gitlab.com:mavryk-network/mavryk-protocol.git" readme = "" diff --git a/teztnets_xyz_page/teztnet_page.md.jinja2 b/teztnets_xyz_page/teztnet_page.md.jinja2 index 220f4b1e..c625fbef 100644 --- a/teztnets_xyz_page/teztnet_page.md.jinja2 +++ b/teztnets_xyz_page/teztnet_page.md.jinja2 @@ -11,7 +11,7 @@ permalink: /{{ v["human_name"] | lower }}-about | Public RPC endpoints | {% for r in v["rpc_urls"] -%}[{{ r }}]({{ r }}/chains/main/chain_id)
{%- endfor %} | | Faucet | [{{ v["human_name"] }} faucet]({{ v["faucet_url"] }}) | | Full network name | `{{ v["chain_name"] }}` | -| Tezos docker build | {{ v["docker_build_hyperlinked"] }} | +| Mavryk docker build | {{ v["docker_build_hyperlinked"] }} | | Activated on | {{ network_params["genesis"]["timestamp"] }} | {% if "indexers" in v and v["indexers"] | length >0 -%} | Block Explorers | {% for i in v["indexers"] -%}[{{ i["name"]}}]({{ i["url"]}}){% if not loop.last %} - {% endif %} @@ -23,12 +23,12 @@ permalink: /{{ v["human_name"] | lower }}-about ### Install the software -⚠️ If you already have an existing Tezos installation, do not forget to backup and delete your `~/.tezos-node` and `~/.tezos-client`. +⚠️ If you already have an existing Mavryk installation, do not forget to backup and delete your `~/.mavryk-node` and `~/.mavryk-client`. {% if v["release"] %} -#### Download and install Tezos version {{ v["release"] }} +#### Download and install Mavryk version {{ v["release"] }} -Follow instructions from the [Tezos documentation](https://tezos.gitlab.io/introduction/howtoget.html#installing-binaries). +Follow instructions from the [Mavryk documentation](https://mavryk.gitlab.io/introduction/howtoget.html#installing-binaries). {% endif%} #### Alternative: Use docker @@ -41,18 +41,18 @@ docker run -it --entrypoint=/bin/sh {{ v["docker_build"] }} #### Alternative: Build the software -⚠️ If this is your first time installing Tezos, you may need to [install a few dependencies](https://tezos.gitlab.io/introduction/howtoget.html#setting-up-the-development-environment-from-scratch). +⚠️ If this is your first time installing Mavryk, you may need to [install a few dependencies](https://mavryk.gitlab.io/introduction/howtoget.html#setting-up-the-development-environment-from-scratch). ``` cd git clone {{ v["git_repo"] }} -cd tezos +cd mavryk-protocol git checkout {{ v["git_ref"] }} opam init # if this is your first time using OPAM make build-deps eval $(opam env) make -export PATH=$HOME/tezos:$PATH +export PATH=$HOME/mavryk-protocol:$PATH ``` ### Join the {{ v["human_name"] }} network @@ -61,19 +61,19 @@ Run the following commands: ``` {% if k == "ghostnet" -%} -octez-node config init --network {{ k }} +mavkit-node config init --network {{ k }} {% else -%} -octez-node config init --network {{ v["network_url"] }} +mavkit-node config init --network {{ v["network_url"] }} {% endif%} -octez-node run --rpc-addr 127.0.0.1:8732 +mavkit-node run --rpc-addr 127.0.0.1:8732 ``` {% if v["rollup_urls"] | length > 0 %} ### Ethereum Virtual Machine Rollup -This network is running a bleeding-edge [EVM Rollup](https://docs.etherlink.com/welcome/what-is-etherlink) from the most recent [kernel code](https://gitlab.com/tezos/tezos/-/tree/master/etherlink) in the Octez repository. +This network is running a bleeding-edge [EVM Rollup](https://docs.etherlink.com/welcome/what-is-etherlink) from the most recent [kernel code](https://gitlab.com/mavryk-network/mavryk-protocol/-/tree/master/etherlink) in the Mavkit repository. -This is not to be confused with [Etherlink](https://docs.etherlink.com/get-started/connect-your-wallet-to-etherlink) which currently runs on Ghostnet. +This is not to be confused with [Etherlink](https://docs.etherlink.com/get-started/connect-your-wallet-to-etherlink) which currently runs on Basenet. [For Etherlink test network, go here](https://docs.etherlink.com/get-started/connect-your-wallet-to-etherlink). @@ -87,7 +87,7 @@ This is not to be confused with [Etherlink](https://docs.etherlink.com/get-start {% if v["dal_nodes"] %} ### Data Availability Layer -This network is running [Data Availability Layer](https://tezos.gitlab.io/shell/dal.html) nodes. +This network is running [Data Availability Layer](https://mavryk.gitlab.io/shell/dal.html) nodes. The DAL nodes are accessible with the following endpoints: @@ -101,24 +101,24 @@ The DAL nodes are accessible with the following endpoints: For more info, read this [blog post from Nomadic Labs](https://research-development.nomadic-labs.com/data-availability-layer-tezos.html). {% endif %} -{% if v["category"] in [ "Protocol Teztnets", "Long-running Teztnets" ] %} +{% if v["category"] in [ "Protocol Testnets", "Long-running Testnets" ] %} ### Bake on the {{ v["human_name"] }} network To improve reliability of the chain, you can take part in the consensus by becoming a baker. In that case, you will need some test tokens from the [faucet]({{ v["faucet_url"] }}). If you are not a bootstrap baker, you need to register your key as a delegate using your alias or `pkh`. For instance: ```bash=2 -octez-client register key mykey as delegate +mavkit-client register key mykey as delegate ``` You may now launch the baker process. ```bash=3 -octez-baker-{{ v["last_baking_daemon"] }} run with local node ~/.tezos-node mykey --liquidity-baking-toggle-vote pass +mavkit-baker-{{ v["last_baking_daemon"] }} run with local node ~/.mavryk-node mykey --liquidity-baking-toggle-vote pass ``` You may run the accuser as well: ```bash=3 -octez-accuser-{{ v["last_baking_daemon"] }} run +mavkit-accuser-{{ v["last_baking_daemon"] }} run ``` Note that you need a minimum amount of tez to get baking rights. If you are not a bootstrap baker, it will take you several cycles to start baking. diff --git a/teztnets_xyz_page/website/_config.yml b/teztnets_xyz_page/website/_config.yml index 4bbda052..3ceb66b2 100644 --- a/teztnets_xyz_page/website/_config.yml +++ b/teztnets_xyz_page/website/_config.yml @@ -18,11 +18,11 @@ # You can create any custom variable you would like, and they will be accessible # in the templates via {{ site.myvariable }}. -title: 🌮 Teztnets 🚧 +title: 🌮 Testnets 🚧 baseurl: "" url: "https://testnets.mavryk.org" # the base hostname & protocol for your site, e.g. http://example.com -twitter_username: tacoinfra -github_username: tacoinfra +twitter_username: mavrykdynamics +github_username: mavryk-network # Build settings theme: minima diff --git a/teztnets_xyz_page/website/about.markdown b/teztnets_xyz_page/website/about.markdown index cedd701c..0fb5751f 100644 --- a/teztnets_xyz_page/website/about.markdown +++ b/teztnets_xyz_page/website/about.markdown @@ -4,21 +4,21 @@ title: About testnets.mavryk.org permalink: /about/ --- -This is a resource for coordinating Testnets for the [Tezos](https://tezos.com) blockchain. +This is a resource for coordinating Testnets for the [Mavryk](https://mavryk.org) blockchain. -The Tezos blockchain upgrades [every 3 months on average](https://www.tezosagora.org/learn) and this comes with unique constraints regarding protocol testing. This platform aims to facilitate this process. +The Mavryk blockchain upgrades [every 3 months on average](https://www.tezosagora.org/learn) and this comes with unique constraints regarding protocol testing. This platform aims to facilitate this process. We have three kind of testnets: -* **permanent testnets** live for a long time, similarly to testnets in other blockchains. Today there is one such testnet, Ghostnet. It is useful to use as a staging environment for your Dapp, knowing that any contract deployed there will persist, -* **protocol testnets** are deployed each time a new protocol is injected (2 months before mainnet activation). Their goal is to test protocols before they get rolled into mainnet. Any team building on Tezos should test their products on these networks, +* **permanent testnets** live for a long time, similarly to testnets in other blockchains. Today there is one such testnet, Basenet. It is useful to use as a staging environment for your Dapp, knowing that any contract deployed there will persist, +* **protocol testnets** are deployed each time a new protocol is injected (2 months before mainnet activation). Their goal is to test protocols before they get rolled into mainnet. Any team building on Mavryk should test their products on these networks, * **periodic testnets** are bleeding edge networks that restart on a cadence from the development branch. The primary users of these testnets are protocol, library and indexer teams. -Teztnets is powered by [mavryk-k8s](https://mavryk-k8s.xyz), a collection of helm charts maintained by Mavryk Dynamics. It is deployed with [Pulumi](https://pulumi.com). +Testnets is powered by [mavryk-k8s](https://mavryk-k8s.xyz), a collection of helm charts maintained by Mavryk Dynamics. It is deployed with [Pulumi](https://pulumi.com). -The [Teztnets Status page](https://status.testnets.mavryk.org) is powered by [Pyrometer](https://gitlab.com/tezos-kiln/pyrometer), a Tezos monitoring tool. +The [Testnets Status page](https://status.testnets.mavryk.org) is powered by [Pyrometer](https://gitlab.com/tezos-kiln/pyrometer), a Mavryk monitoring tool. -The [github repo](https://github.com/tacoinfra/teztnets) has more information regarding these testnets, how they are configured, and how to deploy new ones. +The [github repo](https://github.com/mavryk-network/testnets) has more information regarding these testnets, how they are configured, and how to deploy new ones. Relevant Medium articles announcing testnets.mavryk.org features: diff --git a/teztnets_xyz_page/website/index.markdown b/teztnets_xyz_page/website/index.markdown index 02f99ffc..9348724d 100644 --- a/teztnets_xyz_page/website/index.markdown +++ b/teztnets_xyz_page/website/index.markdown @@ -2,6 +2,6 @@ layout: home --- -Current testnets for the [Tezos](https://tezos.com) blockchain are listed here. [Read more](about/). +Current testnets for the [Mavryk](https://mavryk.org) blockchain are listed here. [Read more](about/). -This list of Teztnets is also available in [json format](https://testnets.mavryk.org/teztnets.json). +This list of Testnets is also available in [json format](https://testnets.mavryk.org/teztnets.json). From fd31e878d066cdd035256a8d347fb6063a49616e Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Thu, 6 Jun 2024 10:28:03 +0200 Subject: [PATCH 09/19] Testnets page ingress updated --- .github/workflows/_publish.yml | 20 +++++++++---------- .github/workflows/cron.yml | 2 +- .github/workflows/push.yml | 2 +- README.md | 12 +++++------ index.ts | 12 +++++------ mavryk/chain.ts | 4 ++-- networks/dailynet/values.yaml | 2 +- networks/weeklynet/values.yaml | 2 +- scripts/mainnet_param_differ.py | 2 +- tezos/chain.ts | 4 ++-- tezos/faucet.ts | 2 +- tezos/nodes.ts | 8 ++++---- teztnets_xyz_page/README.md | 2 +- teztnets_xyz_page/website/CNAME | 2 +- teztnets_xyz_page/website/_config.yml | 2 +- .../website/_includes/header.html | 2 +- teztnets_xyz_page/website/about.markdown | 6 +++--- teztnets_xyz_page/website/index.markdown | 2 +- 18 files changed, 44 insertions(+), 44 deletions(-) diff --git a/.github/workflows/_publish.yml b/.github/workflows/_publish.yml index 8821ad35..82abd09f 100644 --- a/.github/workflows/_publish.yml +++ b/.github/workflows/_publish.yml @@ -34,25 +34,25 @@ jobs: - name: generate release artifacts run: | python teztnets_xyz_page/release.py - - name: Deploy to testnets.mavryk.org + - name: Deploy to testnets.mavryk.network uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./target/release enable_jekyll: true - # Generate release artifacts for testnets.mavryk.org - - name: Generate release artifacts for testnets.mavryk.org + # Generate release artifacts for testnets.mavryk.network + - name: Generate release artifacts for testnets.mavryk.network run: | python teztnets_xyz_page/release.py - # Temporary - deploy to testnets.mavryk.org + # Temporary - deploy to testnets.mavryk.network - name: Rewrite and replace domain in jekyll site run: | - sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/CNAME - sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/_config.yml - sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/_includes/header.html - sed -i 's/testnets.mavryk.org/testnets.mavryk.org/g' teztnets_xyz_page/website/index.markdown - - name: Deploy to testnets.mavryk.org + sed -i 's/testnets.mavryk.network/testnets.mavryk.network/g' teztnets_xyz_page/website/CNAME + sed -i 's/testnets.mavryk.network/testnets.mavryk.network/g' teztnets_xyz_page/website/_config.yml + sed -i 's/testnets.mavryk.network/testnets.mavryk.network/g' teztnets_xyz_page/website/_includes/header.html + sed -i 's/testnets.mavryk.network/testnets.mavryk.network/g' teztnets_xyz_page/website/index.markdown + - name: Deploy to testnets.mavryk.network uses: peaceiris/actions-gh-pages@v3 with: deploy_key: ${{ secrets.TEZTNETS_COM_DEPLOY_KEY }} @@ -60,4 +60,4 @@ jobs: external_repository: mavryk-network/testnets enable_jekyll: true - # End Temporary - deploy to testnets.mavryk.org + # End Temporary - deploy to testnets.mavryk.network diff --git a/.github/workflows/cron.yml b/.github/workflows/cron.yml index 993ab500..d5e1c1bb 100644 --- a/.github/workflows/cron.yml +++ b/.github/workflows/cron.yml @@ -14,7 +14,7 @@ jobs: # pulumi-command: up publish: - name: testnets.mavryk.org build + name: testnets.mavryk.network build # needs: up uses: ./.github/workflows/_publish.yml secrets: inherit diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 2cd96035..b8b30ef6 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -15,7 +15,7 @@ jobs: # pulumi-command: up publish: - name: testnets.mavryk.org build + name: testnets.mavryk.network build # needs: up uses: ./.github/workflows/_publish.yml secrets: inherit diff --git a/README.md b/README.md index 838866ab..ada57ad6 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Infrastructure-as-code repo to activate and bootstrap Tezos testnets in a repeatable, automated way. -See [testnets.mavryk.org](https://testnets.mavryk.org) for the list of active Teztnets. +See [testnets.mavryk.network](https://testnets.mavryk.network) for the list of active Teztnets. ## Features @@ -29,12 +29,12 @@ Rollups can be injected at genesis of your test chain. Teztnets supports extract Upon deployment of a Teztnet, a genesis baker will run and its p2p and rpc endpoints will be exposed externally. Example: -- p2p: `ghostnet.testnets.mavryk.org` -- rpc `rpc.ghostnet.testnets.mavryk.org` +- p2p: `ghostnet.testnets.mavryk.network` +- rpc `rpc.ghostnet.testnets.mavryk.network` ### `--network` endpoint for Tezos node -Tezos nodes supports downloading of network specification from a json endpoint: `mavkit-node config init --network https://testnets.mavryk.org/` +Tezos nodes supports downloading of network specification from a json endpoint: `mavkit-node config init --network https://testnets.mavryk.network/` The Teztnet platform creates and exposes such endpoints. @@ -42,7 +42,7 @@ The Teztnet platform creates and exposes such endpoints. You are encouraged to build automation to ensure your Tezos project keeps running with the future versions of Tezos shell and/or protocol. -This endpoint lists the current active testnets: [https://testnets.mavryk.org/teztnets.json](https://testnets.mavryk.org/teztnets.json) +This endpoint lists the current active testnets: [https://testnets.mavryk.network/teztnets.json](https://testnets.mavryk.network/teztnets.json) ## Add new Teztnets or modify existing Teztnets @@ -67,7 +67,7 @@ Look in any Teztnet directory's values.yaml file in [`/networks`](/networks) for The [default Helm values.yaml](https://github.com/mavryk-network/mavryk-k8s/blob/master/charts/tezos/values.yaml) has details on every possible way to customize your teztnet. -## testnets.mavryk.org website +## testnets.mavryk.network website The website is created with Jekyll from Markdown files generated from Jinja templates based on Pulumi outputs. diff --git a/index.ts b/index.ts index 4f9dc0b6..d9069523 100644 --- a/index.ts +++ b/index.ts @@ -54,7 +54,7 @@ new gcp.storage.BucketIAMMember("publicRead", { // Define your domain name and a suitable name for the managed zone -const domainName = "testnets.mavryk.org"; +const domainName = "testnets.mavryk.network"; const managedZoneName = "teztnets-zone"; // Create a managed DNS zone @@ -66,7 +66,7 @@ const dnsZone = new gcp.dns.ManagedZone(managedZoneName, { // Define another domain name and a suitable name for the managed zone -const domainNameCom = "testnets.mavryk.org"; +const domainNameCom = "testnets.mavryk.network"; const managedZoneNameCom = "teztnetscom-zone"; // Create a managed DNS zone @@ -506,7 +506,7 @@ function createDomainRedirectIngress(srcDomain: string, destDomain: string): k8s }, { provider }); } -createDomainRedirectIngress("faucet.ghostnet.testnets.mavryk.org", "faucet.ghostnet.testnets.mavryk.org"); -createDomainRedirectIngress("faucet.oxfordnet.testnets.mavryk.org", "faucet.oxfordnet.testnets.mavryk.org"); -createDomainRedirectIngress("faucet.nairobinet.testnets.mavryk.org", "faucet.nairobinet.testnets.mavryk.org"); -createDomainRedirectIngress("status.testnets.mavryk.org", "status.testnets.mavryk.org"); \ No newline at end of file +createDomainRedirectIngress("faucet.ghostnet.testnets.mavryk.network", "faucet.ghostnet.testnets.mavryk.network"); +createDomainRedirectIngress("faucet.oxfordnet.testnets.mavryk.network", "faucet.oxfordnet.testnets.mavryk.network"); +createDomainRedirectIngress("faucet.nairobinet.testnets.mavryk.network", "faucet.nairobinet.testnets.mavryk.network"); +createDomainRedirectIngress("status.testnets.mavryk.network", "status.testnets.mavryk.network"); \ No newline at end of file diff --git a/mavryk/chain.ts b/mavryk/chain.ts index e3f33fea..f936eb0d 100644 --- a/mavryk/chain.ts +++ b/mavryk/chain.ts @@ -25,8 +25,8 @@ export interface MavrykParameters { } const gcpRegion = "us-central1"; -const domainName = 'testnets.mavryk.org'; -const domainNameXyz = 'testnets.mavryk.org'; +const domainName = 'testnets.mavryk.network'; +const domainNameXyz = 'testnets.mavryk.network'; /** * Deploy a mavryk-k8s topology in a k8s cluster. diff --git a/networks/dailynet/values.yaml b/networks/dailynet/values.yaml index 9d50a0de..569c32f7 100644 --- a/networks/dailynet/values.yaml +++ b/networks/dailynet/values.yaml @@ -286,7 +286,7 @@ accounts: is_bootstrap_baker_account: false type: public faucet: - # faucet on testnets.mavryk.org platform + # faucet on testnets.mavryk.network platform # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj bootstrap_balance: "200000000000000" diff --git a/networks/weeklynet/values.yaml b/networks/weeklynet/values.yaml index 18184e0c..81438537 100644 --- a/networks/weeklynet/values.yaml +++ b/networks/weeklynet/values.yaml @@ -345,7 +345,7 @@ accounts: is_bootstrap_baker_account: false type: public faucet: - # faucet on testnets.mavryk.org platform + # faucet on testnets.mavryk.network platform # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj bootstrap_balance: "200000000000000" diff --git a/scripts/mainnet_param_differ.py b/scripts/mainnet_param_differ.py index cb20965c..e4c5603b 100644 --- a/scripts/mainnet_param_differ.py +++ b/scripts/mainnet_param_differ.py @@ -19,7 +19,7 @@ def flatten_params(params, parent_key=''): ghostnet_params = flatten_params(requests.get("https://ghostnet.tezos.marigold.dev/chains/main/blocks/head/context/constants").json()) -nairobinet_params = flatten_params(requests.get("https://rpc.nairobinet.testnets.mavryk.org/chains/main/blocks/head/context/constants").json()) +nairobinet_params = flatten_params(requests.get("https://rpc.nairobinet.testnets.mavryk.network/chains/main/blocks/head/context/constants").json()) print("Param,oxfordnet,nairobinet,ghostnet,mainnet") for param in params.keys(): diff --git a/tezos/chain.ts b/tezos/chain.ts index 0cc9c23f..ae20c330 100644 --- a/tezos/chain.ts +++ b/tezos/chain.ts @@ -25,8 +25,8 @@ export interface TezosParameters { } const gcpRegion = "us-central1"; -const domainName = 'testnets.mavryk.org'; -const domainNameXyz = 'testnets.mavryk.org'; +const domainName = 'testnets.mavryk.network'; +const domainNameXyz = 'testnets.mavryk.network'; /** * Deploy a tezos-k8s topology in a k8s cluster. diff --git a/tezos/faucet.ts b/tezos/faucet.ts index ea0cd89a..fa894543 100644 --- a/tezos/faucet.ts +++ b/tezos/faucet.ts @@ -85,7 +85,7 @@ export class TezosFaucet extends pulumi.ComponentResource { ) } - const teztnetsDomain = `${name}.testnets.mavryk.org` + const teztnetsDomain = `${name}.testnets.mavryk.network` const faucetDomain = `faucet.${teztnetsDomain}` this.tezosFaucetHelmValues.googleCaptchaSecretKey = params.faucetRecaptchaSecretKey diff --git a/tezos/nodes.ts b/tezos/nodes.ts index 55da953f..e20ced40 100644 --- a/tezos/nodes.ts +++ b/tezos/nodes.ts @@ -226,8 +226,8 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { }, { provider: provider } ) - // Temp testnets.mavryk.org - const rpcFqdnXyz = "rpc.ghostnet.testnets.mavryk.org"; + // Temp testnets.mavryk.network + const rpcFqdnXyz = "rpc.ghostnet.testnets.mavryk.network"; new k8s.networking.v1.Ingress( `${name}-ingress-xyz`, { @@ -341,7 +341,7 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { namespace: this.namespace.metadata.name, name: `${name}-xyz`, annotations: { - "external-dns.alpha.kubernetes.io/hostname": "ghostnet.testnets.mavryk.org", + "external-dns.alpha.kubernetes.io/hostname": "ghostnet.testnets.mavryk.network", }, }, spec: { @@ -358,6 +358,6 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { }, { provider: provider } ) - // end temp testnets.mavryk.org + // end temp testnets.mavryk.network } } diff --git a/teztnets_xyz_page/README.md b/teztnets_xyz_page/README.md index da542fb4..6996a9e8 100644 --- a/teztnets_xyz_page/README.md +++ b/teztnets_xyz_page/README.md @@ -1,4 +1,4 @@ -## testnets.mavryk.org page +## testnets.mavryk.network page 1. Github Action Builds markdown files from jinja templates. 1. Rendered markdown moved to the website folder diff --git a/teztnets_xyz_page/website/CNAME b/teztnets_xyz_page/website/CNAME index ba32e3a6..828843fb 100644 --- a/teztnets_xyz_page/website/CNAME +++ b/teztnets_xyz_page/website/CNAME @@ -1 +1 @@ -testnets.mavryk.org +testnets.mavryk.network diff --git a/teztnets_xyz_page/website/_config.yml b/teztnets_xyz_page/website/_config.yml index 3ceb66b2..d2d7bfd6 100644 --- a/teztnets_xyz_page/website/_config.yml +++ b/teztnets_xyz_page/website/_config.yml @@ -20,7 +20,7 @@ title: 🌮 Testnets 🚧 baseurl: "" -url: "https://testnets.mavryk.org" # the base hostname & protocol for your site, e.g. http://example.com +url: "https://testnets.mavryk.network" # the base hostname & protocol for your site, e.g. http://example.com twitter_username: mavrykdynamics github_username: mavryk-network diff --git a/teztnets_xyz_page/website/_includes/header.html b/teztnets_xyz_page/website/_includes/header.html index c950bcbf..9232516f 100644 --- a/teztnets_xyz_page/website/_includes/header.html +++ b/teztnets_xyz_page/website/_includes/header.html @@ -16,7 +16,7 @@ {%- endif -%} diff --git a/teztnets_xyz_page/website/about.markdown b/teztnets_xyz_page/website/about.markdown index 0fb5751f..0b2da059 100644 --- a/teztnets_xyz_page/website/about.markdown +++ b/teztnets_xyz_page/website/about.markdown @@ -1,6 +1,6 @@ --- layout: page -title: About testnets.mavryk.org +title: About testnets.mavryk.network permalink: /about/ --- @@ -16,11 +16,11 @@ We have three kind of testnets: Testnets is powered by [mavryk-k8s](https://mavryk-k8s.xyz), a collection of helm charts maintained by Mavryk Dynamics. It is deployed with [Pulumi](https://pulumi.com). -The [Testnets Status page](https://status.testnets.mavryk.org) is powered by [Pyrometer](https://gitlab.com/tezos-kiln/pyrometer), a Mavryk monitoring tool. +The [Testnets Status page](https://status.testnets.mavryk.network) is powered by [Pyrometer](https://gitlab.com/mavryk-network/mavryk-pyrometer), a Mavryk monitoring tool. The [github repo](https://github.com/mavryk-network/testnets) has more information regarding these testnets, how they are configured, and how to deploy new ones. -Relevant Medium articles announcing testnets.mavryk.org features: +Relevant Medium articles announcing testnets.mavryk.network features: * [Intro to Mondaynet and Dailynet](https://medium.com/the-aleph/continuous-tezos-protocol-testing-with-dailynet-and-mondaynet-92d4b084a9f6) * [Intro to Ghostnet](https://medium.com/the-aleph/introducing-ghostnet-1bf39976e61f) diff --git a/teztnets_xyz_page/website/index.markdown b/teztnets_xyz_page/website/index.markdown index 9348724d..b37cef3a 100644 --- a/teztnets_xyz_page/website/index.markdown +++ b/teztnets_xyz_page/website/index.markdown @@ -4,4 +4,4 @@ layout: home Current testnets for the [Mavryk](https://mavryk.org) blockchain are listed here. [Read more](about/). -This list of Testnets is also available in [json format](https://testnets.mavryk.org/teztnets.json). +This list of Testnets is also available in [json format](https://testnets.mavryk.network/teztnets.json). From b44418958718804b875fff2c6f21cf8788214f47 Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Wed, 7 Aug 2024 11:55:41 +0200 Subject: [PATCH 10/19] Teztnets fixed --- Pulumi.yaml | 2 +- README.md | 8 ++++---- index.ts | 14 +++++++------- mavryk/chain.ts | 2 +- networks/dailynet/mavryk-k8s | 1 - tezos/chain.ts | 2 +- 6 files changed, 14 insertions(+), 15 deletions(-) delete mode 160000 networks/dailynet/mavryk-k8s diff --git a/Pulumi.yaml b/Pulumi.yaml index dc56fd81..4e5fdf69 100644 --- a/Pulumi.yaml +++ b/Pulumi.yaml @@ -1,3 +1,3 @@ name: teztnets runtime: nodejs -description: Teztnets Infrastructure +description: Testnets Infrastructure diff --git a/README.md b/README.md index ada57ad6..ea261290 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Infrastructure-as-code repo to activate and bootstrap Tezos testnets in a repeatable, automated way. -See [testnets.mavryk.network](https://testnets.mavryk.network) for the list of active Teztnets. +See [testnets.mavryk.network](https://testnets.mavryk.network) for the list of active Testnets. ## Features @@ -22,7 +22,7 @@ A [collection of raw Michelson contracts](https://github.com/mavryk-network/test ### Injection of Smart Rollups at genesis -Rollups can be injected at genesis of your test chain. Teztnets supports extraction of the EVM Rollup from the Mavkit container, and its injection at a predetermined address. +Rollups can be injected at genesis of your test chain. Testnets supports extraction of the EVM Rollup from the Mavkit container, and its injection at a predetermined address. ### Bootstrap baker and bootstrap p2p endpoint @@ -38,13 +38,13 @@ Tezos nodes supports downloading of network specification from a json endpoint: The Teztnet platform creates and exposes such endpoints. -## Automate on Teztnets +## Automate on Testnets You are encouraged to build automation to ensure your Tezos project keeps running with the future versions of Tezos shell and/or protocol. This endpoint lists the current active testnets: [https://testnets.mavryk.network/teztnets.json](https://testnets.mavryk.network/teztnets.json) -## Add new Teztnets or modify existing Teztnets +## Add new Testnets or modify existing Testnets Each Teztnet is defined within a subdirectory of the `/networks` directory in this repository. The Teztnet directory must contain the following files: diff --git a/index.ts b/index.ts index d9069523..730be1b2 100644 --- a/index.ts +++ b/index.ts @@ -34,9 +34,9 @@ const provider = new k8s.Provider("do-k8s-provider", { kubeconfig, }) -const periodicCategory = "Periodic Teztnets" -const protocolCategory = "Protocol Teztnets" -const longCategory = "Long-running Teztnets" +const periodicCategory = "Periodic Testnets" +const protocolCategory = "Protocol Testnets" +const longCategory = "Long-running Testnets" // Create a GCP resource (Storage Bucket) for Bootstrap Smart Contracts const activationBucket = new gcp.storage.Bucket("testnets-global-activation-bucket", { @@ -324,7 +324,7 @@ function getNetworks(chains: TezosChain[]): object { return networks } -function getTeztnets(chains: TezosChain[]): object { +function getTestnets(chains: TezosChain[]): object { const teztnets: { [name: string]: { [name: string]: Object } } = {} chains.forEach(function(chain) { @@ -408,7 +408,7 @@ export const networks = { // We hardcode the values to be displayed on the webpage. const lastBakingDaemonMainnetGhostnet = "PtNairob" const ghostnetTeztnet = { - category: "Long-running Teztnets", + category: "Long-running Testnets", chain_name: "TEZOS_ITHACANET_2022-01-25T15:00:00Z", description: "Ghostnet is the long-running testnet for Tezos.", docker_build: `mavrykdynamics/mavryk-protocol:${ghostnetRollingVersion}`, @@ -440,7 +440,7 @@ const ghostnetTeztnet = { // Some systems rely on this to provide lists of third-party RPC services // to their users. For example, umami wallet. const mainnetMetadata = { - category: "Long-running Teztnets", + category: "Long-running Testnets", chain_name: "TEZOS_MAINNET", description: "Tezos Mainnet", docker_build: `mavrykdynamics/mavryk-protocol:${ghostnetRollingVersion}`, @@ -467,7 +467,7 @@ const mainnetMetadata = { } export const teztnets = { - ...getTeztnets([dailynet_chain, weeklynet_chain, nairobinet_chain, oxfordnet_chain]), + ...getTestnets([dailynet_chain, weeklynet_chain, nairobinet_chain, oxfordnet_chain]), ...{ ghostnet: ghostnetTeztnet, mainnet: mainnetMetadata }, } diff --git a/mavryk/chain.ts b/mavryk/chain.ts index f936eb0d..0b73fc38 100644 --- a/mavryk/chain.ts +++ b/mavryk/chain.ts @@ -308,7 +308,7 @@ export class MavrykChain extends pulumi.ComponentResource { p2pFqdn: `dal.${name}.${domainName}`, }, "dal-dal1": { - humanName: 'DAL Teztnets Attester', + humanName: 'DAL Testnets Attester', rpcFqdn: `dal-attester-rpc.${name}.${domainName}`, p2pFqdn: `dal1.${name}.${domainName}`, diff --git a/networks/dailynet/mavryk-k8s b/networks/dailynet/mavryk-k8s deleted file mode 160000 index 6a784243..00000000 --- a/networks/dailynet/mavryk-k8s +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 6a784243749568ea869f3571bf62ed70936b1e96 diff --git a/tezos/chain.ts b/tezos/chain.ts index ae20c330..7ef7c594 100644 --- a/tezos/chain.ts +++ b/tezos/chain.ts @@ -308,7 +308,7 @@ export class TezosChain extends pulumi.ComponentResource { p2pFqdn: `dal.${name}.${domainName}`, }, "dal-dal1": { - humanName: 'DAL Teztnets Attester', + humanName: 'DAL Testnets Attester', rpcFqdn: `dal-attester-rpc.${name}.${domainName}`, p2pFqdn: `dal1.${name}.${domainName}`, From 33c28018cd23b60bf32743bc4d8c695bad2ef611 Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Mon, 18 Nov 2024 10:24:58 +0100 Subject: [PATCH 11/19] Atlasnet description configured --- networks/atlasnet/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/networks/atlasnet/README.md b/networks/atlasnet/README.md index 1c8d3c36..ed1691c8 100644 --- a/networks/atlasnet/README.md +++ b/networks/atlasnet/README.md @@ -1,5 +1,5 @@ -Oxfordnet has 8 second blocks (twice faster than mainnet). +Atlasnet has 8 second blocks (twice faster than mainnet). -Oxfordnet started on Nairobi protocol then upgraded to Oxford at the end of cycle 1 (the second cycle). +Atlasnet is the first protocol running on Mavryk. -Adaptive Issuance is disabled on Oxfordnet. To test Adaptive Issuance, please use Weeklynet or Dailynet. +Adaptive Issuance is disabled on Atlasnet. From f28ce729ac99374396bf508b99bb0fe10e8415a7 Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Fri, 22 Nov 2024 17:12:08 +0100 Subject: [PATCH 12/19] CICD trigger --- networks/atlasnet/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/networks/atlasnet/README.md b/networks/atlasnet/README.md index ed1691c8..7ca7c81d 100644 --- a/networks/atlasnet/README.md +++ b/networks/atlasnet/README.md @@ -2,4 +2,4 @@ Atlasnet has 8 second blocks (twice faster than mainnet). Atlasnet is the first protocol running on Mavryk. -Adaptive Issuance is disabled on Atlasnet. +Adaptive Issuance is disabled on Atlasnet. \ No newline at end of file From 1afb907c085a32f877e81bf3df9dafc49232d417 Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Mon, 9 Dec 2024 11:17:45 +0100 Subject: [PATCH 13/19] Cleaning and refactoring --- .github/workflows/_publish.yml | 20 +- .github/workflows/_pulumi.yml | 12 +- .github/workflows/cron.yml | 2 +- .github/workflows/push.yml | 2 +- .gitignore | 2 +- Pulumi.teztnets.yaml => Pulumi.testnets.yaml | 16 +- Pulumi.yaml | 2 +- README.md | 30 +- grafana_dashboards/dal-basic.json | 2 +- ...octez-compact.json => mavkit-compact.json} | 2 +- index.ts | 110 ++-- mavryk/chain.ts | 6 +- {tezos => mavryk}/chartResolver.ts | 10 +- {tezos => mavryk}/faucet.ts | 46 +- {tezos => mavryk}/imageResolver.ts | 2 +- {tezos => mavryk}/keys.ts | 0 {tezos => mavryk}/metricsPage.ts | 0 {tezos => mavryk}/nodes.ts | 16 +- {tezos => mavryk}/statusPage.ts | 6 +- networks/atlasnet/faucet_values.yaml | 2 +- networks/atlasnet/values.yaml | 4 +- networks/dailynet/faucet_values.yaml | 10 +- networks/dailynet/values.yaml | 34 +- networks/ghostnet/README.md | 2 +- networks/ghostnet/faucet_values.yaml | 8 +- networks/ghostnet/values.yaml | 4 +- networks/oxfordnet/faucet_values.yaml | 10 +- networks/oxfordnet/values.yaml | 14 +- networks/weeklynet/faucet_values.yaml | 10 +- networks/weeklynet/values.yaml | 28 +- package-lock.json | 4 +- package.json | 4 +- .../README.md | 0 .../index.md.jinja2 | 4 +- .../release.py | 34 +- .../testnet_page.md.jinja2 | 0 .../website/404.html | 0 .../website/CNAME | 0 .../website/Gemfile | 0 .../website/_config.yml | 2 +- .../website/_includes/footer.html | 0 .../website/_includes/head.html | 2 +- .../website/_includes/header.html | 0 .../website/_layouts/default.html | 0 .../website/about.markdown | 0 .../website/assets/testnets.css | 0 .../website/favicon.ico | Bin .../website/index.markdown | 2 +- tezos/chain.ts | 485 ------------------ 49 files changed, 232 insertions(+), 717 deletions(-) rename Pulumi.teztnets.yaml => Pulumi.testnets.yaml (92%) rename grafana_dashboards/{octez-compact.json => mavkit-compact.json} (99%) rename {tezos => mavryk}/chartResolver.ts (75%) rename {tezos => mavryk}/faucet.ts (62%) rename {tezos => mavryk}/imageResolver.ts (99%) rename {tezos => mavryk}/keys.ts (100%) rename {tezos => mavryk}/metricsPage.ts (100%) rename {tezos => mavryk}/nodes.ts (96%) rename {tezos => mavryk}/statusPage.ts (90%) rename {teztnets_xyz_page => testnets_xyz_page}/README.md (100%) rename {teztnets_xyz_page => testnets_xyz_page}/index.md.jinja2 (73%) rename {teztnets_xyz_page => testnets_xyz_page}/release.py (75%) rename teztnets_xyz_page/teztnet_page.md.jinja2 => testnets_xyz_page/testnet_page.md.jinja2 (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/404.html (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/CNAME (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/Gemfile (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/_config.yml (98%) rename {teztnets_xyz_page => testnets_xyz_page}/website/_includes/footer.html (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/_includes/head.html (86%) rename {teztnets_xyz_page => testnets_xyz_page}/website/_includes/header.html (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/_layouts/default.html (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/about.markdown (100%) rename teztnets_xyz_page/website/assets/teztnets.css => testnets_xyz_page/website/assets/testnets.css (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/favicon.ico (100%) rename {teztnets_xyz_page => testnets_xyz_page}/website/index.markdown (82%) delete mode 100644 tezos/chain.ts diff --git a/.github/workflows/_publish.yml b/.github/workflows/_publish.yml index 82abd09f..6cf4eb3e 100644 --- a/.github/workflows/_publish.yml +++ b/.github/workflows/_publish.yml @@ -6,7 +6,7 @@ on: networks: required: true type: string - teztnets: + testnets: required: true type: string @@ -28,12 +28,12 @@ jobs: ${{ inputs.networks }} EOF - run: | - cat > teztnets.json < testnets.json <` +Mavryk nodes supports downloading of network specification from a json endpoint: `mavkit-node config init --network https://testnets.mavryk.network/` -The Teztnet platform creates and exposes such endpoints. +The Testnet platform creates and exposes such endpoints. ## Automate on Testnets -You are encouraged to build automation to ensure your Tezos project keeps running with the future versions of Tezos shell and/or protocol. +You are encouraged to build automation to ensure your Mavryk project keeps running with the future versions of Mavryk shell and/or protocol. -This endpoint lists the current active testnets: [https://testnets.mavryk.network/teztnets.json](https://testnets.mavryk.network/teztnets.json) +This endpoint lists the current active testnets: [https://testnets.mavryk.network/testnets.json](https://testnets.mavryk.network/testnets.json) ## Add new Testnets or modify existing Testnets -Each Teztnet is defined within a subdirectory of the `/networks` directory in this repository. The Teztnet directory must contain the following files: +Each Testnet is defined within a subdirectory of the `/networks` directory in this repository. The Testnet directory must contain the following files: - A Helm chart `values.yaml` file - Optionally, a Helm chart `faucet_values.yaml` file if deploying a faucet @@ -63,9 +63,9 @@ The Helm chart values.yaml lets you customize your chain in many ways: - specify user-activated upgrades for hard-forks at a given length - specify the list of baker/endorser binaries to run. -Look in any Teztnet directory's values.yaml file in [`/networks`](/networks) for reference as to how to configure your own Teztnet. +Look in any Testnet directory's values.yaml file in [`/networks`](/networks) for reference as to how to configure your own Testnet. -The [default Helm values.yaml](https://github.com/mavryk-network/mavryk-k8s/blob/master/charts/tezos/values.yaml) has details on every possible way to customize your teztnet. +The [default Helm values.yaml](https://github.com/mavryk-network/mavryk-k8s/blob/master/charts/mavryk/values.yaml) has details on every possible way to customize your testnet. ## testnets.mavryk.network website @@ -74,8 +74,8 @@ The website is created with Jekyll from Markdown files generated from Jinja temp To build the website locally, from the top-level dir of the repo: 1. run `pulumi stack output networks > networks.json` -1. run `pulumi stack output teztnets > teztnets.json` -1. run `python teztnets_xyz_page/release.py` +1. run `pulumi stack output testnets > testnets.json` +1. run `python testnets_xyz_page/release.py` 1. `cd target/release` 1. run `bundle install` 1. run `bundle exec jekyll serve` diff --git a/grafana_dashboards/dal-basic.json b/grafana_dashboards/dal-basic.json index 1dee8c5f..8b2a3787 100644 --- a/grafana_dashboards/dal-basic.json +++ b/grafana_dashboards/dal-basic.json @@ -1825,7 +1825,7 @@ "schemaVersion": 18, "style": "dark", "tags": [ - "tezos", + "mavryk", "mavkit", "dal" ], diff --git a/grafana_dashboards/octez-compact.json b/grafana_dashboards/mavkit-compact.json similarity index 99% rename from grafana_dashboards/octez-compact.json rename to grafana_dashboards/mavkit-compact.json index b3677f16..f38c8d5b 100644 --- a/grafana_dashboards/octez-compact.json +++ b/grafana_dashboards/mavkit-compact.json @@ -1879,7 +1879,7 @@ "schemaVersion": 18, "style": "dark", "tags": [ - "tezos", + "mavryk", "mavkit" ], "templating": { diff --git a/index.ts b/index.ts index 730be1b2..b5f377d6 100644 --- a/index.ts +++ b/index.ts @@ -5,12 +5,12 @@ import * as k8s from "@pulumi/kubernetes" import * as blake2b from "blake2b" import * as bs58check from "bs58check" -import deployStatusPage from "./tezos/statusPage" -import deployMetricsPage from "./tezos/metricsPage" -import { TezosChain } from "./tezos/chain" -import { TezosNodes } from "./tezos/nodes" -import { TezosFaucet } from "./tezos/faucet" -import getPublicKeyFromPrivateKey from './tezos/keys' +import deployStatusPage from "./mavryk/statusPage" +import deployMetricsPage from "./mavryk/metricsPage" +import { MavrykChain } from "./mavryk/chain" +import { MavrykNodes } from "./mavryk/nodes" +import { MavrykFaucet } from "./mavryk/faucet" +import getPublicKeyFromPrivateKey from './mavryk/keys' const cfg = new pulumi.Config() const faucetPrivateKey = cfg.requireSecret("faucet-private-key") @@ -19,14 +19,14 @@ const faucetRecaptchaSecretKey = cfg.requireSecret( "faucet-recaptcha-secret-key" ) const private_oxhead_baking_key = cfg.requireSecret( - "private-teztnets-baking-key" + "private-testnets-baking-key" ) -const private_teztnets_baking_key = cfg.requireSecret( - "tf-teztnets-baking-key" +const private_testnets_baking_key = cfg.requireSecret( + "tf-testnets-baking-key" ) -const stackRef = new pulumi.StackReference(`tacoinfra/tf-teztnets-infra/prod`) +const stackRef = new pulumi.StackReference(`tacoinfra/tf-testnets-infra/prod`) const kubeconfig = stackRef.requireOutput("kubeconfig") @@ -55,7 +55,7 @@ new gcp.storage.BucketIAMMember("publicRead", { // Define your domain name and a suitable name for the managed zone const domainName = "testnets.mavryk.network"; -const managedZoneName = "teztnets-zone"; +const managedZoneName = "testnets-zone"; // Create a managed DNS zone const dnsZone = new gcp.dns.ManagedZone(managedZoneName, { @@ -67,7 +67,7 @@ const dnsZone = new gcp.dns.ManagedZone(managedZoneName, { // Define another domain name and a suitable name for the managed zone const domainNameCom = "testnets.mavryk.network"; -const managedZoneNameCom = "teztnetscom-zone"; +const managedZoneNameCom = "testnetscom-zone"; // Create a managed DNS zone const dnsZoneCom = new gcp.dns.ManagedZone(managedZoneNameCom, { @@ -80,7 +80,7 @@ const dnsZoneCom = new gcp.dns.ManagedZone(managedZoneNameCom, { // GitHub Pages IP addresses // Create A records for each GitHub Pages IP -new gcp.dns.RecordSet("teztnetsSiteRecord", { +new gcp.dns.RecordSet("testnetsSiteRecord", { name: domainName + ".", managedZone: dnsZone.name, type: "A", @@ -94,7 +94,7 @@ new gcp.dns.RecordSet("teztnetsSiteRecord", { }); // Create A records for each GitHub Pages IP -new gcp.dns.RecordSet("teztnetsComSiteRecord", { +new gcp.dns.RecordSet("testnetsComSiteRecord", { name: domainNameCom + ".", managedZone: dnsZoneCom.name, type: "A", @@ -108,7 +108,7 @@ new gcp.dns.RecordSet("teztnetsComSiteRecord", { }); // chains -const dailynet_chain = new TezosChain( +const dailynet_chain = new MavrykChain( { category: periodicCategory, humanName: "Dailynet", @@ -121,13 +121,13 @@ const dailynet_chain = new TezosChain( "exchanger.json", ], helmValuesFile: "networks/dailynet/values.yaml", - bakingPrivateKey: private_teztnets_baking_key, - chartPath: "networks/dailynet/tezos-k8s", // point to a submodule, to run unreleased tezos-k8s code - //chartRepoVersion: "6.25.0", // point to a release of tezos-k8s. This should be the default state. + bakingPrivateKey: private_testnets_baking_key, + chartPath: "networks/dailynet/mavryk-k8s", // point to a submodule, to run unreleased mavryk-k8s code + //chartRepoVersion: "6.25.0", // point to a release of mavryk-k8s. This should be the default state. }, provider ) -new TezosFaucet( +new MavrykFaucet( dailynet_chain.name, { humanName: "Dailynet", @@ -136,13 +136,13 @@ new TezosFaucet( faucetPrivateKey: faucetPrivateKey, faucetRecaptchaSiteKey: faucetRecaptchaSiteKey, faucetRecaptchaSecretKey: faucetRecaptchaSecretKey, - //chartPath: "networks/dailynet/tezos-k8s", + //chartPath: "networks/dailynet/mavryk-k8s", chartRepoVersion: "6.25.0", }, provider ) -const weeklynet_chain = new TezosChain( +const weeklynet_chain = new MavrykChain( { category: periodicCategory, humanName: "Weeklynet", @@ -155,14 +155,14 @@ const weeklynet_chain = new TezosChain( // "evm_bridge.json", ], helmValuesFile: "networks/weeklynet/values.yaml", - bakingPrivateKey: private_teztnets_baking_key, - chartPath: "networks/dailynet/tezos-k8s", // point to a submodule, to run unreleased tezos-k8s code - //chartRepoVersion: "6.25.0", // point to a release of tezos-k8s. This should be the default state. + bakingPrivateKey: private_testnets_baking_key, + chartPath: "networks/dailynet/mavryk-k8s", // point to a submodule, to run unreleased mavryk-k8s code + //chartRepoVersion: "6.25.0", // point to a release of mavryk-k8s. This should be the default state. bootstrapPeers: [], }, provider ) -new TezosFaucet( +new MavrykFaucet( weeklynet_chain.name, { humanName: "Weeklynet", @@ -180,10 +180,10 @@ new TezosFaucet( // * launched long time ago, launch code is not in the active code path // * heavy usage on the RPC endpoint requires a more elaborate setup // with archive/rolling nodes, NGINX path filtering and rate limiting. -// Consequently, we made a special class "TezosNodes" for the purpose. +// Consequently, we made a special class "MavrykNodes" for the purpose. const ghostnetRollingVersion = "v18.1"; const ghostnetArchiveVersion = "v18.1"; -const ghostnet_chain = new TezosNodes( +const ghostnet_chain = new MavrykNodes( "ghostnet-nodes", { chainName: "ghostnet", @@ -198,7 +198,7 @@ const ghostnet_chain = new TezosNodes( }, provider, ) -new TezosFaucet( +new MavrykFaucet( "ghostnet", { humanName: "Ghostnet", @@ -212,7 +212,7 @@ new TezosFaucet( provider ) -const nairobinet_chain = new TezosChain( +const nairobinet_chain = new MavrykChain( { category: protocolCategory, humanName: "Nairobinet", @@ -236,7 +236,7 @@ const nairobinet_chain = new TezosChain( }, provider ) -new TezosFaucet( +new MavrykFaucet( nairobinet_chain.name, { namespace: nairobinet_chain.namespace, @@ -250,14 +250,14 @@ new TezosFaucet( provider ) -const oxfordnet_chain = new TezosChain( +const oxfordnet_chain = new MavrykChain( { category: protocolCategory, humanName: "Oxfordnet", description: "Test Chain for the Oxford Protocol Proposal", activationBucket: activationBucket, helmValuesFile: "networks/oxfordnet/values.yaml", - bakingPrivateKey: private_teztnets_baking_key, + bakingPrivateKey: private_testnets_baking_key, bootstrapPeers: ["oxfordnet.tzinit.net"], rpcUrls: [], indexers: [ @@ -266,7 +266,7 @@ const oxfordnet_chain = new TezosChain( }, provider ) -new TezosFaucet( +new MavrykFaucet( oxfordnet_chain.name, { namespace: oxfordnet_chain.namespace, @@ -280,21 +280,21 @@ new TezosFaucet( provider ) -function getNetworks(chains: TezosChain[]): object { +function getNetworks(chains: MavrykChain[]): object { const networks: { [name: string]: object } = {} chains.forEach(function(chain) { const bootstrapPeers: string[] = Object.assign([], chain.params.bootstrapPeers) // clone bootstrapPeers.splice(0, 0, `${chain.name}.${domainNameCom}`) - // genesis_pubkey is the public key associated with the $TEZOS_OXHEAD_BAKING_KEY private key in github secrets + // genesis_pubkey is the public key associated with the $MAVRYK_OXHEAD_BAKING_KEY private key in github secrets // TODO: generate it dynamically based on privkey let genesisPubkey = getPublicKeyFromPrivateKey(chain.params.bakingPrivateKey) const network = Object.assign( {}, - chain.tezosHelmValues["node_config_network"] + chain.mavrykHelmValues["node_config_network"] ) // clone - network["sandboxed_chain_name"] = "SANDBOXED_TEZOS" + network["sandboxed_chain_name"] = "SANDBOXED_MAVRYK" network["default_bootstrap_peers"] = bootstrapPeers network["genesis_parameters"] = { values: { @@ -305,7 +305,7 @@ function getNetworks(chains: TezosChain[]): object { delete network["activation_account_name"] } if ("genesis" in network && "block" in network["genesis"] === false) { - // If block hash not passed, use tezos-k8s convention: + // If block hash not passed, use mavryk-k8s convention: // deterministically derive it from chain name. var input = Buffer.from(network["chain_name"]) var gbk = blake2b(32).update(input).digest("hex") @@ -324,13 +324,13 @@ function getNetworks(chains: TezosChain[]): object { return networks } -function getTestnets(chains: TezosChain[]): object { - const teztnets: { [name: string]: { [name: string]: Object } } = {} +function getTestnets(chains: MavrykChain[]): object { + const testnets: { [name: string]: { [name: string]: Object } } = {} chains.forEach(function(chain) { let faucetUrl = `https://faucet.${chain.name}.${domainNameCom}` - teztnets[chain.name] = { - chain_name: chain.tezosHelmValues["node_config_network"]["chain_name"], + testnets[chain.name] = { + chain_name: chain.mavrykHelmValues["node_config_network"]["chain_name"], network_url: `https://${domainNameCom}/${chain.name}`, human_name: chain.params.humanName, description: chain.params.description, @@ -347,11 +347,11 @@ function getTestnets(chains: TezosChain[]): object { indexers: chain.params.indexers || [], } if (Object.keys(chain.dalNodes).length > 0) { - teztnets[chain.name].dal_nodes = chain.dalNodes; + testnets[chain.name].dal_nodes = chain.dalNodes; } }) - return teztnets + return testnets } // We do not host a ghostnet node here. @@ -359,7 +359,7 @@ function getTestnets(chains: TezosChain[]): object { // sensitive infra cluster. // Instead, we hardcode the values to be displayed on the webpage. const ghostnetNetwork = { - chain_name: "TEZOS_ITHACANET_2022-01-25T15:00:00Z", + chain_name: "MAVRYK_ITHACANET_2022-01-25T15:00:00Z", default_bootstrap_peers: [ `ghostnet.${domainNameCom}`, "ghostnet.boot.ecadinfra.com", @@ -375,7 +375,7 @@ const ghostnetNetwork = { genesis_pubkey: "edpkuYLienS3Xdt5c1vfRX1ibMxQuvfM67ByhJ9nmRYYKGAAoTq1UC", }, }, - sandboxed_chain_name: "SANDBOXED_TEZOS", + sandboxed_chain_name: "SANDBOXED_MAVRYK", user_activated_upgrades: [ { level: 8191, @@ -407,10 +407,10 @@ export const networks = { // We hardcode the values to be displayed on the webpage. const lastBakingDaemonMainnetGhostnet = "PtNairob" -const ghostnetTeztnet = { +const ghostnetTestnet = { category: "Long-running Testnets", - chain_name: "TEZOS_ITHACANET_2022-01-25T15:00:00Z", - description: "Ghostnet is the long-running testnet for Tezos.", + chain_name: "MAVRYK_ITHACANET_2022-01-25T15:00:00Z", + description: "Ghostnet is the long-running testnet for Mavryk.", docker_build: `mavrykdynamics/mavryk-protocol:${ghostnetRollingVersion}`, faucet_url: `https://faucet.ghostnet.${domainNameCom}`, git_ref: ghostnetRollingVersion, @@ -436,13 +436,13 @@ const ghostnetTeztnet = { ], } -// We also add mainnet to the teztnets metadata. +// We also add mainnet to the testnets metadata. // Some systems rely on this to provide lists of third-party RPC services // to their users. For example, umami wallet. const mainnetMetadata = { category: "Long-running Testnets", - chain_name: "TEZOS_MAINNET", - description: "Tezos Mainnet", + chain_name: "MAVRYK_MAINNET", + description: "Mavryk Mainnet", docker_build: `mavrykdynamics/mavryk-protocol:${ghostnetRollingVersion}`, git_ref: ghostnetRollingVersion, human_name: "Mainnet", @@ -466,14 +466,14 @@ const mainnetMetadata = { ], } -export const teztnets = { +export const testnets = { ...getTestnets([dailynet_chain, weeklynet_chain, nairobinet_chain, oxfordnet_chain]), - ...{ ghostnet: ghostnetTeztnet, mainnet: mainnetMetadata }, + ...{ ghostnet: ghostnetTestnet, mainnet: mainnetMetadata }, } deployStatusPage(provider, { networks: networks, - teztnets: teztnets, + testnets: testnets, statusPageFqdn: `status.${domainNameCom}`, chartRepoVersion: "6.25.0" }); diff --git a/mavryk/chain.ts b/mavryk/chain.ts index 0b73fc38..a401d277 100644 --- a/mavryk/chain.ts +++ b/mavryk/chain.ts @@ -88,7 +88,7 @@ export class MavrykChain extends pulumi.ComponentResource { if (this.name == "nairobinet") { this.mavrykHelmValues["accounts"]["oxheadbaker"]["key"] = this.params.bakingPrivateKey } else { - this.mavrykHelmValues["accounts"]["teztnetsbaker"]["key"] = this.params.bakingPrivateKey + this.mavrykHelmValues["accounts"]["testnetsbaker"]["key"] = this.params.bakingPrivateKey } if (this.params.schedule) { const deployDate = new Date( @@ -109,7 +109,7 @@ export class MavrykChain extends pulumi.ComponentResource { // Otherwise, the old broken mondaynet will mix with the new one and you'll never be able to produce // another genesis block. this.mavrykHelmValues["node_config_network"]["chain_name"] = - `TEZOS-${this.params.humanName.toUpperCase()}-${deployDate.toISOString()}` + `MAVRYK-${this.params.humanName.toUpperCase()}-${deployDate.toISOString()}` this.mavrykHelmValues["node_config_network"]["genesis"]["timestamp"] = deployDate.toISOString(); } @@ -415,7 +415,7 @@ export class MavrykChain extends pulumi.ComponentResource { { metadata: { namespace: this.namespace.metadata.name, - name: `${name}-teztnetscom`, + name: `${name}-testnetscom`, annotations: { "external-dns.alpha.kubernetes.io/hostname": `${name}.${domainNameXyz}`, }, diff --git a/tezos/chartResolver.ts b/mavryk/chartResolver.ts similarity index 75% rename from tezos/chartResolver.ts rename to mavryk/chartResolver.ts index 72097cfe..446f2b5d 100644 --- a/tezos/chartResolver.ts +++ b/mavryk/chartResolver.ts @@ -3,7 +3,7 @@ /** * Function to get chart parameters to pass to pulumi helm. * This allows to either use a local submodule chart or a released one. - * Warning: When using a local one, if you require custom tezos-k8s images, make sure + * Warning: When using a local one, if you require custom mavryk-k8s images, make sure * to specify them in your params. * * @@ -21,14 +21,14 @@ export function getChartParams(params: any, chartName: string): object { chartParams = { path: `${params.chartPath}/charts/${chartName}` }; } else { let _chartName = chartName; - if (chartName == "tezos") { - // special case: the tezos chart is published as "tezos-chain" - _chartName = "tezos-chain"; + if (chartName == "mavryk") { + // special case: the mavryk chart is published as "mavryk-chain" + _chartName = "mavryk-chain"; } chartParams = { fetchOpts: { - repo: "https://oxheadalpha.github.io/tezos-helm-charts" + repo: "https://mavryk-network.github.io/mavryk-helm-charts" }, chart: _chartName, version: params.chartRepoVersion diff --git a/tezos/faucet.ts b/mavryk/faucet.ts similarity index 62% rename from tezos/faucet.ts rename to mavryk/faucet.ts index fa894543..ea5016d1 100644 --- a/tezos/faucet.ts +++ b/mavryk/faucet.ts @@ -17,12 +17,12 @@ export interface Parameters { } /** - * Deploy a tezos-k8s topology in a k8s cluster. + * Deploy a mavryk-k8s topology in a k8s cluster. * Supports either local charts or charts from a repo */ -export class TezosFaucet extends pulumi.ComponentResource { - readonly tezosFaucetHelmValues: any +export class MavrykFaucet extends pulumi.ComponentResource { + readonly mavrykFaucetHelmValues: any constructor( name: string, @@ -33,17 +33,17 @@ export class TezosFaucet extends pulumi.ComponentResource { const inputs: pulumi.Inputs = { options: opts, } - super("pulumi-contrib:components:TezosFaucet", name, inputs, opts) + super("pulumi-contrib:components:MavrykFaucet", name, inputs, opts) - this.tezosFaucetHelmValues = YAML.parse( + this.mavrykFaucetHelmValues = YAML.parse( fs.readFileSync(params.helmValuesFile, "utf8") ); - this.tezosFaucetHelmValues["faucetPrivateKey"] = params.faucetPrivateKey - let chartParams = getChartParams(params, "tezos-faucet"); + this.mavrykFaucetHelmValues["faucetPrivateKey"] = params.faucetPrivateKey + let chartParams = getChartParams(params, "mavryk-faucet"); - if (this.tezosFaucetHelmValues.disableChallenges !== true) { - if (!this.tezosFaucetHelmValues.redis) { - this.tezosFaucetHelmValues.redis = {} + if (this.mavrykFaucetHelmValues.disableChallenges !== true) { + if (!this.mavrykFaucetHelmValues.redis) { + this.mavrykFaucetHelmValues.redis = {} } const redisPassword = new RandomPassword( @@ -52,7 +52,7 @@ export class TezosFaucet extends pulumi.ComponentResource { { parent: this } ).result - this.tezosFaucetHelmValues.redis.password = redisPassword + this.mavrykFaucetHelmValues.redis.password = redisPassword new k8s.helm.v3.Release( `${name}-redis`, @@ -85,19 +85,19 @@ export class TezosFaucet extends pulumi.ComponentResource { ) } - const teztnetsDomain = `${name}.testnets.mavryk.network` - const faucetDomain = `faucet.${teztnetsDomain}` - this.tezosFaucetHelmValues.googleCaptchaSecretKey = + const testnetsDomain = `${name}.testnets.mavryk.network` + const faucetDomain = `faucet.${testnetsDomain}` + this.mavrykFaucetHelmValues.googleCaptchaSecretKey = params.faucetRecaptchaSecretKey - this.tezosFaucetHelmValues.authorizedHost = `https://${faucetDomain}` - this.tezosFaucetHelmValues.config.application.googleCaptchaSiteKey = + this.mavrykFaucetHelmValues.authorizedHost = `https://${faucetDomain}` + this.mavrykFaucetHelmValues.config.application.googleCaptchaSiteKey = params.faucetRecaptchaSiteKey - this.tezosFaucetHelmValues.config.application.backendUrl = `https://${faucetDomain}` - this.tezosFaucetHelmValues.config.network.name = - this.tezosFaucetHelmValues.config.network.name || params.humanName - this.tezosFaucetHelmValues.config.network.rpcUrl = `https://rpc.${teztnetsDomain}` - this.tezosFaucetHelmValues.ingress.host = faucetDomain - this.tezosFaucetHelmValues.ingress.tls = [ + this.mavrykFaucetHelmValues.config.application.backendUrl = `https://${faucetDomain}` + this.mavrykFaucetHelmValues.config.network.name = + this.mavrykFaucetHelmValues.config.network.name || params.humanName + this.mavrykFaucetHelmValues.config.network.rpcUrl = `https://rpc.${testnetsDomain}` + this.mavrykFaucetHelmValues.ingress.host = faucetDomain + this.mavrykFaucetHelmValues.ingress.tls = [ { hosts: [faucetDomain], secretName: `${faucetDomain}-secret`, @@ -107,7 +107,7 @@ export class TezosFaucet extends pulumi.ComponentResource { const faucetChartValues: any = { ...chartParams, namespace: params.namespace.metadata.name, - values: this.tezosFaucetHelmValues, + values: this.mavrykFaucetHelmValues, version: params.chartRepoVersion, } diff --git a/tezos/imageResolver.ts b/mavryk/imageResolver.ts similarity index 99% rename from tezos/imageResolver.ts rename to mavryk/imageResolver.ts index b0eddf13..7df1f19d 100644 --- a/tezos/imageResolver.ts +++ b/mavryk/imageResolver.ts @@ -1,6 +1,6 @@ import * as http from 'https'; -export class TezosImageResolver { +export class MavrykImageResolver { image = 'mavrykdynamics/mavryk-protocol'; getAuthToken(): Promise { diff --git a/tezos/keys.ts b/mavryk/keys.ts similarity index 100% rename from tezos/keys.ts rename to mavryk/keys.ts diff --git a/tezos/metricsPage.ts b/mavryk/metricsPage.ts similarity index 100% rename from tezos/metricsPage.ts rename to mavryk/metricsPage.ts diff --git a/tezos/nodes.ts b/mavryk/nodes.ts similarity index 96% rename from tezos/nodes.ts rename to mavryk/nodes.ts index e20ced40..8bad7fe0 100644 --- a/tezos/nodes.ts +++ b/mavryk/nodes.ts @@ -2,7 +2,7 @@ import * as k8s from "@pulumi/kubernetes" import * as pulumi from "@pulumi/pulumi" import { getChartParams } from './chartResolver' -export interface TezosNodesParameters { +export interface MavrykNodesParameters { readonly chainName: string; readonly rpcFqdn: string; readonly p2pFqdn: string; @@ -14,12 +14,12 @@ export interface TezosNodesParameters { readonly mavkitArchiveVersion: string; } -export class TezosNodes extends pulumi.ComponentResource { +export class MavrykNodes extends pulumi.ComponentResource { readonly namespace: k8s.core.v1.Namespace constructor( name: string, - params: TezosNodesParameters, + params: MavrykNodesParameters, provider: k8s.Provider, opts?: pulumi.ResourceOptions ) { @@ -28,12 +28,12 @@ export class TezosNodes extends pulumi.ComponentResource { } /** - * Deploys Tezos Nodes on a K8s cluster, for RPC and boot node functionality. + * Deploys Mavryk Nodes on a K8s cluster, for RPC and boot node functionality. * @param name The name of the Pulumi resource. * @param params Helm chart values and chain bootstrap parameters * @param provider The Kubernetes cluster to deploy it into. */ - super("pulumi-contrib:components:TezosChain", name, inputs, opts) + super("pulumi-contrib:components:MavrykChain", name, inputs, opts) this.namespace = new k8s.core.v1.Namespace( name, @@ -45,7 +45,7 @@ export class TezosNodes extends pulumi.ComponentResource { ) - let chartParams = getChartParams(params, 'tezos-chain') + let chartParams = getChartParams(params, 'mavryk-chain') let helmValues = { node_config_network: { @@ -181,7 +181,7 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { path: "/", backend: { service: { - name: "tezos-node-rpc", + name: "mavryk-node-rpc", port: { number: 8732 }, }, }, @@ -313,7 +313,7 @@ location ~ ^/chains/([a-zA-Z]+)/(checkpoint|levels) { path: "/", backend: { service: { - name: "tezos-node-rpc", + name: "mavryk-node-rpc", port: { number: 8732 }, }, }, diff --git a/tezos/statusPage.ts b/mavryk/statusPage.ts similarity index 90% rename from tezos/statusPage.ts rename to mavryk/statusPage.ts index 08eb8459..d07f5c4e 100644 --- a/tezos/statusPage.ts +++ b/mavryk/statusPage.ts @@ -3,7 +3,7 @@ import { getChartParams } from './chartResolver' export interface Parameters { readonly networks: any; - readonly teztnets: any; + readonly testnets: any; readonly statusPageFqdn: string; readonly chartPath?: string readonly chartRepoVersion?: string @@ -24,8 +24,8 @@ const deployStatusPage = async ( node_monitor: { nodes: Object.keys(params.networks) .map((n) => ({ - url: `http://tezos-node-rpc.${n === "ghostnet" ? 'ghostnet-nodes' : n}:8732`, - name: params.teztnets[n]['human_name'] + url: `http://mavryk-node-rpc.${n === "ghostnet" ? 'ghostnet-nodes' : n}:8732`, + name: params.testnets[n]['human_name'] })) }, ui: { diff --git a/networks/atlasnet/faucet_values.yaml b/networks/atlasnet/faucet_values.yaml index d756ba6e..1d00fe01 100644 --- a/networks/atlasnet/faucet_values.yaml +++ b/networks/atlasnet/faucet_values.yaml @@ -18,7 +18,7 @@ config: authorizedHost: "" # filled in by pulumi # RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. -backendRpcUrl: http://tezos-node-rpc:8732 +backendRpcUrl: http://mavryk-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. enableCaptcha: true diff --git a/networks/atlasnet/values.yaml b/networks/atlasnet/values.yaml index 9afdfd4f..22c353e3 100644 --- a/networks/atlasnet/values.yaml +++ b/networks/atlasnet/values.yaml @@ -116,10 +116,10 @@ activation: testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" nodes: - tezos-baking-node: + mavryk-baking-node: env: all: - TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" + MAVRYK_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" instances: - bake_using_accounts: - mavryk diff --git a/networks/dailynet/faucet_values.yaml b/networks/dailynet/faucet_values.yaml index edb0956e..bdb47c2e 100644 --- a/networks/dailynet/faucet_values.yaml +++ b/networks/dailynet/faucet_values.yaml @@ -1,15 +1,15 @@ images: - tezosFaucet: ghcr.io/oxheadalpha/tezos-faucet:2.2.3 - tezosFaucetBackend: ghcr.io/oxheadalpha/tezos-faucet-backend:2.2.1 + mavrykFaucet: ghcr.io/mavryk-network/mavryk-faucet:main + mavrykFaucetBackend: ghcr.io/mavryk-network/mavryk-faucet-backend:main # Frontend app configuration. You can optionally deploy only the faucet backend. enableUI: true config: application: - name: "Tezos Dailynet faucet" + name: "Mavryk Dailynet faucet" googleCaptchaSiteKey: "" #filled in by pulumi backendUrl: "" # filled in by pulumi - githubRepo: https://github.com/oxheadalpha/tezos-faucet + githubRepo: https://github.com/mavryk-network/mavryk-faucet network: name: # filled in by pulumi rpcUrl: # filled in by pulumi @@ -20,7 +20,7 @@ config: authorizedHost: "" # filled in by pulumi # RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. -backendRpcUrl: http://tezos-node-rpc:8732 +backendRpcUrl: http://mavryk-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. enableCaptcha: true diff --git a/networks/dailynet/values.yaml b/networks/dailynet/values.yaml index 569c32f7..bf5f07ed 100644 --- a/networks/dailynet/values.yaml +++ b/networks/dailynet/values.yaml @@ -1,12 +1,12 @@ -tezos_k8s_images: +mavryk_k8s_images: utils: ghcr.io/mavryk-network/mavryk-k8s-utils:6.25.0 signers: - tezos-signer-0: + mavryk-signer-0: sign_for_accounts: - - teztnetsbaker + - testnetsbaker node_config_network: - activation_account_name: teztnetsbaker + activation_account_name: testnetsbaker genesis: block: BMFCHw1mv3A71KpTuGD3MoFnkHk9wvTYjUzuR9QqiUumKGFG6pM protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P @@ -132,7 +132,7 @@ activation: bootstrap_smart_rollups: - address: "sr1RYurGZtN8KNSpkMcCt9CgWeUaNkzsAfXf" pvm_kind: "wasm_2_0_0" - kernel: "fromfile#/usr/local/share/tezos/evm_kernel/evm_installer.wasm" + kernel: "fromfile#/usr/local/share/mavryk/evm_kernel/evm_installer.wasm" parameters_ty: prim: pair args: @@ -147,13 +147,13 @@ activation: - prim: nat - prim: bytes nodes: - tezos-baking-node: + mavryk-baking-node: env: all: - TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" + MAVRYK_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" instances: - bake_using_accounts: - - teztnetsbaker + - testnetsbaker config: shell: history_mode: archive @@ -177,12 +177,12 @@ nodes: - vdf readiness_probe: false storage_size: 15Gi - # Overwrite default values.yaml tezos-node + # Overwrite default values.yaml mavryk-node rolling-node: null smartRollupNodes: evm: - operator_account: teztnetsbaker + operator_account: testnetsbaker rollup_address: sr1RYurGZtN8KNSpkMcCt9CgWeUaNkzsAfXf ingress: # ingress details filled by pulumi @@ -197,7 +197,7 @@ smartRollupNodes: dalNodes: dal-bootstrap: bootstrapProfile: true - node_rpc_url: http://tezos-baking-node-0.tezos-baking-node:8732 + node_rpc_url: http://mavryk-baking-node-0.mavryk-baking-node:8732 storageSize: 15Gi ingress: # ingress details filled up by pulumi @@ -210,9 +210,9 @@ dalNodes: proof_of_work_stamp: "c10a73f331df5df498d5f0332611b3ec25334a8328f5c2b8" dal-dal1: attest_using_accounts: - - teztnetsbaker + - testnetsbaker storageSize: 15Gi - node_rpc_url: http://tezos-baking-node-0.tezos-baking-node:8732 + node_rpc_url: http://mavryk-baking-node-0.mavryk-baking-node:8732 ingress: # ingress details filled up by pulumi identity: @@ -225,8 +225,8 @@ dalNodes: dal_deploy_slot_injector: enabled: true - inject_using_account: teztnetsbaker - node_rpc_url: http://tezos-baking-node-0.tezos-baking-node:8732 + inject_using_account: testnetsbaker + node_rpc_url: http://mavryk-baking-node-0.mavryk-baking-node:8732 dal_node_rpc_url: http://dal-dal1:10732 slot_size: 16384 @@ -235,7 +235,7 @@ full_snapshot_url: null rolling_snapshot_url: null rolling_tarball_url: null archive_tarball_url: null -snapshot_source: https://snapshots.tezos.marigold.dev/api/tezos-snapshots.json +snapshot_source: https://snapshots.mavryk.network/api/mavryk-snapshots.json images: {} # FIXME: does not work properly when several namespaces have it @@ -246,7 +246,7 @@ images: {} # release: monitoring-96695a88 accounts: - teztnetsbaker: + testnetsbaker: # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "7500000000000" is_bootstrap_baker_account: true diff --git a/networks/ghostnet/README.md b/networks/ghostnet/README.md index 9e31b3ad..b14f8902 100644 --- a/networks/ghostnet/README.md +++ b/networks/ghostnet/README.md @@ -1 +1 @@ -Ghostnet is centrally managed to follow Tezos Mainnet protocol upgrades. It generally updates to the same protocol than Mainnet one week before Mainnet update itself. +Ghostnet is centrally managed to follow Mavryk Mainnet protocol upgrades. It generally updates to the same protocol than Mainnet one week before Mainnet update itself. diff --git a/networks/ghostnet/faucet_values.yaml b/networks/ghostnet/faucet_values.yaml index 8f090e54..97c5c9f2 100644 --- a/networks/ghostnet/faucet_values.yaml +++ b/networks/ghostnet/faucet_values.yaml @@ -1,13 +1,13 @@ images: - tezosFaucet: ghcr.io/oxheadalpha/tezos-faucet:2.2.3 - tezosFaucetBackend: ghcr.io/oxheadalpha/tezos-faucet-backend:2.2.1 + mavrykFaucet: ghcr.io/mavryk-network/mavryk-faucet:main + mavrykFaucetBackend: ghcr.io/mavryk-network/mavryk-faucet-backend:main config: application: - name: "Tezos Ghostnet Faucet" + name: "Mavryk Ghostnet Faucet" googleCaptchaSiteKey: #filled in by pulumi backendUrl: # filled in by pulumi - githubRepo: https://github.com/oxheadalpha/tezos-faucet + githubRepo: https://github.com/mavryk-network/mavryk-faucet network: name: # filled in by pulumi rpcUrl: # filled in by pulumi diff --git a/networks/ghostnet/values.yaml b/networks/ghostnet/values.yaml index 98a9dd4d..ece7a3c2 100644 --- a/networks/ghostnet/values.yaml +++ b/networks/ghostnet/values.yaml @@ -1,6 +1,6 @@ node_config_network: activation_account_name: oxheadbaker - chain_name: TEZOS_ITHACANET_2022-01-25T15:00:00Z + chain_name: MAVRYK_ITHACANET_2022-01-25T15:00:00Z genesis: block: BLockGenesisGenesisGenesisGenesisGenesis1db77eJNeJ9 protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P @@ -62,7 +62,7 @@ activation: minimal_block_delay: '15' nodes: - tezos-baking-node: + mavryk-baking-node: env: baker: BAKER_EXTRA_ARGS: "--operations-pool https://qc8esk5gp0.fbe-baker.midl.dev/operations-pool" diff --git a/networks/oxfordnet/faucet_values.yaml b/networks/oxfordnet/faucet_values.yaml index c2f48ba5..59c1ec0c 100644 --- a/networks/oxfordnet/faucet_values.yaml +++ b/networks/oxfordnet/faucet_values.yaml @@ -1,13 +1,13 @@ images: - tezosFaucet: ghcr.io/oxheadalpha/tezos-faucet:2.2.3 - tezosFaucetBackend: ghcr.io/oxheadalpha/tezos-faucet-backend:2.2.1 + mavrykFaucet: ghcr.io/mavryk-network/mavryk-faucet:main + mavrykFaucetBackend: ghcr.io/mavryk-network/mavryk-faucet-backend:main config: application: - name: "Tezos Oxfordnet Faucet" + name: "Mavryk Oxfordnet Faucet" googleCaptchaSiteKey: #filled in by pulumi backendUrl: # filled in by pulumi - githubRepo: https://github.com/oxheadalpha/tezos-faucet + githubRepo: https://github.com/mavryk-network/mavryk-faucet network: name: # filled in by pulumi rpcUrl: # filled in by pulumi @@ -18,7 +18,7 @@ config: authorizedHost: "" # filled in by pulumi # RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. -backendRpcUrl: http://tezos-node-rpc:8732 +backendRpcUrl: http://mavryk-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. enableCaptcha: true diff --git a/networks/oxfordnet/values.yaml b/networks/oxfordnet/values.yaml index 37dc072b..7d4dfc2d 100644 --- a/networks/oxfordnet/values.yaml +++ b/networks/oxfordnet/values.yaml @@ -1,5 +1,5 @@ accounts: - teztnetsbaker: + testnetsbaker: # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "9700000000000" is_bootstrap_baker_account: true @@ -23,7 +23,7 @@ accounts: is_bootstrap_baker_account: false bootstrap_balance: "50000000000000000" oxheadfaucet: - # the faucet on teztnets platform + # the faucet on testnets platform # mv1NRjkhmeavqVVh716ephuXmaXGe7Y6UyzQ key: edpkvGYHoY5kwq13Ak6r4fLa1GGSHKJZVe7xJFV6ZgHwdZeaHy3WZj is_bootstrap_baker_account: false @@ -131,8 +131,8 @@ accounts: bootstrap_balance: "700000000000" node_config_network: - activation_account_name: teztnetsbaker - chain_name: TEZOS_OXFORDNET_2023-12-07T15:00:00Z + activation_account_name: testnetsbaker + chain_name: MAVRYK_OXFORDNET_2023-12-07T15:00:00Z genesis: protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P timestamp: "2023-12-07T15:00:00Z" @@ -224,13 +224,13 @@ activation: testnet_dictator: "mv1Rck3MEfcu8zZ8GDtnu9LjknmYv8bBPJea" nodes: - tezos-baking-node: + mavryk-baking-node: env: all: - TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" + MAVRYK_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" instances: - bake_using_accounts: - - teztnetsbaker + - testnetsbaker config: shell: history_mode: archive diff --git a/networks/weeklynet/faucet_values.yaml b/networks/weeklynet/faucet_values.yaml index ee4d66f4..ff1d95e7 100644 --- a/networks/weeklynet/faucet_values.yaml +++ b/networks/weeklynet/faucet_values.yaml @@ -1,16 +1,16 @@ images: - tezosFaucet: ghcr.io/oxheadalpha/tezos-faucet:2.2.3 - tezosFaucetBackend: ghcr.io/oxheadalpha/tezos-faucet-backend:2.2.1 + mavrykFaucet: ghcr.io/mavryk-network/mavryk-faucet:main + mavrykFaucetBackend: ghcr.io/mavryk-network/mavryk-faucet-backend:main # Frontend app configuration. You can optionally deploy only the faucet backend. enableUI: true config: application: - name: "Tezos Weeklynet Faucet" + name: "Mavryk Weeklynet Faucet" googleCaptchaSiteKey: "" # filled in by pulumi backendUrl: "" # filled in by pulumi - githubRepo: https://github.com/oxheadalpha/tezos-faucet + githubRepo: https://github.com/mavryk-network/mavryk-faucet network: name: custom # Beacon SDK doesn't recognize weeklynet atm. rpcUrl: "" # filled in by pulumi @@ -20,7 +20,7 @@ config: authorizedHost: "" # filled in by pulumi # RPC url for the faucet backend. Default value assumes mavryk-k8s created an RPC # service in the same namespace. If not set, defaults to `config.network.rpcUrl`. -backendRpcUrl: http://tezos-node-rpc:8732 +backendRpcUrl: http://mavryk-node-rpc:8732 # If the backend requires CAPTCHA tokens to be submitted. enableCaptcha: true diff --git a/networks/weeklynet/values.yaml b/networks/weeklynet/values.yaml index 81438537..542c25cd 100644 --- a/networks/weeklynet/values.yaml +++ b/networks/weeklynet/values.yaml @@ -1,7 +1,7 @@ -tezos_k8s_images: +mavryk_k8s_images: utils: ghcr.io/mavryk-network/mavryk-k8s-utils:6.25.0 node_config_network: - activation_account_name: teztnetsbaker + activation_account_name: testnetsbaker genesis: protocol: Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P user_activated_upgrades: @@ -119,7 +119,7 @@ activation: # bootstrap_smart_rollups: # - address: "sr1RYurGZtN8KNSpkMcCt9CgWeUaNkzsAfXf" # pvm_kind: "wasm_2_0_0" - # kernel: "fromfile#/usr/local/share/tezos/evm_kernel/evm_installer.wasm" + # kernel: "fromfile#/usr/local/share/mavryk/evm_kernel/evm_installer.wasm" # parameters_ty: # prim: pair # args: @@ -135,13 +135,13 @@ activation: # - prim: bytes nodes: - tezos-baking-node: + mavryk-baking-node: env: all: - TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" + MAVRYK_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y" instances: - bake_using_accounts: - - teztnetsbaker + - testnetsbaker config: shell: history_mode: archive @@ -170,7 +170,7 @@ nodes: # smartRollupNodes: # evm: -# operator_account: teztnetsbaker +# operator_account: testnetsbaker # rollup_address: sr1RYurGZtN8KNSpkMcCt9CgWeUaNkzsAfXf # ingress: # # ingress details filled by pulumi @@ -185,7 +185,7 @@ nodes: dalNodes: dal-bootstrap: bootstrapProfile: true - node_rpc_url: http://tezos-baking-node-0.tezos-baking-node:8732 + node_rpc_url: http://mavryk-baking-node-0.mavryk-baking-node:8732 storageSize: 15Gi ingress: # ingress details filled up by pulumi @@ -198,9 +198,9 @@ dalNodes: proof_of_work_stamp: "b7edd6ea938998f8f088b83b692baeddb49f5522f07572f9" dal-dal1: attest_using_accounts: - - teztnetsbaker + - testnetsbaker attesterProfiles: mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm - node_rpc_url: http://tezos-baking-node-0.tezos-baking-node:8732 + node_rpc_url: http://mavryk-baking-node-0.mavryk-baking-node:8732 storageSize: 80Gi ingress: # ingress details filled up by pulumi @@ -214,8 +214,8 @@ dalNodes: dal_deploy_slot_injector: enabled: true - inject_using_account: teztnetsbaker - node_rpc_url: http://tezos-baking-node-0.tezos-baking-node:8732 + inject_using_account: testnetsbaker + node_rpc_url: http://mavryk-baking-node-0.mavryk-baking-node:8732 dal_node_rpc_url: http://dal-dal1:10732 slot_size: 65536 @@ -226,7 +226,7 @@ full_snapshot_url: null rolling_snapshot_url: null rolling_tarball_url: null archive_tarball_url: null -snapshot_source: https://snapshots.tezos.marigold.dev/api/tezos-snapshots.json +snapshot_source: https://snapshots.mavryk.network/api/mavryk-snapshots.json images: {} @@ -246,7 +246,7 @@ protocols: liquidity_baking_toggle_vote: "pass" adaptive_issuance_vote: "on" accounts: - teztnetsbaker: + testnetsbaker: # mv1UAzbGkMvuCr7ufR6Z4NxykCn2aj5qTUjm bootstrap_balance: "1500000000000" is_bootstrap_baker_account: true diff --git a/package-lock.json b/package-lock.json index 15cb6e98..f80c290d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "teztnets", + "name": "testnets", "version": "1.0.0", "lockfileVersion": 2, "requires": true, "packages": { "": { - "name": "teztnets", + "name": "testnets", "version": "1.0.0", "license": "ISC", "dependencies": { diff --git a/package.json b/package.json index f8e709f0..47b29130 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "name": "teztnets", - "description": "Infrastructure-as-code repo to activate and bootstrap Tezos testnets in a repeatable, automated way.", + "name": "testnets", + "description": "Infrastructure-as-code repo to activate and bootstrap Mavryk testnets in a repeatable, automated way.", "version": "1.0.0", "main": "index.ts", "scripts": { diff --git a/teztnets_xyz_page/README.md b/testnets_xyz_page/README.md similarity index 100% rename from teztnets_xyz_page/README.md rename to testnets_xyz_page/README.md diff --git a/teztnets_xyz_page/index.md.jinja2 b/testnets_xyz_page/index.md.jinja2 similarity index 73% rename from teztnets_xyz_page/index.md.jinja2 rename to testnets_xyz_page/index.md.jinja2 index 76e50b86..12bc826c 100644 --- a/teztnets_xyz_page/index.md.jinja2 +++ b/testnets_xyz_page/index.md.jinja2 @@ -1,11 +1,11 @@ -{% for cat_name, cat_teztnets in teztnets.items() %} +{% for cat_name, cat_testnets in testnets.items() %} # {{ cat_name }} {{ category_desc[cat_name] }} | | Activated on | Faucet | |-------|---------------------|--| -{% for k, v in cat_teztnets.items() -%} +{% for k, v in cat_testnets.items() -%} | [{{ v["human_name"] }}](/{{ v["human_name"] | lower }}-about) | `{{ v["activated_on"] }}` | [Faucet]({{ v["faucet_url"]}}) | {% endfor %} diff --git a/teztnets_xyz_page/release.py b/testnets_xyz_page/release.py similarity index 75% rename from teztnets_xyz_page/release.py rename to testnets_xyz_page/release.py index 879148a2..fe09449c 100644 --- a/teztnets_xyz_page/release.py +++ b/testnets_xyz_page/release.py @@ -4,11 +4,11 @@ import shutil import jinja2 -shutil.copytree("teztnets_xyz_page/website", "target/release", dirs_exist_ok=True) +shutil.copytree("testnets_xyz_page/website", "target/release", dirs_exist_ok=True) -teztnets = {} -with open("./teztnets.json", "r") as teztnets_file: - teztnets = json.load(teztnets_file) +testnets = {} +with open("./testnets.json", "r") as testnets_file: + testnets = json.load(testnets_file) networks = {} with open("./networks.json", "r") as networks_file: @@ -26,32 +26,32 @@ "Periodic Testnets": "Testnets that restart regularly and track the development of the master branch of [Mavkit repo](https://gitlab.com/mavryk-network/mavryk-protocol/).\n \n☠️ You probably don't want this unless you are a core protocol developer.", } -nested_teztnets = { +nested_testnets = { "Long-running Testnets": {}, "Protocol Testnets": {}, "Periodic Testnets": {}, } -for k, v in teztnets.items(): +for k, v in testnets.items(): if v["masked_from_main_page"]: continue - if v["category"] not in nested_teztnets: - nested_teztnets[v["category"]] = {} - nested_teztnets[v["category"]][k] = v - nested_teztnets[v["category"]][k]["activated_on"] = networks[k]["genesis"][ + if v["category"] not in nested_testnets: + nested_testnets[v["category"]] = {} + nested_testnets[v["category"]][k] = v + nested_testnets[v["category"]][k]["activated_on"] = networks[k]["genesis"][ "timestamp" ].split("T")[0] -index = jinja2.Template(open("teztnets_xyz_page/index.md.jinja2").read()).render( - teztnets=nested_teztnets, category_desc=category_desc +index = jinja2.Template(open("testnets_xyz_page/index.md.jinja2").read()).render( + testnets=nested_testnets, category_desc=category_desc ) with open("target/release/index.markdown", "a") as out_file: print(index, file=out_file) -with open("target/release/teztnets.json", "w") as out_file: - print(json.dumps(teztnets, indent=2), file=out_file) +with open("target/release/testnets.json", "w") as out_file: + print(json.dumps(testnets, indent=2), file=out_file) -for k, v in teztnets.items(): +for k, v in testnets.items(): if k == "mainnet": continue @@ -79,11 +79,11 @@ with open(readme_path) as readme_file: readme = readme_file.read() - teztnet_md = jinja2.Template(open("teztnets_xyz_page/teztnet_page.md.jinja2").read()).render( + testnet_md = jinja2.Template(open("testnets_xyz_page/testnet_page.md.jinja2").read()).render( k=k, v=v, network_params=networks[k], readme=readme ) with open( f"target/release/{v['human_name'].lower()}-about.markdown", "w" ) as out_file: - print(teztnet_md, file=out_file) + print(testnet_md, file=out_file) diff --git a/teztnets_xyz_page/teztnet_page.md.jinja2 b/testnets_xyz_page/testnet_page.md.jinja2 similarity index 100% rename from teztnets_xyz_page/teztnet_page.md.jinja2 rename to testnets_xyz_page/testnet_page.md.jinja2 diff --git a/teztnets_xyz_page/website/404.html b/testnets_xyz_page/website/404.html similarity index 100% rename from teztnets_xyz_page/website/404.html rename to testnets_xyz_page/website/404.html diff --git a/teztnets_xyz_page/website/CNAME b/testnets_xyz_page/website/CNAME similarity index 100% rename from teztnets_xyz_page/website/CNAME rename to testnets_xyz_page/website/CNAME diff --git a/teztnets_xyz_page/website/Gemfile b/testnets_xyz_page/website/Gemfile similarity index 100% rename from teztnets_xyz_page/website/Gemfile rename to testnets_xyz_page/website/Gemfile diff --git a/teztnets_xyz_page/website/_config.yml b/testnets_xyz_page/website/_config.yml similarity index 98% rename from teztnets_xyz_page/website/_config.yml rename to testnets_xyz_page/website/_config.yml index d2d7bfd6..8f1f6bca 100644 --- a/teztnets_xyz_page/website/_config.yml +++ b/testnets_xyz_page/website/_config.yml @@ -40,7 +40,7 @@ favicon: "./favicon.ico" # their entries' file path in the `include:` list. # include: - - 'teztnets.json' + - 'testnets.json' - '*net' exclude: - bundle/ diff --git a/teztnets_xyz_page/website/_includes/footer.html b/testnets_xyz_page/website/_includes/footer.html similarity index 100% rename from teztnets_xyz_page/website/_includes/footer.html rename to testnets_xyz_page/website/_includes/footer.html diff --git a/teztnets_xyz_page/website/_includes/head.html b/testnets_xyz_page/website/_includes/head.html similarity index 86% rename from teztnets_xyz_page/website/_includes/head.html rename to testnets_xyz_page/website/_includes/head.html index e1029319..6d3b033c 100644 --- a/teztnets_xyz_page/website/_includes/head.html +++ b/testnets_xyz_page/website/_includes/head.html @@ -5,6 +5,6 @@ {%- seo -%} {%- feed_meta -%} - + diff --git a/teztnets_xyz_page/website/_includes/header.html b/testnets_xyz_page/website/_includes/header.html similarity index 100% rename from teztnets_xyz_page/website/_includes/header.html rename to testnets_xyz_page/website/_includes/header.html diff --git a/teztnets_xyz_page/website/_layouts/default.html b/testnets_xyz_page/website/_layouts/default.html similarity index 100% rename from teztnets_xyz_page/website/_layouts/default.html rename to testnets_xyz_page/website/_layouts/default.html diff --git a/teztnets_xyz_page/website/about.markdown b/testnets_xyz_page/website/about.markdown similarity index 100% rename from teztnets_xyz_page/website/about.markdown rename to testnets_xyz_page/website/about.markdown diff --git a/teztnets_xyz_page/website/assets/teztnets.css b/testnets_xyz_page/website/assets/testnets.css similarity index 100% rename from teztnets_xyz_page/website/assets/teztnets.css rename to testnets_xyz_page/website/assets/testnets.css diff --git a/teztnets_xyz_page/website/favicon.ico b/testnets_xyz_page/website/favicon.ico similarity index 100% rename from teztnets_xyz_page/website/favicon.ico rename to testnets_xyz_page/website/favicon.ico diff --git a/teztnets_xyz_page/website/index.markdown b/testnets_xyz_page/website/index.markdown similarity index 82% rename from teztnets_xyz_page/website/index.markdown rename to testnets_xyz_page/website/index.markdown index b37cef3a..c750df88 100644 --- a/teztnets_xyz_page/website/index.markdown +++ b/testnets_xyz_page/website/index.markdown @@ -4,4 +4,4 @@ layout: home Current testnets for the [Mavryk](https://mavryk.org) blockchain are listed here. [Read more](about/). -This list of Testnets is also available in [json format](https://testnets.mavryk.network/teztnets.json). +This list of Testnets is also available in [json format](https://testnets.mavryk.network/testnets.json). diff --git a/tezos/chain.ts b/tezos/chain.ts deleted file mode 100644 index 7ef7c594..00000000 --- a/tezos/chain.ts +++ /dev/null @@ -1,485 +0,0 @@ -import * as gcp from "@pulumi/gcp" -import * as k8s from "@pulumi/kubernetes" -import * as pulumi from "@pulumi/pulumi" -import * as cronParser from "cron-parser" -import * as fs from "fs" -import * as YAML from "yaml" -const mime = require("mime") -import { getChartParams } from './chartResolver' -import { TezosImageResolver } from "./imageResolver" - -export interface TezosParameters { - readonly activationBucket: gcp.storage.Bucket - readonly bootstrapContracts?: string[] - readonly category: string - readonly description: string - readonly bakingPrivateKey: pulumi.Output - readonly humanName: string - readonly indexers?: { name: string; url: string }[] - readonly chartPath?: string - readonly chartRepoVersion?: string - readonly bootstrapPeers?: string[] - readonly rpcUrls?: string[] - readonly helmValuesFile: string - readonly schedule?: string -} - -const gcpRegion = "us-central1"; -const domainName = 'testnets.mavryk.network'; -const domainNameXyz = 'testnets.mavryk.network'; - -/** - * Deploy a tezos-k8s topology in a k8s cluster. - * Supports either local charts or charts from a repo - */ - -export class TezosChain extends pulumi.ComponentResource { - readonly name: string - readonly params: TezosParameters - readonly tezosHelmValues: any - readonly namespace: k8s.core.v1.Namespace - readonly dalNodes: { - [name: string]: { - humanName: string; - rpc: string; - p2p: string; - }; - }; - - /** - * Deploys a private chain on a Kubernetes cluster. - * @param name The name of the Pulumi resource. - * @param params Helm chart values and chain bootstrap parameters - * @param provider The Kubernetes cluster to deploy it into. - */ - constructor( - params: TezosParameters, - provider: k8s.Provider, - opts?: pulumi.ResourceOptions - ) { - const inputs: pulumi.Inputs = { - options: opts, - } - - let name: string; - if (params.schedule) { - const deployDate = new Date( - cronParser - .parseExpression(params.schedule, { utc: true }) - .prev() - .toLocaleString() - ) - name = - `${params.humanName.toLowerCase()}-${ - deployDate.toISOString().split("T")[0] - }` - } else { - name = params.humanName.toLowerCase() - } - super("pulumi-contrib:components:TezosChain", name, inputs, opts) - - this.params = params - this.name = name - this.dalNodes = {} - - this.tezosHelmValues = YAML.parse( - fs.readFileSync(this.params.helmValuesFile, "utf8") - ); - if (this.name == "nairobinet") { - this.tezosHelmValues["accounts"]["oxheadbaker"]["key"] = this.params.bakingPrivateKey - } else { - this.tezosHelmValues["accounts"]["teztnetsbaker"]["key"] = this.params.bakingPrivateKey - } - if (this.params.schedule) { - const deployDate = new Date( - cronParser - .parseExpression(this.params.schedule, { utc: true }) - .prev() - .toLocaleString() - ) - const imageResolver = new TezosImageResolver() - this.tezosHelmValues["images"]["mavkit"] = - pulumi - .output(imageResolver.getLatestTagAsync(deployDate)) - .apply((tag) => `${imageResolver.image}:${tag}`) - // this is a trick to change mondaynet's name when it needs to be respun. - // if the chain has already launched but gets bricked because it can no longer upgrade from one proto to the next, - // change the date below. It will start with a different chainId. - // This way, it won't mix with the existing mondaynet and will be able to sync. - // Otherwise, the old broken mondaynet will mix with the new one and you'll never be able to produce - // another genesis block. - this.tezosHelmValues["node_config_network"]["chain_name"] = - `TEZOS-${this.params.humanName.toUpperCase()}-${deployDate.toISOString()}` - this.tezosHelmValues["node_config_network"]["genesis"]["timestamp"] = deployDate.toISOString(); - } - - if (params.bootstrapContracts) { - params.bootstrapContracts.forEach((contractFile) => { - let contractFullName = `${name}-${contractFile}`; - - // Create a new GCP storage object - new gcp.storage.BucketObject(contractFullName, { - bucket: params.activationBucket.name, - name: contractFullName, - source: new pulumi.asset.FileAsset(`bootstrap_contracts/${contractFile}`), - contentType: mime.getType(contractFile) || undefined, - }); - - // Push the URL to the helm values - if (!this.tezosHelmValues["activation"]["bootstrap_contract_urls"]) { - this.tezosHelmValues["activation"]["bootstrap_contract_urls"] = []; - } - this.tezosHelmValues["activation"]["bootstrap_contract_urls"].push( - pulumi.interpolate`https://storage.googleapis.com/${params.activationBucket.name}/${contractFullName}` - ); - }); - } - - this.namespace = new k8s.core.v1.Namespace( - this.name, - { metadata: { name: name } }, - { provider: provider } - ) - - - // RPC Ingress - const rpcDomain = `rpc.${name}.${domainName}` - - const rpcIngName = `${rpcDomain}-ingress` - new k8s.networking.v1.Ingress( - rpcIngName, - { - metadata: { - namespace: this.namespace.metadata.name, - name: rpcIngName, - annotations: { - "kubernetes.io/ingress.class": "nginx", - "cert-manager.io/cluster-issuer": "letsencrypt-prod", - "nginx.ingress.kubernetes.io/enable-cors": "true", - "nginx.ingress.kubernetes.io/cors-allow-origin": "*", - }, - labels: { app: "tezos-node" }, - }, - spec: { - rules: [ - { - host: rpcDomain, - http: { - paths: [ - { - path: "/", - pathType: "Prefix", - backend: { - service: { - name: "tezos-node-rpc", - port: { - name: "rpc", - }, - }, - }, - }, - ], - }, - }, - ], - tls: [ - { - hosts: [rpcDomain], - secretName: `${rpcDomain}-secret`, - }, - ], - }, - }, - { provider, parent: this } - ) - // RPC Ingress - const rpcDomainCom = `rpc.${name}.${domainNameXyz}` - - const rpcIngNameCom = `${rpcDomainCom}-ingress` - new k8s.networking.v1.Ingress( - rpcIngNameCom, - { - metadata: { - namespace: this.namespace.metadata.name, - name: rpcIngNameCom, - annotations: { - "kubernetes.io/ingress.class": "nginx", - "cert-manager.io/cluster-issuer": "letsencrypt-prod", - "nginx.ingress.kubernetes.io/enable-cors": "true", - "nginx.ingress.kubernetes.io/cors-allow-origin": "*", - }, - labels: { app: "tezos-node" }, - }, - spec: { - rules: [ - { - host: rpcDomainCom, - http: { - paths: [ - { - path: "/", - pathType: "Prefix", - backend: { - service: { - name: "tezos-node-rpc", - port: { - name: "rpc", - }, - }, - }, - }, - ], - }, - }, - ], - tls: [ - { - hosts: [rpcDomainCom], - secretName: `${rpcDomainCom}-secret`, - }, - ], - }, - }, - { provider, parent: this } - ) - - - // Rollup - if ( - this.tezosHelmValues.smartRollupNodes && - this.tezosHelmValues.smartRollupNodes.length != 0 - ) { - let rollupFqdn = `evm-rollup-node.${name}.${domainName}` - let rollupIngressParams = { - enabled: true, - host: rollupFqdn, - labels: { - app: "rollup-evm", - }, - annotations: { - "kubernetes.io/ingress.class": "nginx", - "cert-manager.io/cluster-issuer": "letsencrypt-prod", - "nginx.ingress.kubernetes.io/enable-cors": "true", - "nginx.ingress.kubernetes.io/cors-allow-origin": "*", - }, - tls: [ - { - hosts: [rollupFqdn], - secretName: `${rollupFqdn}-secret`, - }, - ], - } - this.tezosHelmValues.smartRollupNodes.evm.ingress = rollupIngressParams - let evmProxyFqdn = `evm.${name}.${domainName}` - let evmProxyIngressParams = { - enabled: true, - host: evmProxyFqdn, - labels: { - app: "evm-proxy", - }, - annotations: { - "kubernetes.io/ingress.class": "nginx", - "cert-manager.io/cluster-issuer": "letsencrypt-prod", - "nginx.ingress.kubernetes.io/enable-cors": "true", - "nginx.ingress.kubernetes.io/cors-allow-origin": "*", - }, - tls: [ - { - hosts: [evmProxyFqdn], - secretName: `${evmProxyFqdn}-secret`, - }, - ], - } - this.tezosHelmValues.smartRollupNodes.evm.evm_proxy.ingress = - evmProxyIngressParams - } - - if (this.tezosHelmValues.dalNodes && this.tezosHelmValues.dalNodes.length !== 0) { - // We define both DAL nodes: the bootstrap node for the network, and the attester. - // This is different than the L1, where the same node does everything. - // Gossipsub requires separation from the bootstrap node and the nodes that actually - // does the duties. - const dalP2pPort = 11732; - - Object.entries({ - "dal-bootstrap": { - humanName: 'DAL Bootstrap', - rpcFqdn: `dal-bootstrap-rpc.${name}.${domainName}`, - p2pFqdn: `dal.${name}.${domainName}`, - }, - "dal-dal1": { - humanName: 'DAL Testnets Attester', - rpcFqdn: `dal-attester-rpc.${name}.${domainName}`, - p2pFqdn: `dal1.${name}.${domainName}`, - - } - }).forEach(([dalNodeName, { humanName, rpcFqdn, p2pFqdn }]) => { - - const ingressParams = { - enabled: true, - host: rpcFqdn, - labels: { app: `dal-${dalNodeName}` }, - annotations: { - "kubernetes.io/ingress.class": "nginx", - "cert-manager.io/cluster-issuer": "letsencrypt-prod", - "nginx.ingress.kubernetes.io/enable-cors": "true", - "nginx.ingress.kubernetes.io/cors-allow-origin": "*", - }, - tls: [{ hosts: [rpcFqdn], secretName: `${rpcFqdn}-secret` }], - }; - this.tezosHelmValues.dalNodes[dalNodeName].ingress = ingressParams; - - // Setting up GCP static IP address - const staticIPName = `${name}-${dalNodeName}-ip`; - const staticIP = new gcp.compute.Address(staticIPName, { - name: staticIPName, - region: gcpRegion, - }); - - const serviceName = `${name}-${dalNodeName}`; - new k8s.core.v1.Service(`${serviceName}-p2p-lb`, { - metadata: { - namespace: this.namespace.metadata.name, - name: serviceName, - annotations: { - "external-dns.alpha.kubernetes.io/hostname": p2pFqdn, - "service.beta.kubernetes.io/gcp-load-balancer-type": "External", - "networking.gke.io/load-balancer-type": "External", - }, - }, - spec: { - ports: [{ port: dalP2pPort, targetPort: dalP2pPort, protocol: "TCP" }], - selector: { app: `dal-${dalNodeName}` }, - type: "LoadBalancer", - loadBalancerIP: staticIP.address, - }, - }, - { - provider: provider, - } - ); - - this.tezosHelmValues.dalNodes[dalNodeName].publicAddr = pulumi.interpolate`${staticIP.address}:${dalP2pPort}`; - this.dalNodes[dalNodeName] = { - humanName: humanName, - rpc: `https://${rpcFqdn}`, - p2p: `${p2pFqdn}:${dalP2pPort}` - } - }) - - // Set bootstrap peers on the network config (specific to testnets) - this.tezosHelmValues.node_config_network.dal_config.bootstrap_peers = [ - `dal.${name}.${domainName}:11732` - ]; - } - - let chartParams = getChartParams(params, "tezos"); - const chartValues: any = { - ...chartParams, - namespace: this.namespace.metadata.name, - values: this.tezosHelmValues, - } - new k8s.helm.v3.Chart( - name, - chartValues, - { providers: { kubernetes: provider } } - ) - - new k8s.core.v1.Service( - `${name}-p2p-lb`, - { - metadata: { - namespace: this.namespace.metadata.name, - name: name, - annotations: { - "external-dns.alpha.kubernetes.io/hostname": `${name}.${domainName}`, - }, - }, - spec: { - ports: [ - { - port: 9732, - targetPort: 9732, - protocol: "TCP", - }, - ], - selector: { node_class: "tezos-baking-node" }, - type: "LoadBalancer", - }, - }, - { provider: provider } - ) - // temporary domain name for .xyz - new k8s.core.v1.Service( - `${name}-p2p-lb-com`, - { - metadata: { - namespace: this.namespace.metadata.name, - name: `${name}-teztnetscom`, - annotations: { - "external-dns.alpha.kubernetes.io/hostname": `${name}.${domainNameXyz}`, - }, - }, - spec: { - ports: [ - { - port: 9732, - targetPort: 9732, - protocol: "TCP", - }, - ], - selector: { node_class: "tezos-baking-node" }, - type: "LoadBalancer", - }, - }, - { provider: provider } - ) - // end temporary domain name for .com - } - - getDockerBuild(): string { - return this.tezosHelmValues["images"]["mavkit"] - } - - getGitRef(): pulumi.Output { - // guessing git version or release version based on docker naming convention - // This will fail if mavkit changes repo tagging convention. - let dockerBuild = pulumi.output(this.tezosHelmValues["images"]["mavkit"]) - return dockerBuild.apply((s: string) => { - let o = s.split(":")[1] - if (s.includes("master_")) { - o = o.split("_")[1] - } - return o - }) - } - - getRpcUrl(): string { - return `https://rpc.${this.name}.${domainName}` - } - getRollupUrls(): string[] { - if ( - this.tezosHelmValues.smartRollupNodes && - this.tezosHelmValues.smartRollupNodes.length != 0 - ) { - return [`https://evm-rollup-node.${this.name}.${domainName}`] - } - return [] - } - getEvmProxyUrls(): string[] { - if ( - this.tezosHelmValues.smartRollupNodes && - this.tezosHelmValues.smartRollupNodes.length != 0 - ) { - return [`https://evm.${this.name}.${domainName}`] - } - return [] - } - getRpcUrls(): Array { - return [...[this.getRpcUrl()], ...this.params.rpcUrls || []] - } - - getLastBakingDaemon(): string { - return this.tezosHelmValues["protocols"].slice(-1)[0]["command"] - } -} From d5bd5433e682e1ccfce8c47b9f4a2d06cfde908f Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Wed, 12 Mar 2025 11:53:04 +0100 Subject: [PATCH 14/19] Build triggered --- networks/atlasnet/values.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/networks/atlasnet/values.yaml b/networks/atlasnet/values.yaml index 22c353e3..b52fe996 100644 --- a/networks/atlasnet/values.yaml +++ b/networks/atlasnet/values.yaml @@ -154,4 +154,6 @@ protocols: adaptive_issuance_vote: "on" bootstrap_peers: - - atlasnet.rpc.mavryk.network + - atlasnet.rpc.mavryk.network:9732 + - atlasnet.rpc.mavryk.network:9733 + - atlasnet.rpc.mavryk.network:9734 From d949f5e7391846c14f6bbaf2815b7d8cdb88de69 Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Wed, 12 Mar 2025 15:40:00 +0100 Subject: [PATCH 15/19] Build triggered --- networks/atlasnet/values.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/networks/atlasnet/values.yaml b/networks/atlasnet/values.yaml index b52fe996..5323ac04 100644 --- a/networks/atlasnet/values.yaml +++ b/networks/atlasnet/values.yaml @@ -157,3 +157,4 @@ bootstrap_peers: - atlasnet.rpc.mavryk.network:9732 - atlasnet.rpc.mavryk.network:9733 - atlasnet.rpc.mavryk.network:9734 + From 52441c000060489d0d0ae8150d313052f743e5df Mon Sep 17 00:00:00 2001 From: Tristan Allaire Date: Mon, 14 Jul 2025 15:51:37 +0200 Subject: [PATCH 16/19] Build trigger --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 49d6a003..a47d3108 100644 --- a/README.md +++ b/README.md @@ -81,3 +81,4 @@ To build the website locally, from the top-level dir of the repo: 1. run `bundle exec jekyll serve` The website will be rendered on `localhost:4000`. + From 5bca7b50d70afde63f6815104a125b27a5be5f1e Mon Sep 17 00:00:00 2001 From: Tristan ALLAIRE Date: Tue, 5 Aug 2025 11:59:52 +0200 Subject: [PATCH 17/19] Build triggered --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index a47d3108..49d6a003 100644 --- a/README.md +++ b/README.md @@ -81,4 +81,3 @@ To build the website locally, from the top-level dir of the repo: 1. run `bundle exec jekyll serve` The website will be rendered on `localhost:4000`. - From 61d73a604d06622219a6fe670aa3c4a32321622e Mon Sep 17 00:00:00 2001 From: Tristan Allaire Date: Mon, 25 Aug 2025 12:11:22 +0200 Subject: [PATCH 18/19] Build trigger --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index a47d3108..49d6a003 100644 --- a/README.md +++ b/README.md @@ -81,4 +81,3 @@ To build the website locally, from the top-level dir of the repo: 1. run `bundle exec jekyll serve` The website will be rendered on `localhost:4000`. - From 1a2c1c8aad4aea46c37a088f099577419ba92fed Mon Sep 17 00:00:00 2001 From: Tristan Allaire Date: Tue, 16 Dec 2025 16:09:05 +0900 Subject: [PATCH 19/19] Testnet styling updated --- testnets_xyz_page/release.py | 4 ++-- testnets_xyz_page/website/_config.yml | 2 +- testnets_xyz_page/website/favicon.ico | Bin 15406 -> 9662 bytes 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/testnets_xyz_page/release.py b/testnets_xyz_page/release.py index fe09449c..c787eba9 100644 --- a/testnets_xyz_page/release.py +++ b/testnets_xyz_page/release.py @@ -23,13 +23,13 @@ category_desc = { "Long-running Testnets": "If you are not sure, pick this one.", "Protocol Testnets": "Testnets deployed specifically to test new Mavryk protocol proposals.", - "Periodic Testnets": "Testnets that restart regularly and track the development of the master branch of [Mavkit repo](https://gitlab.com/mavryk-network/mavryk-protocol/).\n \n☠️ You probably don't want this unless you are a core protocol developer.", + # "Periodic Testnets": "Testnets that restart regularly and track the development of the master branch of [Mavkit repo](https://gitlab.com/mavryk-network/mavryk-protocol/).\n \n☠️ You probably don't want this unless you are a core protocol developer.", } nested_testnets = { "Long-running Testnets": {}, "Protocol Testnets": {}, - "Periodic Testnets": {}, + # "Periodic Testnets": {}, } for k, v in testnets.items(): diff --git a/testnets_xyz_page/website/_config.yml b/testnets_xyz_page/website/_config.yml index 8f1f6bca..dc8cfa90 100644 --- a/testnets_xyz_page/website/_config.yml +++ b/testnets_xyz_page/website/_config.yml @@ -18,7 +18,7 @@ # You can create any custom variable you would like, and they will be accessible # in the templates via {{ site.myvariable }}. -title: 🌮 Testnets 🚧 +title: Testnets baseurl: "" url: "https://testnets.mavryk.network" # the base hostname & protocol for your site, e.g. http://example.com twitter_username: mavrykdynamics diff --git a/testnets_xyz_page/website/favicon.ico b/testnets_xyz_page/website/favicon.ico index 15f533d5eb274ae3d582b6437e4337ead8409395..7ed2999556f6903abf0d6fc3f72e25a0959adcb1 100644 GIT binary patch literal 9662 zcmdU#O>9(E7=}-&hE3IUW;&e~rZWtk>2#)rVr#1qiWJ-!1p_8Vr3GwjBE$tQ+(@); zl*9!X4Q$wTZckUgf>hQ0pN8$gZ`XsGXR4J8(a7i73cwPUsEA`dGmaGfQ|35VLud>yE^fBml zXcGDs`VG1Z&Dr8Hukjx9FfX5J2#s2HmQNDwNt8+Mbx;O60bPJ@LbH(g6!Y>KKKlmL z0o6mnU;^Z(ZKw|Ff=)x%A^O)ZvsXUapsh1dH^edmkS(1xG&W=UNfYe81+gqImU6Gt z_DP6ksnGb$(r_j2Y8#f{x8wK{bRR00vDEV{gJtc2wC_q_E_&O3_5q~B&@@!4+)CeP znIjMx7G?Ch$o$ZQ5Xa}AP^H=Y+GE)q-(>N^ExOKp5a$B2{|)&qYo+p$fh;BGC*(0> zmF>2ces}tUEM)Q=59S_Hj+>R7W1MV$&&lLDrfvQx(u#E5k8)uk;viSCBEmZBzC?h@u$v9_~>mn-}pU= z9r#)jgYRp_4t|5WIO{qiVcHrxCv7`V!R9%f|KYaf&BZl={0~7FeDQ;!>E)j!o9K~z zq){^MgAy6J;VyH0R@$CCE%~OfR($tI;GZq_4{g2l18i+Yo{+Xl+wOXL`jyPwd-Ow$ z#f$APc5e8Sy^@bcB$M8~1pgW2iE71%KK9`MQL@QLk*5i1ul7v<{u^L6`zG!uYK@=F z+{aD&VrTuT%m4H@*|{ez?fdHFCp-7mwaQQSJ2lKtcK`8C_4R-5HCKWEtb|^@U))Fa z{9o4mNqgikum2qOTE9Ll%>SFWjbh!tS-dt?hM(-g#_ypi$)*Ot7LktB6A~Goh94a9 z4PqL`7hIR}%`vD&QrpIn_xgMtD#K59|MMp}!$)pOI=4^r=US7}`pjp=eFIz(#4+jI zb2fi7_^GJ0cfW|3;d|79@gL)dvilF&{jXp48ql`u1F%`KK_;_DbbL1YkM7@*kzXab z{cXv|Ht0N^@vL-i%oOscJD-*43*YHFSAd`FT!a0^4-3|?OlB{bBHFK=ZC$c?>#(GH zUlZ0RA8XaTxt6$W+}AM?W5mc+3(s4{0rJ33jT{wwe};jk+Fz<0YBS-??`Lz z{jI4(*qTpAP=}g&e{LFtZ3ERqoL{Tu`vuo0G8xPzQ|5ze^81mgm|X{cJ7Zs(hE{t_ zvrLv9`1_rs4rWYWf-UaXR=OT6gJp3ZVc7;}S!sCeuC@U?{HDzHVI}7#+GZKn_iKDR zuhbuGvL5T8Ziul4%bJ7AZ4cU@E%W;UmQg8emmS)MSVkp&zwssPaBk^j$7OX9g_Uc8MbH(M^#USAK?H$FRXRaHLQ5ba zKpN>C!lFPBNT|{RNPrL`5Riox(ofEFpXWQ7F)lO<8~rw+YjjX6+rrE9`3a2E8RGx%<7}{x=OTR zUr$9i@mOeiN%UEibcra!3Du!f!y27h5Yb*-NYa0t!n^?5hqU8Lo zeQjeop7TG60YQiGN!(WWA9mAwD5#{GuI53Zs{LBCpra4tj_@MTYM%tY2Rk(H-A&Me9$Um`!-kLdqNM{c_~ zoF?WhpBQ}9E)cib+x{n~C1)BlbYYNus{hqMDb0GZ$?o2y}QIvV9l-*gYP9ppL zZOHBrhwSzYt=74+?^;xp&9ft$GRMkO*?r53vm31}v+9|;s&7KO7+3ah78hqV4ldh4 zxtvN_HR_2l+-XOWd>$Rr3vrfb9@5S$xU5*;3v+;{dG1M8H~8{8ny#%da@LA}v$zNk zQiitRxu+=>M*YzM)wQe+(|QiNu3E=K@6I z!ySNc@IUd&@NMWhbgLD54bQ~NT~{q$yteU14EHZD;kb&b$7FES73-W9Kg^jYJ%Mwv znEXBydlu*z>%z+mPFK?whTb1!VqDNMiw6_-+(`e4)#YduTvm&|&a!5l12b-Kcph3& ziaQow2iH_S*IQ-acfgC0*Dzt}5e%5L3vYb<4c`4U3u6`@#LVzqi~ih0Jey;HRvgFU zp>F-h^etM-Q<*TSZ;eysDtmHGIoC(EZi1(%|44UXxpRFX%7ab-9bzgmFth-lhaAU* z364#f8?(r2o3; z58v+Y`;!OgoTh1*KOU{|<@Y1Ak2PjzQ~7JeOSYM$a>k z^w)^Cekp}$EjciCzq{}5@v#`N@pDW$@&l$Gxoo9B+`Pi#fw@C?_UG+eXMs5nJj$Id zV$sS?-Tjy2UzNgr@M4-|;XlwNekc0O-;e%_zQ&Nu6!hO1fK?}Q5nljwv8_Yim8#Dq z4;t2apfkZUpSpU8owm}cSJ9B`Fi*0mW7S^l@)mHI(X3#b3aE)JIl_oP@Kt z?cDA7MKQW`%}0l2Wq2+b;Qi9M>^NL@*=46$m3Fp?!Rl6Pa9`aNy_ck3z+;?`@%~2; z%R65t^`Ngfj!gEO$aq4_STtju7F@eirXN6J-@jv9$9Q)gmd8@QjBgQz$G!JnpIgs? zdJg=jb3k?ynrI#GGSu5i$b|Y|JqPMJP|tyS4*dIa0Qg0fj^CO3wI6MN!Mxi>QkRb$ zoQcR6QxQpfh&#kHj;)M(d{tRg!+_$breWn#ZR21C+Bl zXO*eF>B}Q-9$p^FJ|i9qDqGV!8Y_8EnAj=?&scYbsraS035bryuV^#u!~01F?@2|n zU6`Odyzb}$v?a(_*NOf&-9cm*x@T#zWgnp5vHD)bJ3@6@Hd5IS9;R(hHVoNIp5(pH zeveZ>vM;n?nd-;}qBd%4?py4$l;hY)AKIG^VzrMUa1U-Hc7Ni%#^4feVU~SML1{A< zjbjY`g}MXE)=J;0b+41%(cH1@_=QC{nyf9i#(N*f+kn{QTQv1$1C|ZBVZe0@zxuk1 z-wy;9)0XS@W2!Fubg2*gS1U;O!)jY)IS$6J&;=61ZgSXM%ysiR&ntK|rd{AR^?mc1~#snQl{Au?XWczzQ z#rqh3Pn)XvEEc`*YL|e=>6>_8HX^N$akM?iUfE^N zDZDz&Z7Vl6b1P<^#$fyillFPX|L}?uYyFCEcKim{t;T9AyNA}OvA47&Z!~_|1S{Lb zVKi}X683nmn?J<6&?&}=9+M8e%~KT6ML?+&1k}&|bBT`}VT%FQQ#ow(_^aE@IfcL$&bBXE1d7UVOUj z2ts#XweYXY_r8X-_9Zv$eiUz5?x#KJUhZeR4d1h#{ag5rynBRuhIFo&wIjQdZ?qGm zLh~?Y!9jdH{{RL|%*MbeyR7uE8GA7~=qRSGI*!m?ZvRgV=d1_qg7QDe#;d*dAmxfT z+{#m#>Zq>q4Oq5Wt_OotbJ0B9Z7XXWQsbLaxyr;BwUz&hc~0`aLj0da{Pd~e)$pqr zyYf5BUokN-2UAuYwR{$SLC5gPqC*(J_%K3t{=?$G@V~U)y$9;TV{kR$Iu=$1*_5?6 zwZ}Cc`*?*>XNBrX?#jMz`tXd&w_?i7LgAM`&y@EL{2pV8b@WociHOd}*vLE#Tzv+8 zC+x->FP>ZjOm(8Rz4kC2s$r#%XYQ#*{(l zh<^{)5Q1}S@VAdFN1xd_So7^Qtjlxa!~IT7I#_{8drRS$U5r`TMb^0{d8@Z9>Q{Ud zEd`}((fWyUdwr`ft}*+(*vn0t{NF?Q87};iKX#jGk2Du_PRai{hd!nm^!Egv1_CK_ z=FsP*b2y21@j;n2<2L>N+*ot-FxOHO`s3_lS6V*0hk{CLoeiQveIkN^n7%I$af~&#kF#py*Blsq=2pgH^qo7o-tG9+kC8Wa z{mS%7`RPZWT1O*;boQDu#n175P|%4=^4f(!zLko~uf&w>6b#z908x2ASYw{SeXsXa z_I957jJ?cTT0TPURq@%5zb^f%st;%Db$BlAB7RHWpV1zsTeKQS``BXiNQj`XY?9?O zdw)}aR5VcEaEJG4eu=E|0fJ(3EY!!f9=NN8(ToUei**RpYP-*(N{Pf{Zc1j zWafM;?{6DsA>~|!wT6t(#v3hrUTeyf|E64&Y`>SX)L!;8)8*W|qaDPqdqB!rbfg}U zuRT0*uiMYnA@)bSoVXZ$lKklRoJ*ZL0+aWKW73{5EB(Qid02FKzcmMu^g(;>0dIID z55;@wMvu`C?XAwOj|Oh%9*)o+SWWrpeoM%=eX-}zD{(f4emw^>4yIxn z-#SjqIcKGZ)0aE+t0hP*D6!_i_?dr-zSfq`FZ(|IsWzVF#k3H$$ z>|5uz?liiWDP31x^1hV5tL6r`J*LlV2FKvkx#~U(T=-+$A%ydb>GZlU=x(WW9d(^PvGBKJ zwx@L$<2uTgERsHC_o@5Ny@IZtPoSG`4&DnrXwAde?R)^55sHu#?spJ;n}r^>_Y%S& zJx2Rg`feSVtbFNzMt@S;vu>5l$!ZmiN9~wzNJ|!7Ku_Yoq_-m@cJNL>4C<@X>>_ma zJ&or(oI?NL>+suFj+eXTq1USiFlAE`-;rFj_Q7J>C`=o*Gxv?3!ms_HIZ~)&Z~T+z zZBHX}ZoqB-;20>2#&HbSse0nCo2q0x`|UWt7#;nKtT$1AUT_^R_?$$ywkI$yCK>Y% zC-d&FH(4%x&i4vN9<}CP)g6#;uW#U~WRcFfNBB0#v&@tC{4S!dHpSs^%S$_4Z)rY9 z`8Ch9F&x8XooVmzOz>RS-4mRA%XS%qW)qr2bZiD+{ondeW1uX0SNF>}>ZU`e8=1FA>erWV|3>X~VZ?41x(z8r zw|2Sc`{q7;vS}xlf9KX+Wrs0u1w8TT9;LmZcNnca=El_Jn*Y%!8t;0_%3B|W!$Cdy z58M;msViTbuoo`bOzh(jtrv%Sw*?<&Oi$@}5rTl-4hD_nYOAbr;0x>;Pc zPp>iF*=8M{{W)0cs+({HcXKVh$8jX^?ZbtSv*F_ZE!6OKjT638enf{QrPdvk_$v6` z;P8l@d~aWfWn6>D`G%+BEw007>Ubw);f}#Y#wnDM?=^|QJ$2#vm-4x*c|0pDN|?VO7v0 zOS`7BO$-)MrYvUol<6L<-$?(XajX0EUm8b!qk0b1bD*9B^&F_@Ks^WQIq?6S1OEqs CunC0#