config

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: May 4, 2021 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	GlobalFlags `mapstructure:",squash"`
	LocalFlags  `mapstructure:",squash"`
	FileConfig  *viper.Viper `mapstructure:"-" json:"-" yaml:"-" `
	// contains filtered or unexported fields
}

func New

func New() *Config

func (*Config) GetTargets

func (c *Config) GetTargets() (map[string]*TargetConfig, error)

func (*Config) Load

func (c *Config) Load() error

func (*Config) LogOutput

func (c *Config) LogOutput() io.Writer

func (*Config) SetLogger

func (c *Config) SetLogger()

type GlobalFlags

type GlobalFlags struct {
	CfgFile       string
	Address       []string      `mapstructure:"address,omitempty" json:"address,omitempty" yaml:"address,omitempty"`
	Username      string        `mapstructure:"username,omitempty" json:"username,omitempty" yaml:"username,omitempty"`
	Password      string        `mapstructure:"password,omitempty" json:"password,omitempty" yaml:"password,omitempty"`
	Port          string        `mapstructure:"port,omitempty" json:"port,omitempty" yaml:"port,omitempty"`
	Encoding      string        `mapstructure:"encoding,omitempty" json:"encoding,omitempty" yaml:"encoding,omitempty"`
	Insecure      bool          `mapstructure:"insecure,omitempty" json:"insecure,omitempty" yaml:"insecure,omitempty"`
	TLSCa         string        `mapstructure:"tls-ca,omitempty" json:"tls-ca,omitempty" yaml:"tls-ca,omitempty"`
	TLSCert       string        `mapstructure:"tls-cert,omitempty" json:"tls-cert,omitempty" yaml:"tls-cert,omitempty"`
	TLSKey        string        `mapstructure:"tls-key,omitempty" json:"tls-key,omitempty" yaml:"tls-key,omitempty"`
	TLSMinVersion string        `mapstructure:"tls-min-version,omitempty" json:"tls-min-version,omitempty" yaml:"tls-min-version,omitempty"`
	TLSMaxVersion string        `mapstructure:"tls-max-version,omitempty" json:"tls-max-version,omitempty" yaml:"tls-max-version,omitempty"`
	TLSVersion    string        `mapstructure:"tls-version,omitempty" json:"tls-version,omitempty" yaml:"tls-version,omitempty"`
	Timeout       time.Duration `mapstructure:"timeout,omitempty" json:"timeout,omitempty" yaml:"timeout,omitempty"`
	Debug         bool          `mapstructure:"debug,omitempty" json:"debug,omitempty" yaml:"debug,omitempty"`
	SkipVerify    bool          `mapstructure:"skip-verify,omitempty" json:"skip-verify,omitempty" yaml:"skip-verify,omitempty"`
	ProxyFromEnv  bool          `mapstructure:"proxy-from-env,omitempty" json:"proxy-from-env,omitempty" yaml:"proxy-from-env,omitempty"`
	PrintRequest  bool          `mapstructure:"print-request,omitempty" json:"print-request,omitempty" yaml:"print-request,omitempty"`
	Gzip          bool          `mapstructure:"gzip,omitempty" json:"gzip,omitempty" yaml:"gzip,omitempty"`
}

type LocalFlags

type LocalFlags struct {
	// tree
	TreeFlat    bool
	TreeDetails bool
	// Cert
	CertCA    string
	CertCAKey string
	// Cert CreateCA
	CertCreateCaOrg           string
	CertCreateCaOrgUnit       string
	CertCreateCaCountry       string
	CertCreateCaState         string
	CertCreateCaLocality      string
	CertCreateCaStreetAddress string
	CertCreateCaPostalCode    string
	CertCreateCaValidity      time.Duration
	CertCreateCaKeySize       int
	CertCreateCaEmailID       string
	CertCreateCaCommonName    string
	// Cert Rotate
	CertRotateCertificateID   string
	CertRotateKeyType         string
	CertRotateCertificateType string
	CertRotateMinKeySize      uint32
	CertRotateCommonName      string
	CertRotateCountry         string
	CertRotateState           string
	CertRotateCity            string
	CertRotateOrg             string
	CertRotateOrgUnit         string
	CertRotateIPAddress       string
	CertRotateEmailID         string
	CertRotateValidity        time.Duration
	CertRotatePrintCSR        bool
	// Cert Install
	CertInstallCertificateID   string
	CertInstallKeyType         string
	CertInstallCertificateType string
	CertInstallMinKeySize      uint32
	CertInstallCommonName      string
	CertInstallCountry         string
	CertInstallState           string
	CertInstallCity            string
	CertInstallOrg             string
	CertInstallOrgUnit         string
	CertInstallIPAddress       string
	CertInstallEmailID         string
	CertInstallValidity        time.Duration
	CertInstallPrintCSR        bool
	// Cert GenerateCSR
	CertGenerateCSRCertificateID   string
	CertGenerateCSRKeyType         string
	CertGenerateCSRCertificateType string
	CertGenerateCSRMinKeySize      uint32
	CertGenerateCSRCommonName      string
	CertGenerateCSRCountry         string
	CertGenerateCSRState           string
	CertGenerateCSRCity            string
	CertGenerateCSROrg             string
	CertGenerateCSROrgUnit         string
	CertGenerateCSRIPAddress       string
	CertGenerateCSREmailID         string
	// Cert CanGenerateCSR
	CertCanGenerateCSRKeyType         string
	CertCanGenerateCSRCertificateType string
	CertCanGenerateCSRKeySize         uint32
	// Cert LoadCertificate
	CertLoadCertificateCertificateID   string
	CertLoadCertificateCertificateType string
	CertLoadCertificatePrivateKey      string
	CertLoadCertificatePublicKey       string
	CertLoadCertificateCaCertificates  []string
	// Cert LoadCertificateCanBundle
	CertLoadCertificateCaBundleCaCertificates []string
	// Cert RevokeCertificate
	CertRevokeCertificatesCertificateID []string
	CertRevokeCertificatesAll           bool
	// Cert GetCertificates
	CertGetCertificatesDetails bool
	// File
	// File Get
	FileGetFile         string
	FileGetLocalFile    string
	FileGetTargetPrefix bool
	// File Stat
	FileStatFile string
	// File Put
	FilePutFile        string
	FilePutRemoteFile  string
	FilePutPermissions uint32
	FilePutWriteSize   uint64
	FilePutHashMethod  string
	// File Remove
	FileRemoveFile string
	// System
	// System Ping
	SystemPingDestination   string
	SystemPingSource        string
	SystemPingCount         int32
	SystemPingInterval      time.Duration
	SystemPingWait          time.Duration
	SystemPingSize          int32
	SystemPingDoNotFragment bool
	SystemPingDoNotResolve  bool
	SystemPingProtocol      string
	// System Traceroute
	SystemTracerouteDestination   string
	SystemTracerouteSource        string
	SystemTracerouteInterval      time.Duration
	SystemTracerouteWait          time.Duration
	SystemTracerouteInitialTTL    uint32
	SystemTracerouteMaxTTL        int32
	SystemTracerouteSize          int32
	SystemTracerouteDoNotFragment bool
	SystemTracerouteDoNotResolve  bool
	SystemTracerouteL3Protocol    string
	SystemTracerouteL4Protocol    string
}

type TargetConfig

type TargetConfig struct {
	Address       string
	Insecure      *bool
	SkipVerify    *bool
	Username      *string
	Password      *string
	Timeout       time.Duration
	TLSCert       *string
	TLSKey        *string
	TLSCA         *string
	TLSMinVersion string
	TLSMaxVersion string
	TLSVersion    string
	//
	Gzip *bool
}

func (*TargetConfig) DialOpts

func (tc *TargetConfig) DialOpts() ([]grpc.DialOption, error)

Jump to

Keyboard shortcuts

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