Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Ganeti.OpParams
Description
Implementation of opcodes parameters.
These are defined in a separate module only due to TemplateHaskell stage restrictions - expressions defined in the current module can't be passed to splices. So we have to either parameters/repeat each parameter definition multiple times, or separate them into this module.
Synopsis
- data ReplaceDisksMode
- data DiskIndex
- mkDiskIndex :: MonadFail m => Int -> m DiskIndex
- unDiskIndex :: DiskIndex -> Int
- data DiskAccess
- data INicParams = INicParams {
- inicMac :: (Maybe NonEmptyString)
- inicIp :: (Maybe String)
- inicMode :: (Maybe NonEmptyString)
- inicLink :: (Maybe NonEmptyString)
- inicName :: (Maybe NonEmptyString)
- inicVlan :: (Maybe String)
- inicBridge :: (Maybe NonEmptyString)
- inicNetwork :: (Maybe NonEmptyString)
- data IDiskParams = IDiskParams {
- idiskSize :: (Maybe Int)
- idiskMode :: (Maybe DiskAccess)
- idiskAdopt :: (Maybe NonEmptyString)
- idiskVg :: (Maybe NonEmptyString)
- idiskMetavg :: (Maybe NonEmptyString)
- idiskName :: (Maybe NonEmptyString)
- idiskProvider :: (Maybe NonEmptyString)
- idiskSpindles :: (Maybe Int)
- idiskAccess :: (Maybe NonEmptyString)
- idiskOpaque :: (Map String JSValue)
- data RecreateDisksInfo
- data DdmOldChanges
- = DdmOldIndex (NonNegative Int)
- | DdmOldMod DdmSimple
- data SetParamsMods a
- = SetParamsEmpty
- | SetParamsDeprecated (NonEmpty (DdmOldChanges, a))
- | SetParamsNew (NonEmpty (DdmFull, Int, a))
- | SetParamsNewName (NonEmpty (DdmFull, String, a))
- data ExportTarget
- = ExportTargetLocal NonEmptyString
- | ExportTargetRemote [JSValue]
- pInstanceName :: Field
- pInstallImage :: Field
- pInstanceCommunication :: Field
- pOptInstanceCommunication :: Field
- pInstanceUuid :: Field
- pInstances :: Field
- pName :: Field
- pTagsList :: Field
- pTagsObject :: Field
- pTagsName :: Field
- pOutputFields :: Field
- pShutdownTimeout :: Field
- pShutdownTimeout' :: Field
- pShutdownInstance :: Field
- pForce :: Field
- pIgnoreOfflineNodes :: Field
- pIgnoreHVVersions :: Field
- pNodeName :: Field
- pNodeUuid :: Field
- pNodeNames :: Field
- pNodeUuids :: Field
- pGroupName :: Field
- pMigrationMode :: Field
- pMigrationLive :: Field
- pMigrationCleanup :: Field
- pForceVariant :: Field
- pWaitForSync :: Field
- pWaitForSyncFalse :: Field
- pIgnoreConsistency :: Field
- pStorageName :: Field
- pUseLocking :: Field
- pOpportunisticLocking :: Field
- pNameCheck :: Field
- pNodeGroupAllocPolicy :: Field
- pGroupNodeParams :: Field
- pQueryWhat :: Field
- pEarlyRelease :: Field
- pIpCheck :: Field
- pIpConflictsCheck :: Field
- pNoRemember :: Field
- pMigrationTargetNode :: Field
- pMigrationTargetNodeUuid :: Field
- pMoveTargetNode :: Field
- pMoveTargetNodeUuid :: Field
- pMoveCompress :: Field
- pBackupCompress :: Field
- pStartupPaused :: Field
- pVerbose :: Field
- pDebug :: Field
- pDebugSimulateErrors :: Field
- pErrorCodes :: Field
- pSkipChecks :: Field
- pIgnoreErrors :: Field
- pOptGroupName :: Field
- pGroupDiskParams :: Field
- pHvState :: Field
- pDiskState :: Field
- pIgnoreIpolicy :: Field
- pHotplug :: Field
- pAllowRuntimeChgs :: Field
- pInstDisks :: Field
- pDiskTemplate :: Field
- pOptDiskTemplate :: Field
- pExtParams :: Field
- pFileDriver :: Field
- pFileStorageDir :: Field
- pClusterFileStorageDir :: Field
- pClusterSharedFileStorageDir :: Field
- pClusterGlusterStorageDir :: Field
- pInstanceCommunicationNetwork :: Field
- pZeroingImage :: Field
- pCompressionTools :: Field
- pVgName :: Field
- pEnabledHypervisors :: Field
- pHypervisor :: Field
- pClusterHvParams :: Field
- pInstHvParams :: Field
- pClusterBeParams :: Field
- pInstBeParams :: Field
- pResetDefaults :: Field
- pOsHvp :: Field
- pClusterOsParams :: Field
- pClusterOsParamsPrivate :: Field
- pInstOsParams :: Field
- pInstOsParamsPrivate :: Field
- pInstOsParamsSecret :: Field
- pCandidatePoolSize :: Field
- pMaxRunningJobs :: Field
- pMaxTrackedJobs :: Field
- pUidPool :: Field
- pAddUids :: Field
- pRemoveUids :: Field
- pMaintainNodeHealth :: Field
- pModifyEtcHosts :: Field
- pPreallocWipeDisks :: Field
- pNicParams :: Field
- pInstNics :: Field
- pNdParams :: Field
- pIpolicy :: Field
- pDrbdHelper :: Field
- pDefaultIAllocator :: Field
- pDefaultIAllocatorParams :: Field
- pMasterNetdev :: Field
- pMasterNetmask :: Field
- pReservedLvs :: Field
- pHiddenOs :: Field
- pBlacklistedOs :: Field
- pUseExternalMipScript :: Field
- pQueryFields :: Field
- pQueryFilter :: Field
- pQueryFieldsFields :: Field
- pOobCommand :: Field
- pOobTimeout :: Field
- pIgnoreStatus :: Field
- pPowerDelay :: Field
- pPrimaryIp :: Field
- pSecondaryIp :: Field
- pReadd :: Field
- pNodeGroup :: Field
- pMasterCapable :: Field
- pVmCapable :: Field
- pNames :: Field
- pNodes :: Field
- pRequiredNodes :: Field
- pRequiredNodeUuids :: Field
- pStorageType :: Field
- pOptStorageType :: Field
- pStorageChanges :: Field
- pMasterCandidate :: Field
- pOffline :: Field
- pDrained :: Field
- pAutoPromote :: Field
- pPowered :: Field
- pIallocator :: Field
- pRemoteNode :: Field
- pRemoteNodeUuid :: Field
- pEvacMode :: Field
- pIgnoreSoftErrors :: Field
- pInstCreateMode :: Field
- pNoInstall :: Field
- pInstOs :: Field
- pPrimaryNode :: Field
- pPrimaryNodeUuid :: Field
- pSecondaryNode :: Field
- pSecondaryNodeUuid :: Field
- pSourceHandshake :: Field
- pSourceInstance :: Field
- pSourceShutdownTimeout :: Field
- pSourceX509Ca :: Field
- pSrcNode :: Field
- pSrcNodeUuid :: Field
- pSrcPath :: Field
- pStartInstance :: Field
- pForthcoming :: Field
- pCommit :: Field
- pInstTags :: Field
- pMultiAllocInstances :: Field
- pTempOsParams :: Field
- pTempOsParamsPrivate :: Field
- pTempOsParamsSecret :: Field
- pTempHvParams :: Field
- pTempBeParams :: Field
- pIgnoreFailures :: Field
- pNewName :: Field
- pIgnoreSecondaries :: Field
- pRebootType :: Field
- pIgnoreDiskSize :: Field
- pRecreateDisksInfo :: Field
- pStatic :: Field
- pInstParamsNicChanges :: Field
- pInstParamsDiskChanges :: Field
- pRuntimeMem :: Field
- pOsNameChange :: Field
- pDiskIndex :: Field
- pDiskChgAmount :: Field
- pDiskChgAbsolute :: Field
- pTargetGroups :: Field
- pExportMode :: Field
- pExportTargetNode :: Field
- pExportTargetNodeUuid :: Field
- pRemoveInstance :: Field
- pIgnoreRemoveFailures :: Field
- pX509KeyName :: Field
- pX509DestCA :: Field
- pZeroFreeSpace :: Field
- pHelperStartupTimeout :: Field
- pHelperShutdownTimeout :: Field
- pZeroingTimeoutFixed :: Field
- pZeroingTimeoutPerMiB :: Field
- pTagSearchPattern :: Field
- pRestrictedCommand :: Field
- pReplaceDisksMode :: Field
- pReplaceDisksList :: Field
- pAllowFailover :: Field
- pForceFailover :: Field
- pDelayDuration :: Field
- pDelayOnMaster :: Field
- pDelayOnNodes :: Field
- pDelayOnNodeUuids :: Field
- pDelayRepeat :: Field
- pDelayInterruptible :: Field
- pDelayNoLocks :: Field
- pIAllocatorDirection :: Field
- pIAllocatorMode :: Field
- pIAllocatorReqName :: Field
- pIAllocatorNics :: Field
- pIAllocatorDisks :: Field
- pIAllocatorMemory :: Field
- pIAllocatorVCpus :: Field
- pIAllocatorOs :: Field
- pIAllocatorInstances :: Field
- pIAllocatorEvacMode :: Field
- pIAllocatorSpindleUse :: Field
- pIAllocatorCount :: Field
- pJQueueNotifyWaitLock :: Field
- pJQueueNotifyExec :: Field
- pJQueueLogMessages :: Field
- pJQueueFail :: Field
- pTestDummyResult :: Field
- pTestDummyMessages :: Field
- pTestDummyFail :: Field
- pTestDummySubmitJobs :: Field
- pNetworkName :: Field
- pNetworkAddress4 :: Field
- pNetworkGateway4 :: Field
- pNetworkAddress6 :: Field
- pNetworkGateway6 :: Field
- pNetworkMacPrefix :: Field
- pNetworkAddRsvdIps :: Field
- pNetworkRemoveRsvdIps :: Field
- pNetworkMode :: Field
- pNetworkLink :: Field
- pNetworkVlan :: Field
- pDryRun :: Field
- pDebugLevel :: Field
- pOpPriority :: Field
- pDependencies :: Field
- pComment :: Field
- pReason :: Field
- pSequential :: Field
- pEnabledDiskTemplates :: Field
- pEnabledUserShutdown :: Field
- pAdminStateSource :: Field
- pEnabledDataCollectors :: Field
- pDataCollectorInterval :: Field
- pNodeSslCerts :: Field
- pSshKeyBits :: Field
- pSshKeyType :: Field
- pRenewSshKeys :: Field
- pNodeSetup :: Field
- pVerifyClutter :: Field
- pLongSleep :: Field
- pIsStrict :: Field
Documentation
data ReplaceDisksMode #
Replace disks type.
Instances
Disk index type (embedding constraints on the index value via a smart constructor).
mkDiskIndex :: MonadFail m => Int -> m DiskIndex #
Smart constructor for DiskIndex
.
unDiskIndex :: DiskIndex -> Int #
data DiskAccess #
Type holding disk access modes.
Constructors
DiskReadOnly | |
DiskReadWrite |
Instances
data INicParams #
NIC modification definition.
Constructors
INicParams | |
Fields
|
Instances
data IDiskParams #
Disk modification definition.
Constructors
IDiskParams | |
Fields
|
Instances
data RecreateDisksInfo #
Disk changes type for OpInstanceRecreateDisks. This is a bit strange, because the type in Python is something like Either [DiskIndex] [DiskChanges], but we can't represent the type of an empty list in JSON, so we have to add a custom case for the empty list.
Constructors
RecreateDisksAll | |
RecreateDisksIndices (NonEmpty DiskIndex) | |
RecreateDisksParams (NonEmpty (DiskIndex, IDiskParams)) |
Instances
data DdmOldChanges #
Simple type for old-style ddm changes.
Constructors
DdmOldIndex (NonNegative Int) | |
DdmOldMod DdmSimple |
Instances
Show DdmOldChanges # | |
Defined in Ganeti.OpParams Methods showsPrec :: Int -> DdmOldChanges -> ShowS show :: DdmOldChanges -> String showList :: [DdmOldChanges] -> ShowS | |
Eq DdmOldChanges # | |
Defined in Ganeti.OpParams | |
Ord DdmOldChanges # | |
Defined in Ganeti.OpParams Methods compare :: DdmOldChanges -> DdmOldChanges -> Ordering (<) :: DdmOldChanges -> DdmOldChanges -> Bool (<=) :: DdmOldChanges -> DdmOldChanges -> Bool (>) :: DdmOldChanges -> DdmOldChanges -> Bool (>=) :: DdmOldChanges -> DdmOldChanges -> Bool max :: DdmOldChanges -> DdmOldChanges -> DdmOldChanges min :: DdmOldChanges -> DdmOldChanges -> DdmOldChanges | |
JSON DdmOldChanges # | |
Defined in Ganeti.OpParams Methods readJSON :: JSValue -> Result DdmOldChanges showJSON :: DdmOldChanges -> JSValue readJSONs :: JSValue -> Result [DdmOldChanges] showJSONs :: [DdmOldChanges] -> JSValue |
data SetParamsMods a #
Instance disk or nic modifications.
Constructors
SetParamsEmpty | |
SetParamsDeprecated (NonEmpty (DdmOldChanges, a)) | |
SetParamsNew (NonEmpty (DdmFull, Int, a)) | |
SetParamsNewName (NonEmpty (DdmFull, String, a)) |
Instances
data ExportTarget #
Custom type for target_node parameter of OpBackupExport, which varies depending on mode. FIXME: this uses an [JSValue] since we don't care about individual rows (just like the Python code tests). But the proper type could be parsed if we wanted.
Constructors
ExportTargetLocal NonEmptyString | |
ExportTargetRemote [JSValue] |
Instances
Show ExportTarget # | |
Defined in Ganeti.OpParams Methods showsPrec :: Int -> ExportTarget -> ShowS show :: ExportTarget -> String showList :: [ExportTarget] -> ShowS | |
Eq ExportTarget # | |
Defined in Ganeti.OpParams | |
Ord ExportTarget # | |
Defined in Ganeti.OpParams Methods compare :: ExportTarget -> ExportTarget -> Ordering (<) :: ExportTarget -> ExportTarget -> Bool (<=) :: ExportTarget -> ExportTarget -> Bool (>) :: ExportTarget -> ExportTarget -> Bool (>=) :: ExportTarget -> ExportTarget -> Bool max :: ExportTarget -> ExportTarget -> ExportTarget min :: ExportTarget -> ExportTarget -> ExportTarget | |
JSON ExportTarget # | |
Defined in Ganeti.OpParams Methods readJSON :: JSValue -> Result ExportTarget showJSON :: ExportTarget -> JSValue readJSONs :: JSValue -> Result [ExportTarget] showJSONs :: [ExportTarget] -> JSValue |
pInstanceName :: Field #
pInstallImage :: Field #
pInstanceUuid :: Field #
pInstances :: Field #
pTagsObject :: Field #
pOutputFields :: Field #
Another name for the shutdown timeout, because we like to be inconsistent.
pNodeNames :: Field #
pNodeUuids :: Field #
pGroupName :: Field #
pMigrationMode :: Field #
pMigrationLive :: Field #
pForceVariant :: Field #
pWaitForSync :: Field #
pStorageName :: Field #
pUseLocking :: Field #
pNameCheck :: Field #
pQueryWhat :: Field #
pEarlyRelease :: Field #
pNoRemember :: Field #
pMoveCompress :: Field #
pStartupPaused :: Field #
pErrorCodes :: Field #
pSkipChecks :: Field #
pIgnoreErrors :: Field #
pOptGroupName :: Field #
pDiskState :: Field #
pIgnoreIpolicy :: Field #
pInstDisks :: Field #
pDiskTemplate :: Field #
pExtParams :: Field #
pFileDriver :: Field #
pClusterFileStorageDir :: Field #
Cluster-wide default directory for storing file-backed disks.
pClusterSharedFileStorageDir :: Field #
Cluster-wide default directory for storing shared-file-backed disks.
pClusterGlusterStorageDir :: Field #
Cluster-wide default directory for storing Gluster-backed disks.
pZeroingImage :: Field #
The OS to use when zeroing instance disks.
The additional tools that can be used to compress data in transit
pHypervisor :: Field #
pInstHvParams :: Field #
pInstBeParams :: Field #
pResetDefaults :: Field #
pInstOsParams :: Field #
pRemoveUids :: Field #
Whether to modify and keep in sync the etchosts
files of nodes.
Whether to wipe disks before allocating them to instances.
pNicParams :: Field #
pDrbdHelper :: Field #
pMasterNetdev :: Field #
pMasterNetmask :: Field #
pReservedLvs :: Field #
pBlacklistedOs :: Field #
pQueryFields :: Field #
pQueryFilter :: Field #
pOobCommand :: Field #
pOobTimeout :: Field #
pIgnoreStatus :: Field #
pPowerDelay :: Field #
pPrimaryIp :: Field #
pSecondaryIp :: Field #
pNodeGroup :: Field #
pMasterCapable :: Field #
pVmCapable :: Field #
pRequiredNodes :: Field #
pStorageType :: Field #
pAutoPromote :: Field #
pIallocator :: Field #
pRemoteNode :: Field #
pNoInstall :: Field #
pPrimaryNode :: Field #
pSecondaryNode :: Field #
pSourceX509Ca :: Field #
pSrcNodeUuid :: Field #
pStartInstance :: Field #
pForthcoming :: Field #
pTempOsParams :: Field #
pTempHvParams :: Field #
pTempBeParams :: Field #
pRebootType :: Field #
pRuntimeMem :: Field #
pOsNameChange :: Field #
pDiskIndex :: Field #
pDiskChgAmount :: Field #
pTargetGroups :: Field #
pExportMode :: Field #
pX509KeyName :: Field #
pX509DestCA :: Field #
pZeroFreeSpace :: Field #
pAllowFailover :: Field #
pForceFailover :: Field #
pDelayDuration :: Field #
pDelayOnMaster :: Field #
pDelayOnNodes :: Field #
pDelayRepeat :: Field #
pDelayNoLocks :: Field #
pIAllocatorOs :: Field #
pJQueueFail :: Field #
pTestDummyFail :: Field #
pNetworkName :: Field #
pNetworkMode :: Field #
pNetworkLink :: Field #
pNetworkVlan :: Field #
pDebugLevel :: Field #
pOpPriority :: Field #
pDependencies :: Field #
pSequential :: Field #
pNodeSslCerts :: Field #
pSshKeyBits :: Field #
pSshKeyType :: Field #
pRenewSshKeys :: Field #
pNodeSetup :: Field #
pVerifyClutter :: Field #
pLongSleep :: Field #