feat(cli): lotus state sectors --show-partitions + CSV (#12834)

* Add option to show partitions and deadlines.
* Print output in CSV
This commit is contained in:
Rod Vagg
2025-01-22 12:31:03 +11:00
committed by GitHub
parent d842b7ec16
commit 313cd2b11f
3 changed files with 25 additions and 2 deletions

View File

@ -18,6 +18,7 @@
- Refactored Ethereum API implementation into smaller, more manageable modules in a new `github.com/filecoin-project/lotus/node/impl/eth` package. ([filecoin-project/lotus#12796](https://github.com/filecoin-project/lotus/pull/12796))
- Generate the cli docs directly from the code instead compiling and executing binaries' `help` output. ([filecoin-project/lotus#12717](https://github.com/filecoin-project/lotus/pull/12717))
- Add `lotus-shed msg --gas-stats` to show summarised gas stats for a given message. ([filecoin-project/lotus#12817](https://github.com/filecoin-project/lotus/pull/12817))
- `lotus state sectors` now outputs CSV format and supports an optional `--show-partitions` to list sector deadlines and partitions. ([filecoin-project/lotus#12834](https://github.com/filecoin-project/lotus/pull/12834))
# UNRELEASED v.1.32.0

View File

@ -240,6 +240,12 @@ var StateSectorsCmd = &cli.Command{
Name: "sectors",
Usage: "Query the sector set of a miner",
ArgsUsage: "[minerAddress]",
Flags: []cli.Flag{
&cli.BoolFlag{
Name: "show-partitions",
Usage: "show sector deadlines and partitions",
},
},
Action: func(cctx *cli.Context) error {
api, closer, err := GetFullNodeAPI(cctx)
if err != nil {
@ -268,8 +274,23 @@ var StateSectorsCmd = &cli.Command{
return err
}
showPartitions := cctx.Bool("show-partitions")
header := "Sector Number, Sealed CID"
if showPartitions {
header = "Sector Number, Deadline, Partition, Sealed CID"
}
fmt.Println(header)
for _, s := range sectors {
fmt.Printf("%d: %s\n", s.SectorNumber, s.SealedCID)
if showPartitions {
sp, err := api.StateSectorPartition(ctx, maddr, s.SectorNumber, ts.Key())
if err != nil {
return err
}
fmt.Printf("%d, %d, %d, %s\n", s.SectorNumber, sp.Deadline, sp.Partition, s.SealedCID)
} else {
fmt.Printf("%d, %s\n", s.SectorNumber, s.SealedCID)
}
}
return nil

View File

@ -1353,7 +1353,8 @@ USAGE:
lotus state sectors [command options] [minerAddress]
OPTIONS:
--help, -h show help
--show-partitions show sector deadlines and partitions (default: false)
--help, -h show help
```
### lotus state active-sectors