infra

package
v0.0.0-...-2be76b0 Latest Latest
Warning

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

Go to latest
Published: Dec 5, 2024 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidConfig      = NewError("invalid configuration", 1)
	ErrProvisionFailed    = NewError("failed to provision resources", 2)
	ErrCleanupFailed      = NewError("failed to cleanup resources", 3)
	ErrMetricsUnavailable = NewError("metrics unavailable", 4)
)

Functions

This section is empty.

Types

type BaseProvider

type BaseProvider struct {
	// contains filtered or unexported fields
}

func NewBaseProvider

func NewBaseProvider(cfg *Config) *BaseProvider

func (*BaseProvider) GetConfig

func (p *BaseProvider) GetConfig() *Config

func (*BaseProvider) UpdateConfig

func (p *BaseProvider) UpdateConfig(cfg *Config) error

type Config

type Config struct {
	Timeout    time.Duration
	RetryCount int
	Tags       map[string]string

	// Baron Chain specific configurations
	QueueSize        int
	MaxConnections   int
	PersistInterval  uint64
	SnapshotInterval uint64
}

type Error

type Error struct {
	// contains filtered or unexported fields
}

func NewError

func NewError(msg string, code int) *Error

func (*Error) Code

func (e *Error) Code() int

func (*Error) Error

func (e *Error) Error() string

type NoopProvider

type NoopProvider struct {
	*BaseProvider
}

func NewNoopProvider

func NewNoopProvider(cfg *Config) *NoopProvider

func (*NoopProvider) GetMetrics

func (p *NoopProvider) GetMetrics(ctx context.Context) (*ResourceMetrics, error)

func (*NoopProvider) IsHealthy

func (p *NoopProvider) IsHealthy(ctx context.Context) bool

func (*NoopProvider) Setup

func (p *NoopProvider) Setup(ctx context.Context) error

func (*NoopProvider) Status

func (p *NoopProvider) Status(ctx context.Context) (Status, error)

func (*NoopProvider) Teardown

func (p *NoopProvider) Teardown(ctx context.Context) error

type Provider

type Provider interface {
	Setup(ctx context.Context) error
	Teardown(ctx context.Context) error
	Status(ctx context.Context) (Status, error)
	GetMetrics(ctx context.Context) (*ResourceMetrics, error)
	IsHealthy(ctx context.Context) bool
	GetConfig() *Config
	UpdateConfig(cfg *Config) error
}

type ResourceMetrics

type ResourceMetrics struct {
	CPUUsage    float64
	MemoryUsage float64
	DiskUsage   float64
	NetworkIn   int64
	NetworkOut  int64

	// Baron Chain specific metrics
	ActiveValidators int
	PendingTxs       int
	BlockHeight      int64
	ConsensusRound   int
	PeerCount        int
}

type Status

type Status string
const (
	StatusUnknown    Status = "unknown"
	StatusReady      Status = "ready"
	StatusError      Status = "error"
	StatusInProgress Status = "in_progress"
)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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