1. 16 Jun, 2014 1 commit
    • Dimitris Aragiorgis's avatar
      Fix gnt-network client to accept vlan info · 2243b133
      Dimitris Aragiorgis authored
      Until now gnt-network connect expected the network,
      mode, link, and optionally groups as positional arguments.
      
      To be able to pass vlan info too, use the `--nic-parameters`
      option, just like gnt-cluster client to pass the desired
      mode, link, and vlan. Missing values will be filled with the
      default ones.
      
      Do not support old argument passing since mode and link should
      be arguments with variable length and this violates bash completion
      generation rules.
      
      Update QA to pass the new option instead of deprecated arguments.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      2243b133
  2. 20 May, 2014 1 commit
  3. 19 May, 2014 1 commit
  4. 16 May, 2014 1 commit
  5. 16 Dec, 2013 1 commit
  6. 21 Nov, 2013 1 commit
    • Dimitris Aragiorgis's avatar
      Introduce --hotplug-if-possible option · 96ed3a3e
      Dimitris Aragiorgis authored
      This will be useful for an external entity using RAPI that
      wants to modify devices of instances.
      
      The common use case for that is:
      "I want to add a NIC/disk to an instance. If it is running
      then try to hotplug the device. If not, then just add it to config."
      
      Another use case is that if we are unaware of the instance's
      hypervisor: "I want do add a NIC/disk to an instance and if
      its hypervisor is KVM try to hotplug it."
      
      For all those cases just print a warning in CheckPrereq() and
      disable any further hotplug related actions (and let
      modifications take place after reboot).
      
      Add NoHoplugSupport and HotplugIfPossible unittests an modify
      existing by explicitly creating successful RPC results for
      call_hotplug_supported.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarThomas Thrainer <thomasth@google.com>
      96ed3a3e
  7. 24 Oct, 2013 1 commit
  8. 11 Oct, 2013 1 commit
    • Helga Velroyen's avatar
      Correct properties of the cluster's file storage dir · 5ce621ab
      Helga Velroyen authored
      This patch does:
      - Rename the haskell opcode parameter
        'pGlobalFileStorageDir' and 'pGlobalSharedfileStorageDir'
        to 'pClusterFileStorageDir' and
        'pClusterSharedfileStorageDir', respectively, because
        the old name was misleading.
      - The two parameters are made optional strings instead of
        non-empty strings. This actually used to be like this
        before, but was accidentally overriden by the switch to
        opcode generation from haskell to python.
      - The ClusterFileStorageDir parameter had to be renamed in
        Haskell to not clash with the FileStorageDir parameter
        of the OpInstanceCreate code.
      Signed-off-by: default avatarHelga Velroyen <helgav@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      5ce621ab
  9. 10 Sep, 2013 1 commit
    • Jose A. Lopes's avatar
      Wrap 'Set' in 'ListSet' for the opcodes · 4651c69f
      Jose A. Lopes authored
      In what Haskell to Python opcodes are concerned, a Haskell 'Set' is
      translated into a Python 'list'.  In other words, currently, opcodes
      that handle sets of parameters are actually handling lists because
      this is how sets are currently encoded.  This patch introduces a new
      type called 'ListSet' that wraps a Haskell 'Set' and it is used to
      represent on the Haskell side a Python 'list' without duplicate
      elements.  This patch also updates the respective opcode parameters
      and updates the opcode tests.
      Signed-off-by: default avatarJose A. Lopes <jabolopes@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      4651c69f
  10. 08 Aug, 2013 1 commit
    • Jose A. Lopes's avatar
      Fix opcodes and parameters · 5cbf7832
      Jose A. Lopes authored
      * fix some return types in opcodes and some types and documentation in
        parameters.
      * fix serialization of the default value of the 'name' parameter in
        the opcodes related to tags when tag kind is 'cluster'
      * revert changes to 'pShutdownTimeout'' and its references because the
        master branch tried to fix this inconsistency but was unable to fix
        all the references to this parameter
      Signed-off-by: default avatarJose A. Lopes <jabolopes@google.com>
      Reviewed-by: default avatarThomas Thrainer <thomasth@google.com>
      5cbf7832
  11. 07 Aug, 2013 4 commits
  12. 30 Jul, 2013 1 commit
  13. 29 Jul, 2013 1 commit
  14. 24 Jul, 2013 1 commit
  15. 23 Jul, 2013 1 commit
  16. 15 Jul, 2013 1 commit
  17. 20 Jun, 2013 1 commit
    • Thomas Thrainer's avatar
      Index instances by their UUID · da4a52a3
      Thomas Thrainer authored
      No longer index instances by their name but by their UUID in the cluster
      config. This change changes large parts of the code, as the following
      adjustments were necessary:
       * Change the index key to UUID in the configuration and the
         ConfigWriter, including all methods.
       * External interfaces (command line interface, IAllocator interface,
         hook scripts, etc.) are kept stable.
       * Instance UUID's are resolved in ExpandNames and then stored in the
         OpCode. This allows to check for instance renames if the OpCode is
         reloaded after a cluster restart. This check is currently only done
         for single instance parameters.
       * Instance locking unfortunately can't use instances UUID as
         identifiers. The reasons is that new instances (which have no UUID
         yet) have to be locked as well, so the instance name is used.
       * Variable names are renamed to follow the following pattern:
         - Suffix is 'inst' or 'insts': Variable holds Instance objects
         - Suffix is 'name' or 'names': Variable holds Instance names
         - Suffix is 'uuid' or 'uuids': Variable holds Instance UUID's
       * Tests are adapted.
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      da4a52a3
  18. 13 Jun, 2013 1 commit
    • Thomas Thrainer's avatar
      Index nodes by their UUID · 1c3231aa
      Thomas Thrainer authored
      No longer index nodes by their name but by their UUID in the cluster
      config. This change changes large parts of the code, as the following
      adjustments were necessary:
       * Change the index key to UUID in the configuration and the
         ConfigWriter, including all methods.
       * Change all cross-references to nodes to use UUID's.
       * External interfaces (command line interface, IAllocator interface,
         hook scripts, etc.) are kept stable.
       * RPC-calls can resolve UUID's as target node arguments, if the RPC
         runner is based on a ConfigWriter instance. The result dictionary is
         presented in the form the nodes are addressed: by UUID if UUID's were
         given, or by name if names were given.
       * Node UUID's are resolved in ExpandNames and then stored in the
         OpCode. This allows to check for node renames if the OpCode is
         reloaded after a cluster restart. This check is currently only done
         for single node parameters.
       * Variable names are renamed to follow the following pattern:
         - Suffix is 'node' or 'nodes': Variable holds Node objects
         - Suffix is 'name' or 'names': Variable holds node names
         - Suffix is 'uuid' or 'uuids': Variable holds node UUID's
       * Tests are adapted.
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      1c3231aa
  19. 04 Jun, 2013 1 commit
  20. 30 Apr, 2013 1 commit
  21. 22 Apr, 2013 1 commit
  22. 17 Apr, 2013 1 commit
  23. 11 Apr, 2013 2 commits
  24. 02 Apr, 2013 1 commit
  25. 21 Mar, 2013 1 commit
  26. 19 Feb, 2013 2 commits
  27. 12 Feb, 2013 1 commit
  28. 11 Feb, 2013 1 commit
  29. 07 Feb, 2013 1 commit
  30. 30 Jan, 2013 1 commit
  31. 07 Jan, 2013 1 commit
  32. 27 Dec, 2012 1 commit
    • Iustin Pop's avatar
      Move htest/ files under the test/ tree · 83846468
      Iustin Pop authored
      htest/data becomes test/data/htools (basically reverting commit
      8feabc89), and htest/* becomes test/hs/*.
      
      Most changes beside the rename are trivial s/…/…, with the exception
      of autotools/run-in-tempdir, which needed some more changes now that
      test/ is not just Python files:
      
      - test/py is still being copied
      - test/hs moves from individual symlinks to entire dir symlink
      - test/data is symlinked in its entirety
      
      Checked with make distcheck, pep8 and pylint, so at least VPATH builds
      are OK.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      83846468
  33. 22 Dec, 2012 1 commit
    • Constantinos Venetsanopoulos's avatar
      Add the gnt-storage client · b954f097
      Constantinos Venetsanopoulos authored
      Add a new client called 'gnt-storage'.
      The client interacts with the ExtStorage interface, similarly to
      the way gnt-os interacts with the OS interface.
      
      For now, only two commands are supported: 'info' and 'diagnose'.
      
      'diagnose' calculates the node status of each provider on each node,
      similarly to gnt-os diagnose. Furthermore, for every provider, it
      calculates it's nodegroup validity for each nodegroup. This is done
      inside the LU and not the client (marked as 'TODO' for the  global
      validity of gnt-os diagnose).
      
      In the future, gnt-storage can be used to manage storage pools,
      or even be extended to diagnose other storage types supported by
      Ganeti, such as lvm, drbd (INT_MIRROR) or rbd (EXT_MIRROR).
      Signed-off-by: default avatarConstantinos Venetsanopoulos <cven@grnet.gr>
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      [iustin@google.com: fixed Haskell compatibility and style fixes]
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      b954f097
  34. 19 Dec, 2012 2 commits