diff --git a/htest/Test/Ganeti/OpCodes.hs b/htest/Test/Ganeti/OpCodes.hs index d34a74776caf9e494092b337afeec43eddfdbd29..c18cfa82e4464a5649db96cedb057c15d5325edd 100644 --- a/htest/Test/Ganeti/OpCodes.hs +++ b/htest/Test/Ganeti/OpCodes.hs @@ -177,7 +177,7 @@ instance Arbitrary OpCodes.OpCode where getMaybe getName <*> getMaybe genNameNE <*> arbitrary <*> getMaybe genNameNE <*> arbitrary <*> arbitrary <*> emptyMUD "OP_NODE_QUERY" -> - OpCodes.OpNodeQuery <$> arbitrary <*> arbitrary <*> arbitrary + OpCodes.OpNodeQuery <$> genFieldsNE <*> arbitrary <*> genNamesNE "OP_NODE_QUERYVOLS" -> OpCodes.OpNodeQueryvols <$> arbitrary <*> genNodeNamesNE "OP_NODE_QUERY_STORAGE" -> @@ -248,6 +248,8 @@ instance Arbitrary OpCodes.OpCode where "OP_INSTANCE_RECREATE_DISKS" -> OpCodes.OpInstanceRecreateDisks <$> getFQDN <*> arbitrary <*> genNodeNamesNE <*> getMaybe genNameNE + "OP_INSTANCE_QUERY" -> + OpCodes.OpInstanceQuery <$> genFieldsNE <*> genNamesNE <*> arbitrary "OP_INSTANCE_QUERY_DATA" -> OpCodes.OpInstanceQueryData <$> arbitrary <*> genNodeNamesNE <*> arbitrary @@ -328,6 +330,9 @@ instance Arbitrary OpCodes.OpCode where OpCodes.OpNetworkDisconnect <$> genNameNE <*> genNameNE <*> arbitrary "OP_NETWORK_QUERY" -> OpCodes.OpNetworkQuery <$> genFieldsNE <*> genNamesNE + "OP_RESTRICTED_COMMAND" -> + OpCodes.OpRestrictedCommand <$> arbitrary <*> genNodeNamesNE <*> + genNameNE _ -> fail $ "Undefined arbitrary for opcode " ++ op_id -- * Helper functions diff --git a/htools/Ganeti/OpCodes.hs b/htools/Ganeti/OpCodes.hs index 663dade10e125059a72602d5f5b3890502b1182d..d6c656b719164b9cd88fb166c5cfa5a49b30b17f 100644 --- a/htools/Ganeti/OpCodes.hs +++ b/htools/Ganeti/OpCodes.hs @@ -347,6 +347,11 @@ $(genOpCode "OpCode" , pNodes , pIallocator ]) + , ("OpInstanceQuery", + [ pOutputFields + , pNames + , pUseLocking + ]) , ("OpInstanceQueryData", [ pUseLocking , pInstances @@ -517,6 +522,11 @@ $(genOpCode "OpCode" [ pOutputFields , pNames ]) + , ("OpRestrictedCommand", + [ pUseLocking + , pRequiredNodes + , pRestrictedCommand + ]) ]) -- | Returns the OP_ID for a given opcode value. diff --git a/htools/Ganeti/OpParams.hs b/htools/Ganeti/OpParams.hs index a5b48bcd90e1fe6db88401d108879a45a38e031c..a83ec3d995c923aae08d870f7ee6dc8bea53120f 100644 --- a/htools/Ganeti/OpParams.hs +++ b/htools/Ganeti/OpParams.hs @@ -188,6 +188,7 @@ module Ganeti.OpParams , pX509KeyName , pX509DestCA , pTagSearchPattern + , pRestrictedCommand , pDelayRepeat , pIAllocatorDirection , pIAllocatorMode @@ -1152,6 +1153,12 @@ pTagSearchPattern :: Field pTagSearchPattern = renameField "TagSearchPattern" $ simpleField "pattern" [t| NonEmptyString |] +-- | Restricted command name. +pRestrictedCommand :: Field +pRestrictedCommand = + renameField "RestrictedCommand" $ + simpleField "command" [t| NonEmptyString |] + -- * Test opcode parameters -- | Repeat parameter for OpTestDelay.