@@ -2,9 +2,9 @@ package blockchain
22
33import (
44 "context"
5+ "encoding/json"
56 "fmt"
67 "github.com/docker/docker/api/types/container"
7- "github.com/docker/go-connections/nat"
88 "github.com/smartcontractkit/chainlink-testing-framework/framework"
99 "os"
1010 "time"
@@ -13,30 +13,30 @@ import (
1313 "github.com/testcontainers/testcontainers-go/wait"
1414)
1515
16+ type Accounts struct {
17+ HDPath string `json:"hdPath"`
18+ Mnemonic string `json:"mnemonic"`
19+ PrivateKeys []string `json:"privateKeys"`
20+ More []string `json:"more"`
21+ }
22+
1623const (
1724 AccountsFile = `{
18- "hdPath": "m/44'/195'/0'/0/",
19- "mnemonic": "resemble birth wool happy sun burger fatal trumpet globe purity health ritual",
20- "privateKeys": [
21- "cf36898af3c63e13537063ae165ec8262fafac188f09200647b4b76b6f212b90",
22- "7d5110f81cc6b2c65a532066e81fe813edf781e24f4e0fa42d22a3003dae7a54",
23- "ae0de6fb5450622bfc96ec0c25a8a5cb85256d1f9d6cbbe5fd9de073d22f0060",
24- "e972c3c213f8ba8cfe9a75e5d0b48310f4e35715f70986edd1eade904dd03437",
25- "23d81a4d6c85661b58922e68db09cca0ebe77c787beb0e12c8d29da111568855"
26- ],
27- "more": [
28- {
29- "hdPath": "m/44'/195'/0'/0/",
30- "mnemonic": "resemble birth wool happy sun burger fatal trumpet globe purity health ritual",
31- "privateKeys": [
32- "cf36898af3c63e13537063ae165ec8262fafac188f09200647b4b76b6f212b90",
33- "7d5110f81cc6b2c65a532066e81fe813edf781e24f4e0fa42d22a3003dae7a54",
34- "ae0de6fb5450622bfc96ec0c25a8a5cb85256d1f9d6cbbe5fd9de073d22f0060",
35- "e972c3c213f8ba8cfe9a75e5d0b48310f4e35715f70986edd1eade904dd03437",
36- "23d81a4d6c85661b58922e68db09cca0ebe77c787beb0e12c8d29da111568855"
37- ]
38- }
39- ]
25+ "hdPath": "m/44'/195'/0'/0/",
26+ "mnemonic": "resemble birth wool happy sun burger fatal trumpet globe purity health ritual",
27+ "privateKeys": [
28+ "932a39242805a1b1095638027f26af9664d1d5bf8ab3b7527ee75e7efb2946dd",
29+ "1c17c9c049d36cde7e5ea99df6c86e0474b04f0e258ab619a1e674f397a17152",
30+ "458130a239671674746582184711a6f8d633355df1a491b9f3b323576134c2e9",
31+ "2676fd1427968e07feaa9aff967d4ba7607c5497c499968c098d0517cd75cfbb",
32+ "d26b24a691ff2b03ee6ab65bf164def216f73574996b9ca6299c43a9a63767ac",
33+ "55df6adf3d081944dbe4688205d94f236fb4427ac44f3a286a96d47db0860667",
34+ "8a9a60ddd722a40753c2a38edd6b6fa38e806d681c9b08a520ba4912e62b6458",
35+ "75eb182fb623acf5e53d9885c4e8578f2530533a96c753481cc4277ecc6022de",
36+ "6c4b22b1d9d68ef7a8ecd151cd4ffdd4ecc2a7b3a3f8a9f9f9bbdbcef6671f10",
37+ "e578d66453cb41b6c923b9caa91c375a0545eeb171ccafc60b46fa834ce5c200"
38+ ],
39+ "more": []
4040 }
4141 `
4242 DefaultTronPort = "9090"
@@ -45,7 +45,7 @@ const (
4545
4646func defaultTron (in * Input ) {
4747 if in .Image == "" {
48- in .Image = "trontools/quickstart:2.1.1 "
48+ in .Image = "tronbox/tre "
4949 }
5050 if in .Port == "" {
5151 in .Port = DefaultTronPort
@@ -63,7 +63,29 @@ func newTron(in *Input) (*Output, error) {
6363 if err != nil {
6464 return nil , err
6565 }
66- _ , err = accounts .WriteString (AccountsFile )
66+ accountsData , err := json .Marshal (Accounts {
67+ HDPath : "m/44'/195'/0'/0/" ,
68+ Mnemonic : "resemble birth wool happy sun burger fatal trumpet globe purity health ritual" ,
69+ PrivateKeys : []string {
70+ "932a39242805a1b1095638027f26af9664d1d5bf8ab3b7527ee75e7efb2946dd" ,
71+ "1c17c9c049d36cde7e5ea99df6c86e0474b04f0e258ab619a1e674f397a17152" ,
72+ "458130a239671674746582184711a6f8d633355df1a491b9f3b323576134c2e9" ,
73+ "2676fd1427968e07feaa9aff967d4ba7607c5497c499968c098d0517cd75cfbb" ,
74+ "d26b24a691ff2b03ee6ab65bf164def216f73574996b9ca6299c43a9a63767ac" ,
75+ "55df6adf3d081944dbe4688205d94f236fb4427ac44f3a286a96d47db0860667" ,
76+ "8a9a60ddd722a40753c2a38edd6b6fa38e806d681c9b08a520ba4912e62b6458" ,
77+ "75eb182fb623acf5e53d9885c4e8578f2530533a96c753481cc4277ecc6022de" ,
78+ "6c4b22b1d9d68ef7a8ecd151cd4ffdd4ecc2a7b3a3f8a9f9f9bbdbcef6671f10" ,
79+ "e578d66453cb41b6c923b9caa91c375a0545eeb171ccafc60b46fa834ce5c200" ,
80+ },
81+ // should not be empty, otherwise TRE will panic
82+ More : []string {},
83+ })
84+ if err != nil {
85+ return nil , err
86+ }
87+
88+ _ , err = accounts .WriteString (string (accountsData ))
6789 if err != nil {
6890 return nil , err
6991 }
@@ -72,19 +94,16 @@ func newTron(in *Input) (*Output, error) {
7294 AlwaysPullImage : in .PullImage ,
7395 Image : in .Image ,
7496 Name : containerName ,
75- ExposedPorts : []string {bindPort , "18190/tcp" , "18191/tcp" },
97+ ExposedPorts : []string {bindPort },
7698 Networks : []string {framework .DefaultNetworkName },
7799 NetworkAliases : map [string ][]string {
78100 framework .DefaultNetworkName : {containerName },
79101 },
80- Env : map [string ]string {
81- "accounts" : "10" ,
82- },
83102 Labels : framework .DefaultTCLabels (),
84103 HostConfigModifier : func (h * container.HostConfig ) {
85- h .PortBindings = framework .MapTheSamePort (bindPort , "18190/tcp" , "19191/tcp" )
104+ h .PortBindings = framework .MapTheSamePort (bindPort )
86105 },
87- WaitingFor : wait .ForListeningPort ( nat . Port ( in . Port )). WithStartupTimeout ( 60 * time .Second ). WithPollInterval ( 200 * time .Millisecond ),
106+ WaitingFor : wait .ForLog ( "Mnemonic" ). WithPollInterval ( 200 * time .Millisecond ). WithStartupTimeout ( 1 * time .Minute ),
88107 Files : []testcontainers.ContainerFile {
89108 {
90109 HostFilePath : accounts .Name (),
0 commit comments