Skip to content

Commit 506cb6e

Browse files
authored
feat: add support to deploy protocol to goerli network (#615)
- add support to deploy protocol to goerli network - add goerli address book Signed-off-by: Tomás Migone <[email protected]>
1 parent 47764e8 commit 506cb6e

File tree

4 files changed

+305
-0
lines changed

4 files changed

+305
-0
lines changed

addresses.json

Lines changed: 189 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -621,6 +621,195 @@
621621
"txHash": "0xe16a77593a05fdf02bc61bdf61393327e38bc055dcf57832bed308dff8249ef0"
622622
}
623623
},
624+
"5": {
625+
"GraphProxyAdmin": {
626+
"address": "0x6D47902c3358E0BCC06171DE935cB23D8E276fdd",
627+
"creationCodeHash": "0x8b9a4c23135748eb0e4d0e743f7276d86264ace935d23f9aadcfccd64b482055",
628+
"runtimeCodeHash": "0x47aa67e4a85090fe7324268b55fb7b320ee7a8937f2ad02480b71d4bb3332b13",
629+
"txHash": "0xd4be829c13c741b8b56ca5ee7d98d86237ce44df7c11eff73df26cd87d5cab94"
630+
},
631+
"BancorFormula": {
632+
"address": "0x2DFDC3e11E035dD96A4aB30Ef67fab4Fb6EC01f2",
633+
"creationCodeHash": "0x7ae36017eddb326ddd79c7363781366121361d42fdb201cf57c57424eede46f4",
634+
"runtimeCodeHash": "0xed6701e196ad93718e28c2a2a44d110d9e9906085bcfe4faf4f6604b08f0116c",
635+
"txHash": "0x97ca33e6e7d1d7d62bdec4827f208076922d9c42bf149693b36ab91429e65740"
636+
},
637+
"Controller": {
638+
"address": "0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B",
639+
"creationCodeHash": "0x4f2082404e96b71282e9d7a8b7efd0f34996b5edac6711095911d36a57637c88",
640+
"runtimeCodeHash": "0xe31d064a2db44ac10d41d74265b7d4482f86ee95644b9745c04f9fc91006906d",
641+
"txHash": "0x8087bd10cc8d456a7b573bc30308785342db2b90d80f3a750931ab9cf5273b83"
642+
},
643+
"EpochManager": {
644+
"address": "0x03541c5cd35953CD447261122F93A5E7b812D697",
645+
"initArgs": ["0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B", "554"],
646+
"creationCodeHash": "0x25a7b6cafcebb062169bc25fca9bcce8f23bd7411235859229ae3cc99b9a7d58",
647+
"runtimeCodeHash": "0xaf2d63813a0e5059f63ec46e1b280eb9d129d5ad548f0cdd1649d9798fde10b6",
648+
"txHash": "0xb1c6189514b52091e35c0349dff29357a2572cd9c2f9ad7f623b2b24252826d1",
649+
"proxy": true,
650+
"implementation": {
651+
"address": "0xb6a641879F195448F3Da10fF3b3C4541808a9342",
652+
"creationCodeHash": "0x729aca90fcffdeede93bc42a6e089a93085ec04133e965cf0291cf6245880595",
653+
"runtimeCodeHash": "0xce525d338b6ed471eeb36d2927a26608cca2d5cfe52bd0585945eacc55b525cf",
654+
"txHash": "0x139630c31b6a5799231572aa0b555a44209acd79fb3df98832d80cf9a1013b58"
655+
}
656+
},
657+
"GraphToken": {
658+
"address": "0x5c946740441C12510a167B447B7dE565C20b9E3C",
659+
"constructorArgs": ["10000000000000000000000000000"],
660+
"creationCodeHash": "0xa749ef173d768ffe0786529cd23238bc525f4a621a91303d8fb176533c18cec2",
661+
"runtimeCodeHash": "0xe584408c8e04a6200bc7a50816343585ad80f699bd394b89bb96964dbc1a2a92",
662+
"txHash": "0x0639808a47da8a5270bc89eb3009c7d29167c8f32f015648920ec5d114225540"
663+
},
664+
"GraphCurationToken": {
665+
"address": "0x8bEd0a89F18a801Da9dEA994D475DEa74f75A059",
666+
"creationCodeHash": "0x8c076dacbf98f839a0ff25c197eafc836fc3fc1ee5183c7f157acec17678a641",
667+
"runtimeCodeHash": "0xad138b4c4f34501f83aea6c03a49c103a9115526c993860a9acbd6caeaaf0d64",
668+
"txHash": "0xc09739affd3d9dd43f690d3a487b1c149ad8aa50164995cfbc9de73914ff278a"
669+
},
670+
"ServiceRegistry": {
671+
"address": "0x7CF8aD279E9F26b7DAD2Be452A74068536C8231F",
672+
"initArgs": ["0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B"],
673+
"creationCodeHash": "0x25a7b6cafcebb062169bc25fca9bcce8f23bd7411235859229ae3cc99b9a7d58",
674+
"runtimeCodeHash": "0xaf2d63813a0e5059f63ec46e1b280eb9d129d5ad548f0cdd1649d9798fde10b6",
675+
"txHash": "0xf250ef40f4172e54b96047a59cfd7fc35ffabe14484ff1d518e0262195895282",
676+
"proxy": true,
677+
"implementation": {
678+
"address": "0xdC7Fb3a43B9e069df5F07eDc835f60dAc3fD40BA",
679+
"creationCodeHash": "0x45f56a7ad420cd11a8585594fb29121747d87d412161c8779ea36dfd34a48e88",
680+
"runtimeCodeHash": "0x26aceabe83e2b757b2f000e185017528cdde2323c2129fd612180ac3192adfda",
681+
"txHash": "0x2fdb5fa641f707809322107573ce7799711e125cc781aade99fd2948455847ab"
682+
}
683+
},
684+
"Curation": {
685+
"address": "0xE59B4820dDE28D2c235Bd9A73aA4e8716Cb93E9B",
686+
"initArgs": [
687+
"0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B",
688+
"0x2DFDC3e11E035dD96A4aB30Ef67fab4Fb6EC01f2",
689+
"0x8bEd0a89F18a801Da9dEA994D475DEa74f75A059",
690+
"500000",
691+
"10000",
692+
"1000000000000000000"
693+
],
694+
"creationCodeHash": "0x25a7b6cafcebb062169bc25fca9bcce8f23bd7411235859229ae3cc99b9a7d58",
695+
"runtimeCodeHash": "0xaf2d63813a0e5059f63ec46e1b280eb9d129d5ad548f0cdd1649d9798fde10b6",
696+
"txHash": "0xf1b1f0f28b80068bcc9fd6ef475be6324a8b23cbdb792f7344f05ce00aa997d7",
697+
"proxy": true,
698+
"implementation": {
699+
"address": "0xAeaA2B058539750b740E858f97159E6856948670",
700+
"creationCodeHash": "0x022576ab4b739ee17dab126ea7e5a6814bda724aa0e4c6735a051b38a76bd597",
701+
"runtimeCodeHash": "0xc7b1f9bef01ef92779aab0ae9be86376c47584118c508f5b4e612a694a4aab93",
702+
"txHash": "0x400bfb7b6c384363b859a66930590507ddca08ebedf64b20c4b5f6bc8e76e125"
703+
}
704+
},
705+
"SubgraphNFTDescriptor": {
706+
"address": "0xE7e406b4Bfce0B78A751712BFEb1D6B0ce60e8fb",
707+
"creationCodeHash": "0xf16e8ff11d852eea165195ac9e0dfa00f98e48f6ce3c77c469c7df9bf195b651",
708+
"runtimeCodeHash": "0x39583196f2bcb85789b6e64692d8c0aa56f001c46f0ca3d371abbba2c695860f",
709+
"txHash": "0xffee21f6616abd4ffdab0b930dbf44d2ba381a08c3c834798df464fd85e8047e"
710+
},
711+
"SubgraphNFT": {
712+
"address": "0x083318049968F20EfaEA48b0978EC57bbb0ECbcE",
713+
"constructorArgs": ["0xEfc519BEd6a43a14f1BBBbA9e796C4931f7A5540"],
714+
"creationCodeHash": "0x5de044b15df24beb8781d1ebe71f01301a6b8985183f37eb8d599aa4059a1d3e",
715+
"runtimeCodeHash": "0x6a7751298d6ffdbcf421a3b72faab5b7d425884b04757303123758dbcfb21dfa",
716+
"txHash": "0x8884b65a236c188e4c61cf9593be2f67b27e4f80785939336d659866cfd97aec"
717+
},
718+
"GNS": {
719+
"address": "0x065611D3515325aE6fe14f09AEe5Aa2C0a1f0CA7",
720+
"initArgs": [
721+
"0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B",
722+
"0x2DFDC3e11E035dD96A4aB30Ef67fab4Fb6EC01f2",
723+
"0x083318049968F20EfaEA48b0978EC57bbb0ECbcE"
724+
],
725+
"creationCodeHash": "0x25a7b6cafcebb062169bc25fca9bcce8f23bd7411235859229ae3cc99b9a7d58",
726+
"runtimeCodeHash": "0xaf2d63813a0e5059f63ec46e1b280eb9d129d5ad548f0cdd1649d9798fde10b6",
727+
"txHash": "0x0149f062893acb0eafcbf67acc99da99e03aab3ee2b6b40fbe523d91e0fcecd1",
728+
"proxy": true,
729+
"implementation": {
730+
"address": "0xa95ee5A5f6b45Fcf85A7fa0714f462472C467818",
731+
"creationCodeHash": "0x2e71e4aefc1e678cb9c71882c1da67fc640389337a7d6ae43f78d0f13294594a",
732+
"runtimeCodeHash": "0xde0e02c6a36a90e11c768f40a81430b7e9cda261aa6dada14eaad392d42efc21",
733+
"txHash": "0xbc6e9171943020d30c22197282311f003e79374e6eeeaab9c360942bdf4193f4"
734+
}
735+
},
736+
"Staking": {
737+
"address": "0x35e3Cb6B317690d662160d5d02A5b364578F62c9",
738+
"initArgs": [
739+
"0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B",
740+
"100000000000000000000000",
741+
"6646",
742+
"10000",
743+
"100000",
744+
"2",
745+
"4",
746+
"12",
747+
"16",
748+
"77",
749+
"100"
750+
],
751+
"creationCodeHash": "0x25a7b6cafcebb062169bc25fca9bcce8f23bd7411235859229ae3cc99b9a7d58",
752+
"runtimeCodeHash": "0xaf2d63813a0e5059f63ec46e1b280eb9d129d5ad548f0cdd1649d9798fde10b6",
753+
"txHash": "0x1960be49029284756037cf3ee8afe9eeaba93de4ba84875c5eefd5d2289903bd",
754+
"proxy": true,
755+
"implementation": {
756+
"address": "0x16e64AA72De0f3BDa30d3D324E967BDecb7c826a",
757+
"creationCodeHash": "0x6828025572bcf46c755088cd0b11329db6b249b0221140e93571799125255ae1",
758+
"runtimeCodeHash": "0x523492e8e808f27ac0240edc7359b760b1c17d0572a13e68799775b53c2a50ec",
759+
"txHash": "0x42ff9ce1b319bbdd8619cdd999b2c3c7c3aeacc5ac7a6eddcc1c3f0a2774f4a0",
760+
"libraries": {
761+
"LibCobbDouglas": "0x137e60D093F679B0fF9ad922EB14aCe0F4F443cf"
762+
}
763+
}
764+
},
765+
"RewardsManager": {
766+
"address": "0x1246D7c4c903fDd6147d581010BD194102aD4ee2",
767+
"initArgs": ["0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B", "1000000012184945188"],
768+
"creationCodeHash": "0x25a7b6cafcebb062169bc25fca9bcce8f23bd7411235859229ae3cc99b9a7d58",
769+
"runtimeCodeHash": "0xaf2d63813a0e5059f63ec46e1b280eb9d129d5ad548f0cdd1649d9798fde10b6",
770+
"txHash": "0x108efecde4422dacf6ec7a07884cab214ba0a441fc73a6ad82ceb5c73e1c9334",
771+
"proxy": true,
772+
"implementation": {
773+
"address": "0x8BE5c7B041662C042aDB8349D5588BB82366BEC0",
774+
"creationCodeHash": "0xfec6d35d9de8a7234e77484ee4fa5d6867697d607b591ed5a8e01679fa1f0394",
775+
"runtimeCodeHash": "0x4595f2b6c37d65ad1deed2497054b2319fb0c6419439e2e374b29a29aa9fcb81",
776+
"txHash": "0x31cd85ce9106900e49e9abf24fafad5493360096bd8486ddb2c42942b061bb56"
777+
}
778+
},
779+
"DisputeManager": {
780+
"address": "0x8c344366D9269174F10bB588F16945eb47f78dc9",
781+
"initArgs": [
782+
"0x48eD7AfbaB432d1Fc6Ea84EEC70E745d9DAcaF3B",
783+
"0xFD01aa87BeB04D0ac764FC298aCFd05FfC5439cD",
784+
"10000000000000000000000",
785+
"500000",
786+
"25000",
787+
"25000"
788+
],
789+
"creationCodeHash": "0x25a7b6cafcebb062169bc25fca9bcce8f23bd7411235859229ae3cc99b9a7d58",
790+
"runtimeCodeHash": "0xaf2d63813a0e5059f63ec46e1b280eb9d129d5ad548f0cdd1649d9798fde10b6",
791+
"txHash": "0xe93eba1bda0d262efabbc05d4e01b9ee197f22dd4f798e4c5fc5b1b9c137428e",
792+
"proxy": true,
793+
"implementation": {
794+
"address": "0x476F0b8e5F952f0740aD3b0cb50648a7496c8388",
795+
"creationCodeHash": "0x5b73c9b910d66426fd965ac3110e9debda1d81134c0354a7af8ec1f2ebd765f6",
796+
"runtimeCodeHash": "0xcaf3547f0d675a1e1d2f887cf4666410bc3b084e65ad283ed3f1ff2b1bccc113",
797+
"txHash": "0x6a90b5e2d5dcae2c94fe518ce7f6fb2ffc11e562b9feac6464dcb32e1e90c039"
798+
}
799+
},
800+
"AllocationExchange": {
801+
"address": "0x67FBea097202f46D601D7C937b5DBb615659aDF2",
802+
"constructorArgs": [
803+
"0x5c946740441C12510a167B447B7dE565C20b9E3C",
804+
"0x35e3Cb6B317690d662160d5d02A5b364578F62c9",
805+
"0xf1135bFF22512FF2A585b8d4489426CE660f204c",
806+
"0x52e498aE9B8A5eE2A5Cd26805F06A9f29A7F489F"
807+
],
808+
"creationCodeHash": "0x97714e1a80674ab0af90a10f2c7156cc92794ef81565fe9c7c35ecbe0025cc08",
809+
"runtimeCodeHash": "0x5c20792fefe71126668be8ab19ab26cdb8ab9a6f73efbfa1d90f91e26459fa67",
810+
"txHash": "0x87b35e5289792800832902206cf0ee4b9900e4d38089bd6634d10ea78729bf54"
811+
}
812+
},
624813
"1337": {
625814
"GraphProxyAdmin": {
626815
"address": "0x5b1869D9A4C187F2EAa108f3062412ecf0526b24",

config/graph.goerli.yml

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
general:
2+
arbitrator: &arbitrator "0xFD01aa87BeB04D0ac764FC298aCFd05FfC5439cD" # Arbitration Council
3+
governor: &governor "0xf1135bFF22512FF2A585b8d4489426CE660f204c" # Graph Council
4+
authority: &authority "0x52e498aE9B8A5eE2A5Cd26805F06A9f29A7F489F" # Authority that signs payment vouchers
5+
6+
contracts:
7+
Controller:
8+
calls:
9+
- fn: "setContractProxy"
10+
id: "0xe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f" # keccak256('Curation')
11+
contractAddress: "${{Curation.address}}"
12+
- fn: "setContractProxy"
13+
id: "0x39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea3" # keccak256('GNS')
14+
contractAddress: "${{GNS.address}}"
15+
- fn: "setContractProxy"
16+
id: "0xf942813d07d17b56de9a9afc8de0ced6e8c053bbfdcc87b7badea4ddcf27c307" # keccak256('DisputeManager')
17+
contractAddress: "${{DisputeManager.address}}"
18+
- fn: "setContractProxy"
19+
id: "0xc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f67063" # keccak256('EpochManager')
20+
contractAddress: "${{EpochManager.address}}"
21+
- fn: "setContractProxy"
22+
id: "0x966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c53180761" # keccak256('RewardsManager')
23+
contractAddress: "${{RewardsManager.address}}"
24+
- fn: "setContractProxy"
25+
id: "0x1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d167034" # keccak256('Staking')
26+
contractAddress: "${{Staking.address}}"
27+
- fn: "setContractProxy"
28+
id: "0x45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247" # keccak256('GraphToken')
29+
contractAddress: "${{GraphToken.address}}"
30+
ServiceRegistry:
31+
proxy: true
32+
init:
33+
controller: "${{Controller.address}}"
34+
EpochManager:
35+
proxy: true
36+
init:
37+
controller: "${{Controller.address}}"
38+
lengthInBlocks: 554 # length in hours = lengthInBlocks*13/60/60 (~13 second blocks)
39+
GraphToken:
40+
init:
41+
initialSupply: "10000000000000000000000000000" # in wei
42+
calls:
43+
- fn: "addMinter"
44+
minter: "${{RewardsManager.address}}"
45+
Curation:
46+
proxy: true
47+
init:
48+
controller: "${{Controller.address}}"
49+
bondingCurve: "${{BancorFormula.address}}"
50+
curationTokenMaster: "${{GraphCurationToken.address}}"
51+
reserveRatio: 500000 # in parts per million
52+
curationTaxPercentage: 10000 # in parts per million
53+
minimumCurationDeposit: "1000000000000000000" # in wei
54+
DisputeManager:
55+
proxy: true
56+
init:
57+
controller: "${{Controller.address}}"
58+
arbitrator: *arbitrator
59+
minimumDeposit: "10000000000000000000000" # in wei
60+
fishermanRewardPercentage: 500000 # in parts per million
61+
idxSlashingPercentage: 25000 # in parts per million
62+
qrySlashingPercentage: 25000 # in parts per million
63+
GNS:
64+
proxy: true
65+
init:
66+
controller: "${{Controller.address}}"
67+
bondingCurve: "${{BancorFormula.address}}"
68+
subgraphNFT: "${{SubgraphNFT.address}}"
69+
calls:
70+
- fn: "approveAll"
71+
SubgraphNFT:
72+
init:
73+
governor: "${{Env.deployer}}"
74+
calls:
75+
- fn: "setTokenDescriptor"
76+
tokenDescriptor: "${{SubgraphNFTDescriptor.address}}"
77+
- fn: "setMinter"
78+
minter: "${{GNS.address}}"
79+
Staking:
80+
proxy: true
81+
init:
82+
controller: "${{Controller.address}}"
83+
minimumIndexerStake: "100000000000000000000000" # in wei
84+
thawingPeriod: 6646 # in blocks
85+
protocolPercentage: 10000 # in parts per million
86+
curationPercentage: 100000 # in parts per million
87+
channelDisputeEpochs: 2 # in epochs
88+
maxAllocationEpochs: 4 # in epochs
89+
delegationUnbondingPeriod: 12 # in epochs
90+
delegationRatio: 16 # delegated stake to indexer stake multiplier
91+
rebateAlphaNumerator: 77 # rebateAlphaNumerator / rebateAlphaDenominator
92+
rebateAlphaDenominator: 100 # rebateAlphaNumerator / rebateAlphaDenominator
93+
calls:
94+
- fn: "setDelegationTaxPercentage"
95+
delegationTaxPercentage: 5000 # parts per million
96+
- fn: "setSlasher"
97+
slasher: "${{DisputeManager.address}}"
98+
allowed: true
99+
- fn: "setAssetHolder"
100+
assetHolder: "${{AllocationExchange.address}}"
101+
allowed: true
102+
RewardsManager:
103+
proxy: true
104+
init:
105+
controller: "${{Controller.address}}"
106+
issuanceRate: "1000000012184945188" # per block increase of total supply, blocks in a year = 365*60*60*24/13
107+
AllocationExchange:
108+
init:
109+
graphToken: "${{GraphToken.address}}"
110+
staking: "${{Staking.address}}"
111+
governor: *governor
112+
authority: *authority
113+
calls:
114+
- fn: "approveAll"

hardhat.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ interface NetworkConfig {
5858
const networkConfigs: NetworkConfig[] = [
5959
{ network: 'mainnet', chainId: 1 },
6060
{ network: 'rinkeby', chainId: 4 },
61+
{ network: 'goerli', chainId: 5 },
6162
{ network: 'kovan', chainId: 42 },
6263
]
6364

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@
8585
"deploy-ganache-manual": "yarn deploy -- --force --network ganache",
8686
"deploy-hardhat": "yarn deploy -- --force --network hardhat",
8787
"deploy-rinkeby": "yarn deploy -- --force --network rinkeby --graph-config config/graph.rinkeby.yml",
88+
"deploy-goerli": "yarn deploy -- --force --network goerli --graph-config config/graph.goerli.yml",
8889
"predeploy": "scripts/predeploy",
8990
"test": "scripts/test",
9091
"test:gas": "RUN_EVM=true REPORT_GAS=true scripts/test",

0 commit comments

Comments
 (0)