Skip to content

Commit 2eca3d1

Browse files
committed
extract into standalone
1 parent 56b5321 commit 2eca3d1

File tree

4 files changed

+968
-3
lines changed

4 files changed

+968
-3
lines changed

apps/evm/main.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ func main() {
2828
cmd.InitCmd(),
2929
cmd.RunCmd,
3030
cmd.NewRollbackCmd(),
31-
cmd.NewCleanupGoHeaderCmd(),
3231
rollcmd.VersionCmd,
3332
rollcmd.NetInfoCmd,
3433
rollcmd.StoreUnsafeCleanCmd,
Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,54 @@
1-
package cmd
1+
package main
22

33
import (
44
"context"
55
"fmt"
6+
"os"
67

78
ds "github.com/ipfs/go-datastore"
89
dsq "github.com/ipfs/go-datastore/query"
910
"github.com/spf13/cobra"
1011

1112
rollcmd "github.com/evstack/ev-node/pkg/cmd"
13+
"github.com/evstack/ev-node/pkg/config"
1214
"github.com/evstack/ev-node/pkg/store"
1315
)
1416

17+
const evmDbName = "evm-single"
18+
1519
const (
1620
// go-header store prefixes used prior to the unified store migration
1721
headerSyncPrefix = "/headerSync"
1822
dataSyncPrefix = "/dataSync"
1923
)
2024

25+
func main() {
26+
// Initiate the root command
27+
rootCmd := &cobra.Command{
28+
Use: "db-cleaner",
29+
}
30+
31+
config.AddGlobalFlags(rootCmd, "evm")
32+
33+
rootCmd.AddCommand(
34+
NewCleanupGoHeaderCmd(),
35+
)
36+
37+
if err := rootCmd.Execute(); err != nil {
38+
// Print to stderr and exit with error
39+
fmt.Fprintln(os.Stderr, err)
40+
os.Exit(1)
41+
}
42+
}
43+
2144
// NewCleanupGoHeaderCmd creates a command to delete the legacy go-header store data.
2245
// This data is no longer needed after the migration to the unified store approach
2346
// where HeaderStoreAdapter and DataStoreAdapter read directly from the ev-node store.
2447
func NewCleanupGoHeaderCmd() *cobra.Command {
2548
var dryRun bool
2649

2750
cmd := &cobra.Command{
28-
Use: "cleanup-goheader",
51+
Use: "clean-evm",
2952
Short: "Delete legacy go-header store data from disk",
3053
Long: `Delete the legacy go-header store data (headerSync and dataSync prefixes) from the database.
3154

tools/db-cleaner/go.mod

Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
module github.com/evstack/ev-node/tools/db-cleaner
2+
3+
go 1.25.6
4+
5+
require (
6+
github.com/evstack/ev-node v1.0.0-rc.3
7+
github.com/ipfs/go-datastore v0.9.0
8+
github.com/spf13/cobra v1.10.2
9+
)
10+
11+
require (
12+
connectrpc.com/connect v1.19.1 // indirect
13+
connectrpc.com/grpcreflect v1.3.0 // indirect
14+
github.com/armon/go-metrics v0.4.1 // indirect
15+
github.com/benbjohnson/clock v1.3.5 // indirect
16+
github.com/beorn7/perks v1.0.1 // indirect
17+
github.com/boltdb/bolt v1.3.1 // indirect
18+
github.com/celestiaorg/go-header v0.8.1 // indirect
19+
github.com/celestiaorg/go-libp2p-messenger v0.2.2 // indirect
20+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 // indirect
21+
github.com/celestiaorg/go-square/v3 v3.0.2 // indirect
22+
github.com/celestiaorg/nmt v0.24.2 // indirect
23+
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
24+
github.com/cespare/xxhash/v2 v2.3.0 // indirect
25+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
26+
github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect
27+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect
28+
github.com/dgraph-io/badger/v4 v4.5.1 // indirect
29+
github.com/dgraph-io/ristretto/v2 v2.1.0 // indirect
30+
github.com/dunglas/httpsfv v1.1.0 // indirect
31+
github.com/dustin/go-humanize v1.0.1 // indirect
32+
github.com/evstack/ev-node/core v1.0.0-rc.1 // indirect
33+
github.com/fatih/color v1.18.0 // indirect
34+
github.com/filecoin-project/go-clock v0.1.0 // indirect
35+
github.com/filecoin-project/go-jsonrpc v0.10.0 // indirect
36+
github.com/flynn/noise v1.1.0 // indirect
37+
github.com/fsnotify/fsnotify v1.9.0 // indirect
38+
github.com/go-kit/kit v0.13.0 // indirect
39+
github.com/go-logr/logr v1.4.3 // indirect
40+
github.com/go-logr/stdr v1.2.2 // indirect
41+
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
42+
github.com/goccy/go-yaml v1.19.2 // indirect
43+
github.com/gogo/protobuf v1.3.2 // indirect
44+
github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect
45+
github.com/google/flatbuffers v25.1.24+incompatible // indirect
46+
github.com/google/gopacket v1.1.19 // indirect
47+
github.com/google/uuid v1.6.0 // indirect
48+
github.com/gorilla/websocket v1.5.3 // indirect
49+
github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.7 // indirect
50+
github.com/hashicorp/go-hclog v1.6.2 // indirect
51+
github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
52+
github.com/hashicorp/go-metrics v0.5.4 // indirect
53+
github.com/hashicorp/go-msgpack v0.5.5 // indirect
54+
github.com/hashicorp/go-msgpack/v2 v2.1.2 // indirect
55+
github.com/hashicorp/golang-lru v1.0.2 // indirect
56+
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
57+
github.com/hashicorp/raft v1.7.3 // indirect
58+
github.com/hashicorp/raft-boltdb v0.0.0-20251103221153-05f9dd7a5148 // indirect
59+
github.com/huin/goupnp v1.3.0 // indirect
60+
github.com/inconshreveable/mousetrap v1.1.0 // indirect
61+
github.com/ipfs/boxo v0.35.2 // indirect
62+
github.com/ipfs/go-cid v0.6.0 // indirect
63+
github.com/ipfs/go-ds-badger4 v0.1.8 // indirect
64+
github.com/ipfs/go-log/v2 v2.9.1 // indirect
65+
github.com/ipld/go-ipld-prime v0.21.0 // indirect
66+
github.com/jackpal/go-nat-pmp v1.0.2 // indirect
67+
github.com/jbenet/go-temp-err-catcher v0.1.0 // indirect
68+
github.com/klauspost/compress v1.18.0 // indirect
69+
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
70+
github.com/koron/go-ssdp v0.0.6 // indirect
71+
github.com/libp2p/go-buffer-pool v0.1.0 // indirect
72+
github.com/libp2p/go-cidranger v1.1.0 // indirect
73+
github.com/libp2p/go-flow-metrics v0.3.0 // indirect
74+
github.com/libp2p/go-libp2p v0.47.0 // indirect
75+
github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect
76+
github.com/libp2p/go-libp2p-kad-dht v0.37.1 // indirect
77+
github.com/libp2p/go-libp2p-kbucket v0.8.0 // indirect
78+
github.com/libp2p/go-libp2p-pubsub v0.15.0 // indirect
79+
github.com/libp2p/go-libp2p-record v0.3.1 // indirect
80+
github.com/libp2p/go-libp2p-routing-helpers v0.7.5 // indirect
81+
github.com/libp2p/go-msgio v0.3.0 // indirect
82+
github.com/libp2p/go-netroute v0.4.0 // indirect
83+
github.com/libp2p/go-reuseport v0.4.0 // indirect
84+
github.com/libp2p/go-yamux/v5 v5.0.1 // indirect
85+
github.com/marten-seemann/tcp v0.0.0-20210406111302-dfbc87cc63fd // indirect
86+
github.com/mattn/go-colorable v0.1.14 // indirect
87+
github.com/mattn/go-isatty v0.0.20 // indirect
88+
github.com/miekg/dns v1.1.68 // indirect
89+
github.com/mikioh/tcpinfo v0.0.0-20190314235526-30a79bb1804b // indirect
90+
github.com/mikioh/tcpopt v0.0.0-20190314235656-172688c1accc // indirect
91+
github.com/minio/sha256-simd v1.0.1 // indirect
92+
github.com/mitchellh/mapstructure v1.5.0 // indirect
93+
github.com/mr-tron/base58 v1.2.0 // indirect
94+
github.com/multiformats/go-base32 v0.1.0 // indirect
95+
github.com/multiformats/go-base36 v0.2.0 // indirect
96+
github.com/multiformats/go-multiaddr v0.16.1 // indirect
97+
github.com/multiformats/go-multiaddr-dns v0.4.1 // indirect
98+
github.com/multiformats/go-multiaddr-fmt v0.1.0 // indirect
99+
github.com/multiformats/go-multibase v0.2.0 // indirect
100+
github.com/multiformats/go-multicodec v0.10.0 // indirect
101+
github.com/multiformats/go-multihash v0.2.3 // indirect
102+
github.com/multiformats/go-multistream v0.6.1 // indirect
103+
github.com/multiformats/go-varint v0.1.0 // indirect
104+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
105+
github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58 // indirect
106+
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
107+
github.com/pion/datachannel v1.5.10 // indirect
108+
github.com/pion/dtls/v2 v2.2.12 // indirect
109+
github.com/pion/dtls/v3 v3.0.6 // indirect
110+
github.com/pion/ice/v4 v4.0.10 // indirect
111+
github.com/pion/interceptor v0.1.40 // indirect
112+
github.com/pion/logging v0.2.3 // indirect
113+
github.com/pion/mdns/v2 v2.0.7 // indirect
114+
github.com/pion/randutil v0.1.0 // indirect
115+
github.com/pion/rtcp v1.2.15 // indirect
116+
github.com/pion/rtp v1.8.19 // indirect
117+
github.com/pion/sctp v1.8.39 // indirect
118+
github.com/pion/sdp/v3 v3.0.13 // indirect
119+
github.com/pion/srtp/v3 v3.0.6 // indirect
120+
github.com/pion/stun v0.6.1 // indirect
121+
github.com/pion/stun/v3 v3.0.0 // indirect
122+
github.com/pion/transport/v2 v2.2.10 // indirect
123+
github.com/pion/transport/v3 v3.0.7 // indirect
124+
github.com/pion/turn/v4 v4.0.2 // indirect
125+
github.com/pion/webrtc/v4 v4.1.2 // indirect
126+
github.com/pkg/errors v0.9.1 // indirect
127+
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
128+
github.com/polydawn/refmt v0.89.0 // indirect
129+
github.com/prometheus/client_golang v1.23.2 // indirect
130+
github.com/prometheus/client_model v0.6.2 // indirect
131+
github.com/prometheus/common v0.66.1 // indirect
132+
github.com/prometheus/procfs v0.17.0 // indirect
133+
github.com/quic-go/qpack v0.6.0 // indirect
134+
github.com/quic-go/quic-go v0.59.0 // indirect
135+
github.com/quic-go/webtransport-go v0.10.0 // indirect
136+
github.com/rs/zerolog v1.34.0 // indirect
137+
github.com/sagikazarmark/locafero v0.11.0 // indirect
138+
github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8 // indirect
139+
github.com/spaolacci/murmur3 v1.1.0 // indirect
140+
github.com/spf13/afero v1.15.0 // indirect
141+
github.com/spf13/cast v1.10.0 // indirect
142+
github.com/spf13/pflag v1.0.10 // indirect
143+
github.com/spf13/viper v1.21.0 // indirect
144+
github.com/stretchr/objx v0.5.2 // indirect
145+
github.com/stretchr/testify v1.11.1 // indirect
146+
github.com/subosito/gotenv v1.6.0 // indirect
147+
github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1 // indirect
148+
github.com/wlynxg/anet v0.0.5 // indirect
149+
go.opencensus.io v0.24.0 // indirect
150+
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
151+
go.opentelemetry.io/otel v1.40.0 // indirect
152+
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.40.0 // indirect
153+
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.40.0 // indirect
154+
go.opentelemetry.io/otel/metric v1.40.0 // indirect
155+
go.opentelemetry.io/otel/sdk v1.40.0 // indirect
156+
go.opentelemetry.io/otel/trace v1.40.0 // indirect
157+
go.opentelemetry.io/proto/otlp v1.9.0 // indirect
158+
go.uber.org/dig v1.19.0 // indirect
159+
go.uber.org/fx v1.24.0 // indirect
160+
go.uber.org/mock v0.5.2 // indirect
161+
go.uber.org/multierr v1.11.0 // indirect
162+
go.uber.org/zap v1.27.1 // indirect
163+
go.yaml.in/yaml/v2 v2.4.3 // indirect
164+
go.yaml.in/yaml/v3 v3.0.4 // indirect
165+
golang.org/x/crypto v0.47.0 // indirect
166+
golang.org/x/exp v0.0.0-20260112195511-716be5621a96 // indirect
167+
golang.org/x/mod v0.32.0 // indirect
168+
golang.org/x/net v0.49.0 // indirect
169+
golang.org/x/sync v0.19.0 // indirect
170+
golang.org/x/sys v0.40.0 // indirect
171+
golang.org/x/telemetry v0.0.0-20260109210033-bd525da824e2 // indirect
172+
golang.org/x/text v0.33.0 // indirect
173+
golang.org/x/time v0.12.0 // indirect
174+
golang.org/x/tools v0.41.0 // indirect
175+
golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect
176+
gonum.org/v1/gonum v0.17.0 // indirect
177+
google.golang.org/genproto/googleapis/api v0.0.0-20260128011058-8636f8732409 // indirect
178+
google.golang.org/genproto/googleapis/rpc v0.0.0-20260128011058-8636f8732409 // indirect
179+
google.golang.org/grpc v1.78.0 // indirect
180+
google.golang.org/protobuf v1.36.11 // indirect
181+
gopkg.in/yaml.v3 v3.0.1 // indirect
182+
lukechampine.com/blake3 v1.4.1 // indirect
183+
)

0 commit comments

Comments
 (0)