Documentation
¶
Index ¶
Constants ¶
View Source
const (
EnvPrefix = "ROBOT"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BatchLimits ¶
type Config ¶
type Config struct {
LogLevel string `mapstructure:"logLevel" validate:"required"`
LogType string `mapstructure:"logType" validate:"required"`
ServerPort uint `mapstructure:"serverPort"`
ProfilePath string `mapstructure:"profilePath" validate:"required"`
UserName string `mapstructure:"userName" validate:"required"`
TxSwapPrefix string `mapstructure:"txSwapPrefix" validate:"required"`
TxMultiSwapPrefix string `mapstructure:"txMultiSwapPrefix" validate:"required"`
TxPreimagePrefix string `mapstructure:"txPreimagePrefix" validate:"required"`
DelayAfterChRobotError time.Duration `mapstructure:"delayAfterChRobotError"`
DefaultBatchLimits *BatchLimits `mapstructure:"defaultBatchLimits"`
RedisStorage *RedisStorage `mapstructure:"redisStor" validate:"required"`
PromMetrics *PromMetrics `mapstructure:"promMetrics"`
// can be local, vault, google
CryptoSrc CryptoSrc `mapstructure:"cryptoSrc" validate:"required"`
VaultCryptoSettings *VaultCryptoSettings `mapstructure:"vaultCryptoSettings"`
GoogleCryptoSettings *GoogleCryptoSettings `mapstructure:"googleCryptoSettings"`
DefaultRobotExecOpts ExecuteOptions `mapstructure:"defaultRobotExecOpts" validate:"dive"`
Robots []*Robot `mapstructure:"robots" validate:"dive"`
}
func (Config) WithoutSensitiveData ¶
WithoutSensitiveData returns copy of config with empty sensitive data. This config might be used for trace logging.
type ExecuteOptions ¶
func (ExecuteOptions) EffExecuteTimeout ¶
func (eo ExecuteOptions) EffExecuteTimeout(defOpts ExecuteOptions) (time.Duration, error)
type GoogleCryptoSettings ¶
type PromMetrics ¶
type PromMetrics struct {
PrefixForMetrics string `mapstructure:"prefix"`
}
type RedisStorage ¶
type Robot ¶
type Robot struct {
ChName string `mapstructure:"chName" validate:"required"`
InitMinExecBlockNum uint64 `mapstructure:"initExecBlockNum"`
SrcChannels []*SrcChannel `mapstructure:"src" validate:"dive"`
BatchLimits *BatchLimits `mapstructure:"batchLimits"`
CollectorsBufSize uint `mapstructure:"collectorsBufSize"`
ExecOpts ExecuteOptions `mapstructure:"execOpts" validate:"dive"`
}
type SrcChannel ¶
type VaultCryptoSettings ¶
type VaultCryptoSettings struct {
VaultToken string `mapstructure:"vaultToken"`
UseRenewableVaultTokens bool `mapstructure:"useRenewableVaultTokens"`
VaultAddress string `mapstructure:"vaultAddress"`
VaultAuthPath string `mapstructure:"vaultAuthPath"`
VaultRole string `mapstructure:"vaultRole"`
VaultServiceTokenPath string `mapstructure:"vaultServiceTokenPath"`
VaultNamespace string `mapstructure:"vaultNamespace"`
UserCert string `mapstructure:"userCert"`
}
Click to show internal directories.
Click to hide internal directories.