1. 12 Sep, 2014 1 commit
  2. 22 May, 2014 2 commits
  3. 12 Feb, 2014 1 commit
  4. 25 Sep, 2013 1 commit
  5. 13 Mar, 2013 1 commit
  6. 16 Jan, 2013 1 commit
  7. 24 Dec, 2012 1 commit
  8. 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
  9. 19 Dec, 2012 3 commits
    • Iustin Pop's avatar
      Fix job completion with big job queues · e0f470ac
      Iustin Pop authored
      Accidentally stumbled upon this while testing unrelated code on a
      machine with ~3K active jobs - the bash completion unittest was
      hanging.
      
      Upon investigation, it turns out that bash's ${var//pattern/repl/} is
      probably quadratic in the size of input (or worse, even):
      
        $ touch job-{1..500}
        $ time ( a=$(echo job-*); echo ${a//job-/}| wc -c; )
        1892
      
        real    0m0.597s
        user    0m0.590s
      
        $ touch job-{1..1000}
        $ time ( a=$(echo job-*); echo ${a//job-/}| wc -c; )
        3893
      
        real    0m4.654s
        user    0m4.580s
      
      We can easily fix this if we change to array-based substitution (once
      per element):
      
        $ time ( a=($(echo job-*)); echo ${a[*]/job-/} |wc -c; )
        3893
      
        real    0m0.028s
        user    0m0.010s
      
        $ touch job-{1..10000}
        $ time ( a=($(echo job-*)); echo ${a[*]/job-/} |wc -c; )
        48894
      
        real    0m0.233s
        user    0m0.220s
      
      This means that exactly when the master node is busy processing many
      jobs, we could accidentally start consuming lots of CPU in the bash
      completion, which is not good.
      
      Note: the code might have problems with filenames containing spaces (I
      didn't reset the IFS, etc.), but the original code had the same issue,
      I think.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      e0f470ac
    • Iustin Pop's avatar
      Enable bash completion for mon-collector · 988dc5ca
      Iustin Pop authored
      This just ties in all the pieces so far and enables bash completion
      for it.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      988dc5ca
    • Iustin Pop's avatar
      bash-completion: add support for multi-cmd Haskell binaries · 24476fa0
      Iustin Pop authored
      This patch adds support for parsing the command list out of a binary
      (very strict format), and then iterating over that and building the
      sub-commands options/arguments.
      
      It also does a bit of general cleanup in the script.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      24476fa0
  10. 20 Nov, 2012 1 commit
  11. 11 Oct, 2012 1 commit
  12. 08 Oct, 2012 4 commits
  13. 27 Sep, 2012 1 commit
  14. 26 Sep, 2012 1 commit
  15. 25 Sep, 2012 2 commits
  16. 19 Sep, 2012 2 commits
  17. 18 Sep, 2012 1 commit
  18. 23 Aug, 2012 1 commit
    • Iustin Pop's avatar
      Bump pep8 version to 1.2 · 5ae4945a
      Iustin Pop authored
      Debian Wheezy will ship with this version, and it has many improved checks compared to 0.6, so let's:
      
      - bump version in the docs
      - silence some new checks that are wrong due to our indent=2 instead of 4
      - fix lots of errors in the code where the indentation was wrong by 1
        or 2 spaces
      - fix a few cases of == True, False, None and replace with 'is'
      - re-indent some cases where the code is OK, but pep8 complains
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarRené Nussbaumer <rn@google.com>
      5ae4945a
  19. 23 Jul, 2012 1 commit
    • Iustin Pop's avatar
      Ensure a stable content of the bash completion file · f5ce7613
      Iustin Pop authored
      Currently, the order of commands in the bash completion file is
      random, because the sub-commands are not sorted. This makes it harder
      to investigate the differences in packaged Ganeti or in installed
      Ganeti, since chunks in this file will have a random order.
      
      To fix this, we sort the subcommands based on the first subcommand in
      a given group ('first' also in sorted order); this results in a stable
      contents of file, as tested by building it many times and checking for
      differences.
      
      The patch also does a few other minor changes to the file
      (e.g. updating copyright years, etc.).
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      f5ce7613
  20. 30 Aug, 2011 1 commit
  21. 24 Aug, 2011 1 commit
  22. 19 Aug, 2011 2 commits
  23. 01 Dec, 2010 1 commit
  24. 14 Sep, 2010 1 commit
  25. 07 Sep, 2010 1 commit
  26. 15 Jul, 2010 1 commit
  27. 23 Mar, 2010 1 commit
  28. 09 Mar, 2010 1 commit
  29. 14 Jan, 2010 1 commit
  30. 13 Jan, 2010 1 commit
  31. 25 Nov, 2009 1 commit