@@ -2,8 +2,10 @@ package cdk
22
33import (
44 _ "embed"
5+ "time"
56
67 "github.com/ethereum/go-ethereum/common"
8+ "github.com/ethereum/go-ethereum/ethclient"
79 "github.com/spf13/cobra"
810)
911
@@ -53,6 +55,7 @@ var rollupMonitorCmd = &cobra.Command{
5355}
5456
5557type RollupData struct {
58+ // from rollup manager sc
5659 RollupContract common.Address `json:"rollupContract"`
5760 ChainID uint64 `json:"chainID"`
5861 Verifier common.Address `json:"verifier"`
@@ -65,6 +68,15 @@ type RollupData struct {
6568 LastVerifiedBatchBeforeUpgrade uint64 `json:"lastVerifiedBatchBeforeUpgrade"`
6669 RollupTypeID uint64 `json:"rollupTypeID"`
6770 RollupCompatibilityID uint8 `json:"rollupCompatibilityID"`
71+
72+ // from rollup sc
73+ Admin common.Address `json:"admin"`
74+ GasTokenAddress common.Address `json:"gasTokenAddress"`
75+ GasTokenNetwork uint32 `json:"gasTokenNetwork"`
76+ LastAccInputHash common.Hash `json:"lastAccInputHash"`
77+ NetworkName string `json:"networkName"`
78+ TrustedSequencer common.Address `json:"trustedSequencer"`
79+ TrustedSequencerURL string `json:"trustedSequencerURL"`
6880}
6981
7082type RollupTypeData struct {
@@ -91,7 +103,7 @@ func rollupInspect(cmd *cobra.Command) error {
91103
92104 rpcClient := mustGetRPCClient (ctx , cdkArgs .rpcURL )
93105
94- rollupManagerArgs , err := cdkInputArgs .parseRollupManagerArgs (ctx , * cdkArgs )
106+ rollupManagerArgs , err := cdkInputArgs .parseRollupManagerArgs (ctx , cdkArgs )
95107 if err != nil {
96108 return err
97109 }
@@ -106,12 +118,12 @@ func rollupInspect(cmd *cobra.Command) error {
106118 return err
107119 }
108120
109- data , err := getRollupData (rollupManager , rollupArgs .rollupID )
121+ data , err := getRollupData (cdkArgs , rpcClient , rollupManager , rollupArgs .rollupID )
110122 if err != nil {
111123 return err
112124 }
113125
114- mustLogJSONIndent (data )
126+ mustPrintJSONIndent (data )
115127 return nil
116128}
117129
@@ -125,7 +137,7 @@ func rollupDump(cmd *cobra.Command) error {
125137
126138 rpcClient := mustGetRPCClient (ctx , cdkArgs .rpcURL )
127139
128- rollupManagerArgs , err := cdkInputArgs .parseRollupManagerArgs (ctx , * cdkArgs )
140+ rollupManagerArgs , err := cdkInputArgs .parseRollupManagerArgs (ctx , cdkArgs )
129141 if err != nil {
130142 return err
131143 }
@@ -142,17 +154,17 @@ func rollupDump(cmd *cobra.Command) error {
142154
143155 data := & RollupDumpData {}
144156
145- data .Data , err = getRollupData (rollupManager , rollupArgs .rollupID )
157+ data .Data , err = getRollupData (cdkArgs , rpcClient , rollupManager , rollupArgs .rollupID )
146158 if err != nil {
147159 return err
148160 }
149161
150- data .Type , err = getRollupType (rollupManager , data .Data .RollupTypeID )
162+ data .Type , err = getRollupTypeData (rollupManager , data .Data .RollupTypeID )
151163 if err != nil {
152164 return err
153165 }
154166
155- mustLogJSONIndent (data )
167+ mustPrintJSONIndent (data )
156168
157169 return nil
158170}
@@ -161,12 +173,59 @@ func rollupMonitor(cmd *cobra.Command) error {
161173 panic ("not implemented" )
162174}
163175
164- func getRollupData (rollupManager rollupManagerContractInterface , rollupID uint32 ) (* RollupData , error ) {
176+ func getRollupData (cdkArgs parsedCDKArgs , rpcClient * ethclient. Client , rollupManager rollupManagerContractInterface , rollupID uint32 ) (* RollupData , error ) {
165177 rollupData , err := rollupManager .RollupIDToRollupData (nil , rollupID )
166178 if err != nil {
167179 return nil , err
168180 }
169181
182+ rollup , err := getRollup (cdkArgs , rpcClient , rollupData .RollupContract )
183+ if err != nil {
184+ return nil , err
185+ }
186+
187+ admin , err := rollup .Admin (nil )
188+ if err != nil {
189+ return nil , err
190+ }
191+ time .Sleep (contractRequestInterval )
192+
193+ gasTokenAddress , err := rollup .GasTokenAddress (nil )
194+ if err != nil {
195+ return nil , err
196+ }
197+ time .Sleep (contractRequestInterval )
198+
199+ gasTokenNetwork , err := rollup .GasTokenNetwork (nil )
200+ if err != nil {
201+ return nil , err
202+ }
203+ time .Sleep (contractRequestInterval )
204+
205+ lastAccInputHash , err := rollup .LastAccInputHash (nil )
206+ if err != nil {
207+ return nil , err
208+ }
209+ time .Sleep (contractRequestInterval )
210+
211+ networkName , err := rollup .NetworkName (nil )
212+ if err != nil {
213+ return nil , err
214+ }
215+ time .Sleep (contractRequestInterval )
216+
217+ trustedSequencer , err := rollup .TrustedSequencer (nil )
218+ if err != nil {
219+ return nil , err
220+ }
221+ time .Sleep (contractRequestInterval )
222+
223+ trustedSequencerURL , err := rollup .TrustedSequencerURL (nil )
224+ if err != nil {
225+ return nil , err
226+ }
227+ time .Sleep (contractRequestInterval )
228+
170229 return & RollupData {
171230 RollupContract : rollupData .RollupContract ,
172231 ChainID : rollupData .ChainID ,
@@ -180,10 +239,18 @@ func getRollupData(rollupManager rollupManagerContractInterface, rollupID uint32
180239 LastVerifiedBatchBeforeUpgrade : rollupData .LastVerifiedBatchBeforeUpgrade ,
181240 RollupTypeID : rollupData .RollupTypeID ,
182241 RollupCompatibilityID : rollupData .RollupCompatibilityID ,
242+
243+ Admin : admin ,
244+ GasTokenAddress : gasTokenAddress ,
245+ GasTokenNetwork : gasTokenNetwork ,
246+ LastAccInputHash : lastAccInputHash ,
247+ NetworkName : networkName ,
248+ TrustedSequencer : trustedSequencer ,
249+ TrustedSequencerURL : trustedSequencerURL ,
183250 }, nil
184251}
185252
186- func getRollupType (rollupManager rollupManagerContractInterface , rollupTypeID uint64 ) (* RollupTypeData , error ) {
253+ func getRollupTypeData (rollupManager rollupManagerContractInterface , rollupTypeID uint64 ) (* RollupTypeData , error ) {
187254 rollupType , err := rollupManager .RollupTypeMap (nil , uint32 (rollupTypeID ))
188255 if err != nil {
189256 return nil , err
0 commit comments