And I've changed the commit message to:

 Add new command gnt-debug test-osparams

    which takes secret parameters with --os-secret-parameters and writes
    them to stdout. This command can be used to test the transmission of
    secret parameters.

On Wed, Jul 8, 2015 at 9:33 AM, Lisa Velden <[email protected]> wrote:

> Interdiff:
>
> diff --git a/lib/client/gnt_debug.py b/lib/client/gnt_debug.py
> index ee0721c..48a557f 100644
> --- a/lib/client/gnt_debug.py
> +++ b/lib/client/gnt_debug.py
> @@ -583,7 +583,7 @@ def TestJobqueue(opts, _):
>    return 0
>
>
> -def SetOsParams(opts, _):
> +def TestOsParams(opts, _):
>    """Set secret os parameters.
>
>    """
> @@ -796,7 +796,7 @@ commands = {
>      TestJobqueue, ARGS_NONE, [PRIORITY_OPT],
>      "", "Test a few aspects of the job queue"),
>    "test-osparams": (
> -    SetOsParams, ARGS_NONE, [OSPARAMS_SECRET_OPT] + SUBMIT_OPTS,
> +    TestOsParams, ARGS_NONE, [OSPARAMS_SECRET_OPT] + SUBMIT_OPTS,
>      "[--os-parameters-secret <params>]",
>      "Test secret os parameter transmission"),
>    "locks": (
> diff --git a/lib/cmdlib/test.py b/lib/cmdlib/test.py
> index 1df15d2..167be3d 100644
> --- a/lib/cmdlib/test.py
> +++ b/lib/cmdlib/test.py
> @@ -354,7 +354,7 @@ class LUTestJqueue(NoHooksLU):
>
>
>  class LUTestOsParams(NoHooksLU):
> -  """Utility LU to test secret os parameter transmission.
> +  """Utility LU to test secret OS parameter transmission.
>
>    """
>    REQ_BGL = False
> @@ -364,7 +364,7 @@ class LUTestOsParams(NoHooksLU):
>
>    def Exec(self, feedback_fn):
>      if self.op.osparams_secret:
> -      msg = "Secret os parameters: %s" %
> self.op.osparams_secret.Unprivate()
> +      msg = "Secret OS parameters: %s" %
> self.op.osparams_secret.Unprivate()
>        feedback_fn(msg)
>      else:
>        raise errors.OpExecError("Opcode needs secret parameters")
>
> On Tue, Jul 7, 2015 at 12:34 PM, Hrvoje Ribicic <[email protected]> wrote:
>
>> Patch name: we usually verb first, so make it Add new command...
>>
>> On Mon, Jul 6, 2015 at 10:20 PM, 'Lisa Velden' via ganeti-devel <
>> [email protected]> wrote:
>>
>>> which takes secret parameters with --os-secret-parameters and writes
>>> them to stdout. This command can be used to test the transmission of
>>> secret parameters.
>>>
>>> Signed-off-by: Lisa Velden <[email protected]>
>>> ---
>>>  lib/client/gnt_debug.py   | 14 ++++++++++++++
>>>  lib/cmdlib/__init__.py    |  1 +
>>>  lib/cmdlib/test.py        | 17 +++++++++++++++++
>>>  man/gnt-debug.rst         |  7 +++++++
>>>  src/Ganeti/Hs2Py/OpDoc.hs |  4 ++++
>>>  src/Ganeti/OpCodes.hs     |  6 ++++++
>>>  6 files changed, 49 insertions(+)
>>>
>>> diff --git a/lib/client/gnt_debug.py b/lib/client/gnt_debug.py
>>> index d05fbc2..ee0721c 100644
>>> --- a/lib/client/gnt_debug.py
>>> +++ b/lib/client/gnt_debug.py
>>> @@ -583,6 +583,16 @@ def TestJobqueue(opts, _):
>>>    return 0
>>>
>>>
>>> +def SetOsParams(opts, _):
>>> +  """Set secret os parameters.
>>> +
>>> +  """
>>> +  op = opcodes.OpTestOsParams(osparams_secret=opts.osparams_secret)
>>> +  SubmitOrSend(op, opts)
>>> +
>>> +  return 0
>>> +
>>> +
>>>  def ListLocks(opts, args): # pylint: disable=W0613
>>>    """List all locks.
>>>
>>> @@ -785,6 +795,10 @@ commands = {
>>>    "test-jobqueue": (
>>>      TestJobqueue, ARGS_NONE, [PRIORITY_OPT],
>>>      "", "Test a few aspects of the job queue"),
>>> +  "test-osparams": (
>>> +    SetOsParams, ARGS_NONE, [OSPARAMS_SECRET_OPT] + SUBMIT_OPTS,
>>>
>>
>> Since you are not setting OS params - they are not saved anywhere - I
>> recommend renaming this to TestOsParams.
>>
>>
>>> +    "[--os-parameters-secret <params>]",
>>> +    "Test secret os parameter transmission"),
>>>    "locks": (
>>>      ListLocks, ARGS_NONE,
>>>      [NOHDR_OPT, SEP_OPT, FIELDS_OPT, INTERVAL_OPT, VERBOSE_OPT],
>>> diff --git a/lib/cmdlib/__init__.py b/lib/cmdlib/__init__.py
>>> index ee02417..5fd9b8d 100644
>>> --- a/lib/cmdlib/__init__.py
>>> +++ b/lib/cmdlib/__init__.py
>>> @@ -128,6 +128,7 @@ from ganeti.cmdlib.misc import \
>>>    LUExtStorageDiagnose, \
>>>    LURestrictedCommand
>>>  from ganeti.cmdlib.test import \
>>> +  LUTestOsParams, \
>>>    LUTestDelay, \
>>>    LUTestJqueue, \
>>>    LUTestAllocator
>>> diff --git a/lib/cmdlib/test.py b/lib/cmdlib/test.py
>>> index 5ec7c92..1df15d2 100644
>>> --- a/lib/cmdlib/test.py
>>> +++ b/lib/cmdlib/test.py
>>> @@ -353,6 +353,23 @@ class LUTestJqueue(NoHooksLU):
>>>      return True
>>>
>>>
>>> +class LUTestOsParams(NoHooksLU):
>>> +  """Utility LU to test secret os parameter transmission.
>>>
>>
>> s/os/OS/
>>
>>
>>> +
>>> +  """
>>> +  REQ_BGL = False
>>> +
>>> +  def ExpandNames(self):
>>> +    self.needed_locks = {}
>>> +
>>> +  def Exec(self, feedback_fn):
>>> +    if self.op.osparams_secret:
>>> +      msg = "Secret os parameters: %s" %
>>> self.op.osparams_secret.Unprivate()
>>> +      feedback_fn(msg)
>>> +    else:
>>> +      raise errors.OpExecError("Opcode needs secret parameters")
>>> +
>>> +
>>>  class LUTestAllocator(NoHooksLU):
>>>    """Run allocator tests.
>>>
>>> diff --git a/man/gnt-debug.rst b/man/gnt-debug.rst
>>> index 6614c12..e934d0e 100644
>>> --- a/man/gnt-debug.rst
>>> +++ b/man/gnt-debug.rst
>>> @@ -99,6 +99,13 @@ TEST-JOBQUEUE
>>>  Executes a few tests on the job queue. This command might generate
>>>  failed jobs deliberately.
>>>
>>> +TEST_OSPARAMS
>>> +~~~~~~~~~~~~~
>>> +
>>> +**test-osparams** {--os-parameters-secret *param*=*value*... }
>>
>> +
>>> +Tests secret os parameter transmission.
>>> +
>>>  LOCKS
>>>  ~~~~~
>>>
>>> diff --git a/src/Ganeti/Hs2Py/OpDoc.hs b/src/Ganeti/Hs2Py/OpDoc.hs
>>> index 82aba2f..aee68db 100644
>>> --- a/src/Ganeti/Hs2Py/OpDoc.hs
>>> +++ b/src/Ganeti/Hs2Py/OpDoc.hs
>>> @@ -465,6 +465,10 @@ opTestJqueue :: String
>>>  opTestJqueue =
>>>    "Utility opcode to test some aspects of the job queue."
>>>
>>> +opTestOsParams :: String
>>> +opTestOsParams =
>>> +  "Utility opcode to test secret os parameter transmission."
>>> +
>>>  opTestDummy :: String
>>>  opTestDummy =
>>>    "Utility opcode used by unittests."
>>> diff --git a/src/Ganeti/OpCodes.hs b/src/Ganeti/OpCodes.hs
>>> index 271b409..209943d 100644
>>> --- a/src/Ganeti/OpCodes.hs
>>> +++ b/src/Ganeti/OpCodes.hs
>>> @@ -903,6 +903,12 @@ $(genOpCode "OpCode"
>>>       , pJQueueFail
>>>       ],
>>>       [])
>>> +  , ("OpTestOsParams",
>>> +     [t| () |],
>>> +     OpDoc.opTestOsParams,
>>> +     [ pInstOsParamsSecret
>>> +     ],
>>> +     [])
>>>    , ("OpTestDummy",
>>>       [t| () |],
>>>       OpDoc.opTestDummy,
>>> --
>>> 2.4.3.573.g4eafbef
>>>
>>>
>> Hrvoje Ribicic
>> Ganeti Engineering
>> Google Germany GmbH
>> Dienerstr. 12, 80331, München
>>
>> Geschäftsführer: Graham Law, Christine Elizabeth Flores
>> Registergericht und -nummer: Hamburg, HRB 86891
>> Sitz der Gesellschaft: Hamburg
>>
>
>
>
> --
> Lisa Velden
> Software Engineer
> [email protected]
>
> Google Germany GmbH
> Dienerstraße 12
> 80331 München
>
> Geschäftsführer: Graham Law, Christine Elizabeth Flores
> Registergericht und -nummer: Hamburg, HRB 86891
> Sitz der Gesellschaft: Hamburg
>



-- 
Lisa Velden
Software Engineer
[email protected]

Google Germany GmbH
Dienerstraße 12
80331 München

Geschäftsführer: Graham Law, Christine Elizabeth Flores
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg

Reply via email to