Skip to content

Commit f044cba

Browse files
authored
NET-801: remove dev/prod split from config (#268)
* refactor(config): rename ethereum dev chain to dev0 * refactor(config): rename streamr dev chain to dev1 * refactor(config): remove split between production and development * docs(config): update README * refactor(config): rename dev1 Token to DATA
1 parent eef0032 commit f044cba

File tree

4 files changed

+139
-205
lines changed

4 files changed

+139
-205
lines changed

packages/config/README.md

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -23,32 +23,18 @@ const {
2323
"DATA": dataTokenAddress
2424
}
2525
}
26-
} = config.Chains.load("production")
26+
} = config.Chains.load()
2727
```
2828

2929
Find RPC endpoints:
3030
```typescript
3131
import * as config from "@streamr/config"
3232

33-
const chains: config.Chains = config.Chains.load("production")
33+
const chains: config.Chains = config.Chains.load()
3434
const httpRpcEndpoints: RPCEndpoint[] = chains.ethereum.getRPCEndpointsByProtocol(config.RPCProtocol.HTTP)
3535
const wsRpcEndpoints: RPCEndpoint[] = chains.ethereum.getRPCEndpointsByProtocol(config.RPCProtocol.WEBSOCKET)
3636
```
3737

38-
You can also load configuration based on `$NODE_ENV` environment variable:
39-
```typescript
40-
import * as config from "@streamr/config"
41-
42-
const chains: Chains = config.Chains.loadFromNodeEnv()
43-
```
44-
45-
### Javascript
46-
Use in a Javascript project:
47-
```javascript
48-
const config = require("@streamr/config")
49-
const chains: config.Chains = config.Chains.loadFromNodeEnv()
50-
```
51-
5238
### Other Languages
5339
Other languages can read the [JSON file](./src/networks.json) directly.
5440

packages/config/src/index.ts

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -63,35 +63,17 @@ export class Chain implements ChainJSON {
6363
}
6464
}
6565

66-
export type Environment = "development" | "production"
67-
68-
type NetworksJSON = {
69-
readonly [env in Environment]: ChainsJSON
70-
}
71-
7266
interface ChainsJSON {
7367
readonly [name: string]: ChainJSON
7468
}
7569

7670
export class Chains implements ChainsJSON {
7771
[name: string]: Chain
78-
public static load(env: Environment): Chains {
79-
const networks: NetworksJSON = networksAsJSON
80-
const chainsJson: ChainsJSON = networks[env]
72+
public static load(): Chains {
73+
const chainsJson: ChainsJSON = networksAsJSON
8174
const chains: Chains = ChainsFactory.create(chainsJson)
8275
return chains
8376
}
84-
public static loadFromNodeEnv(): Chains {
85-
const nodeEnv = process.env.NODE_ENV
86-
if (nodeEnv === undefined) {
87-
throw new Error("NODE_ENV environment variable is not set")
88-
}
89-
if (nodeEnv !== "production" && nodeEnv !== "development") {
90-
throw new Error("NODE_ENV environment variable value must be either 'production' or 'development'")
91-
}
92-
const env: Environment = nodeEnv
93-
return Chains.load(env)
94-
}
9577
}
9678

9779
class ChainsFactory {

packages/config/src/networks.json

Lines changed: 128 additions & 132 deletions
Original file line numberDiff line numberDiff line change
@@ -1,143 +1,139 @@
11
{
2-
"development": {
3-
"ethereum": {
4-
"id": 8995,
5-
"rpcEndpoints": [
6-
{
7-
"url": "http://10.200.10.1:8545"
8-
},
9-
{
10-
"url": "ws://10.200.10.1:8545"
11-
}
12-
],
13-
"contracts": {
14-
"DATA": "0xbAA81A0179015bE47Ad439566374F2Bae098686F",
15-
"XDATA": "0x6d0F3bF9aD2455b4F62f22fFD21317e1E3eEFE5C",
16-
"Marketplace": "0xF1371c0f40528406dc4f4cAf89924eA9Da49E866",
17-
"UniswapAdapter": "0xE4eA76e830a659282368cA2e7E4d18C4AE52D8B3",
18-
"TrackerRegistry": "0xBFCF120a8fD17670536f1B27D9737B775b2FD4CF",
19-
"DataUnionFactory": "0x4bbcBeFBEC587f6C4AF9AF9B48847caEa1Fe81dA",
20-
"DataUnionTemplate": "0x7bFBAe10AE5b5eF45e2aC396E0E605F6658eF3Bc",
21-
"TokenMediator": "0xedD2aa644a6843F2e5133Fe3d6BD3F4080d97D9F",
22-
"AMB": "0xaFA0dc5Ad21796C9106a36D68f69aAD69994BB64",
23-
"ENS": "0x92E8435EB56fD01BF4C79B66d47AC1A94338BB03",
24-
"FIFSRegistrar": "0x57B81a9442805f88c4617B506206531e72d96290",
25-
"PublicResolver": "0xBc0c81a318D57ae54dA28DE69184A9c3aE9a1e1c",
26-
"core-api": "0xFCAd0B19bB29D4674531d6f115237E16AfCE377c",
27-
"Uniswap2Router": "0xeE1bC9a7BFF1fFD913f4c97B6177D47E804E1920",
28-
"MigrationManager": "0xc7aaf6c62e86a36395d8108fe95d5f758794c16c"
29-
}
30-
},
31-
"streamr": {
32-
"id": 8997,
33-
"rpcEndpoints": [
34-
{
35-
"url": "http://10.200.10.1:8546"
36-
},
37-
{
38-
"url": "ws://10.200.10.1:8546"
39-
}
40-
],
41-
"contracts": {
42-
"Marketplace": "0xa072C42CB167d68D4c1cA15d0e4d0bd93E74A80f",
43-
"Token": "0x73Be21733CC5D08e1a14Ea9a399fb27DB3BEf8fF",
44-
"Mediator": "0xedD2aa644a6843F2e5133Fe3d6BD3F4080d97D9F",
45-
"AMB": "0xaFA0dc5Ad21796C9106a36D68f69aAD69994BB64",
46-
"DataUnionFactory": "0x4A4c4759eb3b7ABee079f832850cD3D0dC48D927",
47-
"DataUnionTemplate": "0x36afc8c9283CC866b8EB6a61C6e6862a83cd6ee8",
48-
"UnichainDataUnionFactory": "0xd1FA6C06E1D838Bb989640A2C4b8a499FD0ab187",
49-
"UnichainDataUnionTemplate": "0xC2F87E37019e227F2Be5030aabBCc7eAF136e05c",
50-
"StorageNodeRegistry": "0x231b810D98702782963472e1D60a25496999E75D",
51-
"StreamRegistry": "0x6cCdd5d866ea766f6DF5965aA98DeCCD629ff222",
52-
"StreamStorageRegistry": "0xd04af489677001444280366Dd0885B03dAaDe71D",
53-
"Uniswap2Router": "0xdc5F6368cd31330adC259386e78604a5E29E9415"
2+
"dev0": {
3+
"id": 8995,
4+
"rpcEndpoints": [
5+
{
6+
"url": "http://10.200.10.1:8545"
7+
},
8+
{
9+
"url": "ws://10.200.10.1:8545"
5410
}
11+
],
12+
"contracts": {
13+
"DATA": "0xbAA81A0179015bE47Ad439566374F2Bae098686F",
14+
"XDATA": "0x6d0F3bF9aD2455b4F62f22fFD21317e1E3eEFE5C",
15+
"Marketplace": "0xF1371c0f40528406dc4f4cAf89924eA9Da49E866",
16+
"UniswapAdapter": "0xE4eA76e830a659282368cA2e7E4d18C4AE52D8B3",
17+
"TrackerRegistry": "0xBFCF120a8fD17670536f1B27D9737B775b2FD4CF",
18+
"DataUnionFactory": "0x4bbcBeFBEC587f6C4AF9AF9B48847caEa1Fe81dA",
19+
"DataUnionTemplate": "0x7bFBAe10AE5b5eF45e2aC396E0E605F6658eF3Bc",
20+
"TokenMediator": "0xedD2aa644a6843F2e5133Fe3d6BD3F4080d97D9F",
21+
"AMB": "0xaFA0dc5Ad21796C9106a36D68f69aAD69994BB64",
22+
"ENS": "0x92E8435EB56fD01BF4C79B66d47AC1A94338BB03",
23+
"FIFSRegistrar": "0x57B81a9442805f88c4617B506206531e72d96290",
24+
"PublicResolver": "0xBc0c81a318D57ae54dA28DE69184A9c3aE9a1e1c",
25+
"core-api": "0xFCAd0B19bB29D4674531d6f115237E16AfCE377c",
26+
"Uniswap2Router": "0xeE1bC9a7BFF1fFD913f4c97B6177D47E804E1920",
27+
"MigrationManager": "0xc7aaf6c62e86a36395d8108fe95d5f758794c16c"
5528
}
5629
},
57-
"production": {
58-
"ethereum": {
59-
"id": 1,
60-
"rpcEndpoints": [],
61-
"contracts": {
62-
"DATA": "0x8f693ca8D21b157107184d29D398A8D082b38b76",
63-
"XDATA": "0x0cf0ee63788a0849fe5297f3407f701e122cc023",
64-
"Marketplace": "0xdc8d23092b93f9bb7416f45dea36f55996f34867",
65-
"UniswapAdapter": "0xbe99db4ea1964ea9a9e80de41517901da6ef9307",
66-
"TrackerRegistry": "0xab9BEb0e8B106078c953CcAB4D6bF9142BeF854d",
67-
"DataUnionFactory": "0xE41439BF434F9CfBF0153f5231C205d4ae0C22e3",
68-
"DataUnionTemplate": "0x67352e3F7dBA907aF877020aE7E9450C0029C70c",
69-
"MediatorXDATA": "0x2eeeDdeECe91c9F4c5bA4C8E1d784A0234C6d015",
70-
"MediatorDATA": "0x29e572d45cC33D5a68DCc8f92bfc7ded0017Bc59",
71-
"AMB": "0x4C36d2919e407f0Cc2Ee3c993ccF8ac26d9CE64e",
72-
"ENS": "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",
73-
"core-api": "0xf3E5A65851C3779f468c9EcB32E6f25D9D68601a",
74-
"MigrationManager": "0xf32219E61c840300D1B35c939ed9E54a86163334"
30+
"dev1": {
31+
"id": 8997,
32+
"rpcEndpoints": [
33+
{
34+
"url": "http://10.200.10.1:8546"
35+
},
36+
{
37+
"url": "ws://10.200.10.1:8546"
7538
}
76-
},
77-
"gnosis": {
78-
"id": 100,
79-
"rpcEndpoints": [
80-
{
81-
"url": "https://rpc.gnosischain.com"
82-
},
83-
{
84-
"url": "wss://rpc.gnosischain.com/wss"
85-
}
86-
],
87-
"contracts": {
88-
"XDATA": "0xE4a2620edE1058D61BEe5F45F6414314fdf10548",
89-
"DATA": "0x256eb8a51f382650B2A1e946b8811953640ee47D",
90-
"MediatorXDATA": "0x7d55f9981d4E10A193314E001b96f72FCc901e40",
91-
"MediatorDATA": "0x53f3F44c434494da73EC44a6E8a8D091332bC2ce",
92-
"AMB": "0x75Df5AF045d91108662D8080fD1FEFAd6aA0bb59",
93-
"DataUnionFactory": "0xFCE1FBFAaE61861B011B379442c8eE1DC868ABd0",
94-
"DataUnionTemplate": "0xaCF9e8134047eDc671162D9404BF63a587435bAa",
95-
"UnichainDataUnionFactory": "0x82F1b8a9521933ecC41A9062f1eb597D0Ad6e12F",
96-
"UnichainDataUnionTemplate": "0xA7E64C07464DdC69dC1534C14c7c724E5807d42a",
97-
"StorageNodeRegistry": "0xC746847d7916623fb75849696f04827bbc34854f",
98-
"BinanceAdapterDATA": "0x193888692673b5dD46e6BC90bA8cBFeDa515c8C1",
99-
"BinanceAdapterXDATA": "0x0c1aF6edA561fbDA48E9A7B1Dd46D216F31A97cC",
100-
"MigrationManager": "0x29e572d45cC33D5a68DCc8f92bfc7ded0017Bc59"
39+
],
40+
"contracts": {
41+
"Marketplace": "0xa072C42CB167d68D4c1cA15d0e4d0bd93E74A80f",
42+
"DATA": "0x73Be21733CC5D08e1a14Ea9a399fb27DB3BEf8fF",
43+
"Mediator": "0xedD2aa644a6843F2e5133Fe3d6BD3F4080d97D9F",
44+
"AMB": "0xaFA0dc5Ad21796C9106a36D68f69aAD69994BB64",
45+
"DataUnionFactory": "0x4A4c4759eb3b7ABee079f832850cD3D0dC48D927",
46+
"DataUnionTemplate": "0x36afc8c9283CC866b8EB6a61C6e6862a83cd6ee8",
47+
"UnichainDataUnionFactory": "0xd1FA6C06E1D838Bb989640A2C4b8a499FD0ab187",
48+
"UnichainDataUnionTemplate": "0xC2F87E37019e227F2Be5030aabBCc7eAF136e05c",
49+
"StorageNodeRegistry": "0x231b810D98702782963472e1D60a25496999E75D",
50+
"StreamRegistry": "0x6cCdd5d866ea766f6DF5965aA98DeCCD629ff222",
51+
"StreamStorageRegistry": "0xd04af489677001444280366Dd0885B03dAaDe71D",
52+
"Uniswap2Router": "0xdc5F6368cd31330adC259386e78604a5E29E9415"
53+
}
54+
},
55+
"ethereum": {
56+
"id": 1,
57+
"rpcEndpoints": [],
58+
"contracts": {
59+
"DATA": "0x8f693ca8D21b157107184d29D398A8D082b38b76",
60+
"XDATA": "0x0cf0ee63788a0849fe5297f3407f701e122cc023",
61+
"Marketplace": "0xdc8d23092b93f9bb7416f45dea36f55996f34867",
62+
"UniswapAdapter": "0xbe99db4ea1964ea9a9e80de41517901da6ef9307",
63+
"TrackerRegistry": "0xab9BEb0e8B106078c953CcAB4D6bF9142BeF854d",
64+
"DataUnionFactory": "0xE41439BF434F9CfBF0153f5231C205d4ae0C22e3",
65+
"DataUnionTemplate": "0x67352e3F7dBA907aF877020aE7E9450C0029C70c",
66+
"MediatorXDATA": "0x2eeeDdeECe91c9F4c5bA4C8E1d784A0234C6d015",
67+
"MediatorDATA": "0x29e572d45cC33D5a68DCc8f92bfc7ded0017Bc59",
68+
"AMB": "0x4C36d2919e407f0Cc2Ee3c993ccF8ac26d9CE64e",
69+
"ENS": "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",
70+
"core-api": "0xf3E5A65851C3779f468c9EcB32E6f25D9D68601a",
71+
"MigrationManager": "0xf32219E61c840300D1B35c939ed9E54a86163334"
72+
}
73+
},
74+
"gnosis": {
75+
"id": 100,
76+
"rpcEndpoints": [
77+
{
78+
"url": "https://rpc.gnosischain.com"
79+
},
80+
{
81+
"url": "wss://rpc.gnosischain.com/wss"
10182
}
102-
},
103-
"binance": {
104-
"id": 56,
105-
"rpcEndpoints": [
106-
{
107-
"url": "https://bsc-dataseed.binance.org"
108-
},
109-
{
110-
"url": "wss://bsc-dataseed.binance.org"
111-
}
112-
],
113-
"contracts": {
114-
"DATA": "0x0864c156b3c5f69824564dec60c629ae6401bf2a",
115-
"xdaiBridge": "0xa93ee7b4a7215f7e725437a6b6d7a4e7fe1dd8f0"
83+
],
84+
"contracts": {
85+
"XDATA": "0xE4a2620edE1058D61BEe5F45F6414314fdf10548",
86+
"DATA": "0x256eb8a51f382650B2A1e946b8811953640ee47D",
87+
"MediatorXDATA": "0x7d55f9981d4E10A193314E001b96f72FCc901e40",
88+
"MediatorDATA": "0x53f3F44c434494da73EC44a6E8a8D091332bC2ce",
89+
"AMB": "0x75Df5AF045d91108662D8080fD1FEFAd6aA0bb59",
90+
"DataUnionFactory": "0xFCE1FBFAaE61861B011B379442c8eE1DC868ABd0",
91+
"DataUnionTemplate": "0xaCF9e8134047eDc671162D9404BF63a587435bAa",
92+
"UnichainDataUnionFactory": "0x82F1b8a9521933ecC41A9062f1eb597D0Ad6e12F",
93+
"UnichainDataUnionTemplate": "0xA7E64C07464DdC69dC1534C14c7c724E5807d42a",
94+
"StorageNodeRegistry": "0xC746847d7916623fb75849696f04827bbc34854f",
95+
"BinanceAdapterDATA": "0x193888692673b5dD46e6BC90bA8cBFeDa515c8C1",
96+
"BinanceAdapterXDATA": "0x0c1aF6edA561fbDA48E9A7B1Dd46D216F31A97cC",
97+
"MigrationManager": "0x29e572d45cC33D5a68DCc8f92bfc7ded0017Bc59"
98+
}
99+
},
100+
"binance": {
101+
"id": 56,
102+
"rpcEndpoints": [
103+
{
104+
"url": "https://bsc-dataseed.binance.org"
105+
},
106+
{
107+
"url": "wss://bsc-dataseed.binance.org"
116108
}
117-
},
118-
"polygon": {
119-
"id": 137,
120-
"rpcEndpoints": [
121-
{
122-
"url": "https://polygon-rpc.com"
123-
},
124-
{
125-
"url": "wss://polygon-rpc.com"
126-
}
127-
],
128-
"contracts": {
129-
"DATA": "0x3a9A81d576d83FF21f26f325066054540720fC34",
130-
"StorageNodeRegistry": "0x080F34fec2bc33928999Ea9e39ADc798bEF3E0d6",
131-
"ChainlinkOracle": "0x36BF71D0ba2e449fc14f9C4cF51468948E4ED27D",
132-
"ENSCache": "0x870528c1aDe8f5eB4676AA2d15FC0B034E276A1A",
133-
"UnichainDataUnionFactory": "0x3dBDf6C439FC2C90F98C351c90682A7cCe3366E5",
134-
"UnichainDataUnionTemplate": "0x6D73eDf9366c97ed12C78C41F02A9254e9184CB1",
135-
"Marketplace": "0x058FbB3Cf628EE51CE8864C9Ee8350f81E495A7D",
136-
"StreamRegistry": "0x0D483E10612F327FC11965Fc82E90dC19b141641",
137-
"StreamStorageRegistry": "0xe8e2660CeDf2a59C917a5ED05B72df4146b58399",
138-
"UniswapAdapter": "0xAd54A57383EcA2D4f0D22337A96A7c4f6Bd51A13",
139-
"Uniswap2Router": "0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff"
109+
],
110+
"contracts": {
111+
"DATA": "0x0864c156b3c5f69824564dec60c629ae6401bf2a",
112+
"xdaiBridge": "0xa93ee7b4a7215f7e725437a6b6d7a4e7fe1dd8f0"
113+
}
114+
},
115+
"polygon": {
116+
"id": 137,
117+
"rpcEndpoints": [
118+
{
119+
"url": "https://polygon-rpc.com"
120+
},
121+
{
122+
"url": "wss://polygon-rpc.com"
140123
}
124+
],
125+
"contracts": {
126+
"DATA": "0x3a9A81d576d83FF21f26f325066054540720fC34",
127+
"StorageNodeRegistry": "0x080F34fec2bc33928999Ea9e39ADc798bEF3E0d6",
128+
"ChainlinkOracle": "0x36BF71D0ba2e449fc14f9C4cF51468948E4ED27D",
129+
"ENSCache": "0x870528c1aDe8f5eB4676AA2d15FC0B034E276A1A",
130+
"UnichainDataUnionFactory": "0x3dBDf6C439FC2C90F98C351c90682A7cCe3366E5",
131+
"UnichainDataUnionTemplate": "0x6D73eDf9366c97ed12C78C41F02A9254e9184CB1",
132+
"Marketplace": "0x058FbB3Cf628EE51CE8864C9Ee8350f81E495A7D",
133+
"StreamRegistry": "0x0D483E10612F327FC11965Fc82E90dC19b141641",
134+
"StreamStorageRegistry": "0xe8e2660CeDf2a59C917a5ED05B72df4146b58399",
135+
"UniswapAdapter": "0xAd54A57383EcA2D4f0D22337A96A7c4f6Bd51A13",
136+
"Uniswap2Router": "0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff"
141137
}
142138
}
143139
}

0 commit comments

Comments
 (0)