Documentation ¶
Index ¶
- Constants
- Variables
- func GetEnvKey(key string) string
- func InitAutoRotateRKE2Certs() string
- func InitBackupTargetToString() string
- func InitVMForceResetPolicy() string
- func IsRelease() bool
- func SetProvider(p Provider) error
- type AutoRotateRKE2Certs
- type BackupTarget
- type CSIDriverInfo
- type Image
- type Overcommit
- type Provider
- type SSLCertificate
- type SSLParameter
- type Setting
- type TargetType
- type VMForceResetPolicy
Constants ¶
View Source
const ( AdditionalCASettingName = "additional-ca" BackupTargetSettingName = "backup-target" VMForceResetPolicySettingName = "vm-force-reset-policy" SupportBundleTimeoutSettingName = "support-bundle-timeout" HTTPProxySettingName = "http-proxy" OvercommitConfigSettingName = "overcommit-config" SSLCertificatesSettingName = "ssl-certificates" SSLParametersName = "ssl-parameters" VipPoolsConfigSettingName = "vip-pools" VolumeSnapshotClassSettingName = "volume-snapshot-class" DefaultDashboardUIURL = "https://releases.rancher.com/harvester-ui/dashboard/release-harvester-v1.4/index.html" SupportBundleImageName = "support-bundle-image" CSIDriverConfigSettingName = "csi-driver-config" UIIndexSettingName = "ui-index" UIPathSettingName = "ui-path" UISourceSettingName = "ui-source" UIPluginIndexSettingName = "ui-plugin-index" UIPluginBundledVersionSettingName = "ui-plugin-bundled-version" DefaultUIPluginURL = "https://releases.rancher.com/harvester-ui/plugin/harvester-release-harvester-v1.4/harvester-release-harvester-v1.4.umd.min.js" ContainerdRegistrySettingName = "containerd-registry" HarvesterCSICCMSettingName = "harvester-csi-ccm-versions" StorageNetworkName = "storage-network" DefaultVMTerminationGracePeriodSecondsSettingName = "default-vm-termination-grace-period-seconds" SupportBundleExpirationSettingName = "support-bundle-expiration" NTPServersSettingName = "ntp-servers" AutoRotateRKE2CertsSettingName = "auto-rotate-rke2-certs" KubeconfigDefaultTokenTTLMinutesSettingName = "kubeconfig-default-token-ttl-minutes" SupportBundleNodeCollectionTimeoutName = "support-bundle-node-collection-timeout" )
Variables ¶
View Source
var ( InjectDefaults string AdditionalCA = NewSetting(AdditionalCASettingName, "") APIUIVersion = NewSetting("api-ui-version", "1.1.9") // Please update the HARVESTER_API_UI_VERSION in package/Dockerfile when updating the version here. ClusterRegistrationURL = NewSetting("cluster-registration-url", "") ServerVersion = NewSetting("server-version", "dev") UIIndex = NewSetting(UIIndexSettingName, DefaultDashboardUIURL) UIPath = NewSetting(UIPathSettingName, "/usr/share/harvester/harvester") UISource = NewSetting(UISourceSettingName, "auto") // Options are 'auto', 'external' or 'bundled' UIPluginIndex = NewSetting(UIPluginIndexSettingName, DefaultUIPluginURL) VolumeSnapshotClass = NewSetting(VolumeSnapshotClassSettingName, "longhorn") BackupTargetSet = NewSetting(BackupTargetSettingName, "") UpgradableVersions = NewSetting("upgradable-versions", "") UpgradeCheckerEnabled = NewSetting("upgrade-checker-enabled", "true") UpgradeCheckerURL = NewSetting("upgrade-checker-url", "https://harvester-upgrade-responder.rancher.io/v1/checkupgrade") ReleaseDownloadURL = NewSetting("release-download-url", "https://releases.rancher.com/harvester") LogLevel = NewSetting("log-level", "info") // options are info, debug and trace SSLCertificates = NewSetting(SSLCertificatesSettingName, "{}") SSLParameters = NewSetting(SSLParametersName, "{}") SupportBundleImage = NewSetting(SupportBundleImageName, "{}") SupportBundleNamespaces = NewSetting("support-bundle-namespaces", "") SupportBundleTimeout = NewSetting(SupportBundleTimeoutSettingName, "10") // Unit is minute. 0 means disable timeout. SupportBundleExpiration = NewSetting(SupportBundleExpirationSettingName, supportBundleUtil.SupportBundleExpirationDefaultStr) // Unit is minute. SupportBundleNodeCollectionTimeout = NewSetting(SupportBundleNodeCollectionTimeoutName, supportBundleUtil.SupportBundleNodeCollectionTimeoutDefaultStr) // Unit is minute. DefaultStorageClass = NewSetting("default-storage-class", "longhorn") HTTPProxy = NewSetting(HTTPProxySettingName, "{}") VMForceResetPolicySet = NewSetting(VMForceResetPolicySettingName, InitVMForceResetPolicy()) OvercommitConfig = NewSetting(OvercommitConfigSettingName, `{"cpu":1600,"memory":150,"storage":200}`) VipPools = NewSetting(VipPoolsConfigSettingName, "") AutoDiskProvisionPaths = NewSetting("auto-disk-provision-paths", "") CSIDriverConfig = NewSetting(CSIDriverConfigSettingName, `{"driver.longhorn.io":{"volumeSnapshotClassName":"longhorn-snapshot","backupVolumeSnapshotClassName":"longhorn"}}`) ContainerdRegistry = NewSetting(ContainerdRegistrySettingName, "") StorageNetwork = NewSetting(StorageNetworkName, "") DefaultVMTerminationGracePeriodSeconds = NewSetting(DefaultVMTerminationGracePeriodSecondsSettingName, "120") AutoRotateRKE2CertsSet = NewSetting(AutoRotateRKE2CertsSettingName, InitAutoRotateRKE2Certs()) KubeconfigTTL = NewSetting(KubeconfigDefaultTokenTTLMinutesSettingName, "0") // "0" is default value to ensure token does not expire // HarvesterCSICCMVersion this is the chart version from https://github.com/harvester/charts instead of image versions HarvesterCSICCMVersion = NewSetting(HarvesterCSICCMSettingName, `{"harvester-cloud-provider":">=0.0.1 <0.3.0","harvester-csi-provider":">=0.0.1 <0.3.0"}`) NTPServers = NewSetting(NTPServersSettingName, "") WhiteListedSettings = []string{"server-version", "default-storage-class", "harvester-csi-ccm-versions", "default-vm-termination-grace-period-seconds"} )
Functions ¶
func InitAutoRotateRKE2Certs ¶ added in v1.3.0
func InitAutoRotateRKE2Certs() string
func InitBackupTargetToString ¶
func InitBackupTargetToString() string
func InitVMForceResetPolicy ¶ added in v1.0.0
func InitVMForceResetPolicy() string
func SetProvider ¶
Types ¶
type AutoRotateRKE2Certs ¶ added in v1.3.0
type BackupTarget ¶
type BackupTarget struct { Type TargetType `json:"type"` Endpoint string `json:"endpoint"` AccessKeyID string `json:"accessKeyId"` SecretAccessKey string `json:"secretAccessKey"` BucketName string `json:"bucketName"` BucketRegion string `json:"bucketRegion"` Cert string `json:"cert"` VirtualHostedStyle bool `json:"virtualHostedStyle"` }
func DecodeBackupTarget ¶ added in v1.0.0
func DecodeBackupTarget(value string) (*BackupTarget, error)
func (*BackupTarget) IsDefaultBackupTarget ¶ added in v1.0.0
func (target *BackupTarget) IsDefaultBackupTarget() bool
type CSIDriverInfo ¶ added in v1.1.0
type CSIDriverInfo struct { VolumeSnapshotClassName string `json:"volumeSnapshotClassName"` BackupVolumeSnapshotClassName string `json:"backupVolumeSnapshotClassName"` }
func GetCSIDriverInfo ¶ added in v1.1.0
func GetCSIDriverInfo(provisioner string) (*CSIDriverInfo, error)
type Image ¶ added in v1.0.1
type Image struct { Repository string `json:"repository"` Tag interface{} `json:"tag"` ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy"` }
type Overcommit ¶ added in v1.0.0
type SSLCertificate ¶ added in v1.0.0
type SSLParameter ¶ added in v1.0.0
type TargetType ¶
type TargetType string
const ( S3BackupType TargetType = "s3" NFSBackupType TargetType = "nfs" )
type VMForceResetPolicy ¶ added in v1.0.0
type VMForceResetPolicy struct { Enable bool `json:"enable"` // Period means how many seconds to wait for a node get back. Period int64 `json:"period"` }
func DecodeVMForceResetPolicy ¶ added in v1.0.0
func DecodeVMForceResetPolicy(value string) (*VMForceResetPolicy, error)
Click to show internal directories.
Click to hide internal directories.