config

package
v0.0.0-...-a12d4bf Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2023 License: Apache-2.0 Imports: 15 Imported by: 0

README

REDFISH PLUGIN CONFIG VARIABLES

Variables Type Subcategory Subcategory Type Description
RootServiceUUID string Static uuid used for plugin root service
PluginConf ID string Identifier used by ODIMRA for identifying the plugin
PluginConf Host string plugin host address for ODIMRA to contact plugin
PluginConf Port string plugin port for ODIMRA to contact plugin
PluginConf UserName string plugin user name for ODIMRA to interact with plugin
PluginConf Password string plugin password for ODIMRA to interact with plugin
EventConf DestinationURI string URI that will be posted on the resource as destination for events
EventConf ListenerHost string Host address that will be posted on the resource as destination for events
EventConf ListenerPort string Host address port that will be posted on the resource as destination for events
KeyCertCon RootCACertificatePath string TLS root certificate
KeyCertCon PrivateKeyPath string Plugin private key path for ODIMRA and plugin interaction
KeyCertCon CertificatePath string Plugin certificate path for ODIMRA and plugin interaction
FirmwareVersion string version information of the plugin
SessionTimeoutInMinutes integer Plugin session time out in minutes
LoadBalancerConf LBHost string Load Balancer host address for plugin
LoadBalancerConf LBPort string Load Balancer host address port for plugin
MessageBusConf MessageQueueConfigFilePath string
MessageBusConf MessageBusType string This holds information Event Message Bus Type
MessageBusConf MessageBusQueue list of strings This holds name of all message bus Queues
URLTranslation collection This holds the north bound and south bound urls
URLTranslation NorthBoundURL.ODIM collection of strings This the north bound urls
URLTranslation SouthBoundURL.redfish collection of strings This holds the south bound urls
TLSConf MinVersion string Minimum TLS version
TLSConf MaxVersion string Maximum TLS version
TLSConf VerifyPeer boolean If server validation is required
TLSConf PreferredCipherSuites list of string Preferred list of cipher suites

Documentation

Overview

Package config ...

Package config ...

Index

Constants

View Source
const (
	// DefaultDBProtocol - default Protocol value
	DefaultDBProtocol = "tcp"
	// DefaultDBPoolSize - default PoolSize value
	DefaultDBPoolSize = 120
	// DefaultDBMinIdleConns - default MinIdleConns value
	DefaultDBMinIdleConns = 10
)

Variables

View Source
var AllowedMessageBusTypes = map[string]bool{
	"Kafka": true,
}

AllowedMessageBusTypes is for checking for message types are allowed

View Source
var Data configModel

Data will have the configuration data from config file

Functions

func GetPublicKey

func GetPublicKey() []byte

GetPublicKey provides the public key configured in MockConfig

func GetRandomPort

func GetRandomPort() string

GetRandomPort provides a random port between a range

func SetConfiguration

func SetConfiguration() error

SetConfiguration will extract the config data from file

func SetUpMockConfig

func SetUpMockConfig(t *testing.T) error

SetUpMockConfig set ups a mock ration for unit testing

func ValidateConfiguration

func ValidateConfiguration() error

ValidateConfiguration will validate configurations read and assign default values, where required

Types

type APICConf

type APICConf struct {
	APICHost   string            `json:"APICHost"`
	UserName   string            `json:"UserName"`
	Password   string            `json:"Password"`
	DomainData map[string]string `json:"DomainData"`
}

APICConf is for holding all the cisco APIC related configurations

type DBConf

type DBConf struct {
	Protocol                     string `json:"Protocol"`
	SentinelHost                 string `json:"SentinelHost"`
	Host                         string `json:"Host"`
	Port                         string `json:"Port"`
	MinIdleConns                 int    `json:"MinIdleConns"`
	PoolSize                     int    `json:"PoolSize"`
	RedisHAEnabled               bool   `json:"RedisHAEnabled"`
	SentinelPort                 string `json:"SentinelPort"`
	MasterSet                    string `json:"MasterSet"`
	RedisOnDiskEncryptedPassword string `json:"RedisOnDiskEncryptedPassword"`
	RedisOnDiskPassword          []byte
}

DBConf holds all DB related configurations

type EventConf

type EventConf struct {
	DestURI      string `json:"DestinationURI"`
	ListenerHost string `json:"ListenerHost"`
	ListenerPort string `json:"ListenerPort"`
}

EventConf is for holding all events related configuration

type KeyCertConf

type KeyCertConf struct {
	RootCACertificatePath string `json:"RootCACertificatePath"` // RootCACertificate will be added to truststore
	PrivateKeyPath        string `json:"PrivateKeyPath"`        // plugin private key
	CertificatePath       string `json:"CertificatePath"`       // plugin certificate
	RootCACertificate     []byte
	PrivateKey            []byte
	RSAPrivateKeyPath     string `json:"RSAPrivateKeyPath"`
	Certificate           []byte
	RSAPrivateKey         []byte
}

KeyCertConf is for holding all security oriented configuration

type LoadBalancerConf

type LoadBalancerConf struct {
	Host string `json:"LBHost"`
	Port string `json:"LBPort"`
}

LoadBalancerConf is for holding all load balancer related configurations

type MessageBusConf

type MessageBusConf struct {
	MessageQueueConfigFilePath string   `json:"MessageQueueConfigFilePath"` // Message Queue Config File Path
	EmbType                    string   `json:"MessageBusType"`
	EmbQueue                   []string `json:"MessageBusQueue"`
}

MessageBusConf will have configuration data of MessageBusConf

type ODIMConf

type ODIMConf struct {
	URL      string `json:"URL"`
	UserName string `json:"UserName"`
	Password string `json:"Password"`
}

ODIMConf hold the value of the ODIMConfiguration to plugin

type PluginConf

type PluginConf struct {
	ID       string `json:"ID"` // PluginID hold the id of the plugin
	Host     string `json:"Host"`
	Port     string `json:"Port"`
	UserName string `json:"UserName"`
	Password string `json:"Password"`
}

PluginConf is for holding all the plugin related configurations

type TLSConf

type TLSConf struct {
	MinVersion            string   `json:"MinVersion"`
	MaxVersion            string   `json:"MaxVersion"`
	VerifyPeer            bool     `json:"VerifyPeer"`
	PreferredCipherSuites []string `json:"PreferredCipherSuites"`
}

TLSConf holds TLS confifurations used in https queries

type URLTranslation

type URLTranslation struct {
	NorthBoundURL map[string]string `json:"NorthBoundURL"` // holds value of NorthBound Translation
	SouthBoundURL map[string]string `json:"SouthBoundURL"` // holds value of SouthBound Translation
}

URLTranslation ...

Jump to

Keyboard shortcuts

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