1local2m = import 'baedeker-library/mixin/spec.libsonnet',3;45function(relay_spec)67local relay = {8 name: 'relay',9 bin: 'bin/polkadot',10 validatorIdAssignment: 'staking',11 spec: {Genesis:{12 chain: relay_spec,13 modify:: m.genericRelay($, hrmp = std.join([], [14 15 16 17 18 19 20 21 ])),22 }},23 nodes: {24 [name]: {25 bin: $.bin,26 wantedKeys: 'relay',27 extraArgs: [28 "-lxcm=trace"29 ],30 },31 for name in ['alice', 'bob', 'charlie', 'dave', 'eve', 'ferdie']32 },33};3435local quartz = {36 name: 'quartz',37 bin: 'bin/unique',38 paraId: 1001,39 spec: {Genesis:{40 modify:: m.genericPara($),41 }},42 nodes: {43 [name]: {44 bin: $.bin,45 wantedKeys: 'para',46 extraArgs: [47 "-lxcm=trace"48 ],49 },50 for name in ['alice', 'bob']51 },52};5354local karura = {55 name: 'karura',56 bin: 'bin/acala',57 paraId: 1002,58 spec: {Genesis:{59 chain: 'karura-dev',60 modify:: bdk.mixer([61 m.genericPara($),62 function(prev) prev {id+: '-local'},63 ]),64 }},65 nodes: {66 [name]: {67 bin: $.bin,68 wantedKeys: 'para',69 extraArgs: [70 "-lxcm=trace"71 ],72 },73 for name in ['alice', 'bob']74 },75};7677local moonriver = {78 name: 'moonriver',79 bin: 'bin/moonbeam',80 signatureSchema: 'Ethereum',81 paraId: 1003,82 spec: {Genesis:{83 chain: 'moonriver-local',84 specFilePrefix: 'moonriver-local-',85 modify:: m.genericPara($),86 }},87 nodes: {88 [name]: {89 bin: $.bin,90 wantedKeys: 'para-nimbus',91 extraArgs: [92 "-lxcm=trace"93 ],94 },95 for name in ['alith', 'baltathar']96 },97};9899local statemine = {100 name: 'statemine',101 bin: 'bin/cumulus',102 paraId: 1004,103 spec: {Genesis:{104 chain: 'statemine-local',105 modify:: m.genericPara($),106 }},107 nodes: {108 [name]: {109 bin: $.bin,110 wantedKeys: 'para',111 extraArgs: [112 "-lxcm=trace"113 ],114 },115 for name in ['alice', 'bob']116 },117};118119local shiden = {120 name: 'shiden',121 bin: 'bin/astar',122 paraId: 1005,123 spec: {Genesis:{124 chain: 'shiden-dev',125 modify:: m.genericPara($),126 }},127 nodes: {128 [name]: {129 bin: $.bin,130 wantedKeys: 'para',131 extraArgs: [132 "-lxcm=trace"133 ],134 },135 for name in ['alice', 'bob']136 },137};138139relay + {140 parachains: {141 [para.name]: para,142 for para in [quartz, karura, moonriver, statemine, shiden]143 },144}