centralized-sequencer

command module
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 18, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

README

Centralized Sequencer

centralized-sequencer is an implementation of the Generic Sequencer interface for modular blockchains. It runs a gRPC service, which can be used by rollup clients to sequence transactions to Celestia da.

build-and-test golangci-lint Go Report Card codecov GoDoc

Minimum requirements

Requirement Notes
Go version 1.22 or higher

Installation

git clone https://github.com/rollkit/centralized-sequencer.git
cd centralized-sequencer
make build
./build/centralized-sequencer -h

Usage

centralized-sequencer exposes a gRPC service that can be used with any gRPC client to sequence rollup transactions to the celestia network.

Example

Run centralized-sequencer by specifying DA network details:

    ./build/centralized-sequencer -da_address <da_address> -da_auth_token <da_auth_token> -da_namespace $(openssl rand -hex 10)

Flags

Flag Usage Default
batch-time time in seconds to wait before generating a new batch 2 seconds
da_address DA address http:////localhost:26658
da_auth_token auth token for the DA ""
da_namespace DA namespace where the sequencer submits transactions ""
host centralized sequencer host localhost
port centralized sequencer port 50051
listen-all listen on all network interfaces (0.0.0.0) instead of just localhost disabled

See ./build/centralized-sequencer --help for details.

Tools
  1. Install golangci-lint
  2. Install markdownlint
  3. Install hadolint
  4. Install yamllint

Helpful commands

# Print centralized-sequencer commands
centralized-sequencer --help

# Run unit tests
make test-unit

# Run all tests including integration tests
make test

# Run linters (requires golangci-lint, markdownlint, hadolint, and yamllint)
make lint

Contributing

We welcome your contributions! Everyone is welcome to contribute, whether it's in the form of code, documentation, bug reports, feature requests, or anything else.

If you're looking for issues to work on, try looking at the good first issue list. Issues with this tag are suitable for a new external contributor and is a great way to find something you can help with!

Please join our Community Discord to ask questions, discuss your ideas, and connect with other contributors.

Code of Conduct

See our Code of Conduct here.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL