Skip to content
Snippets Groups Projects
  1. Jan 12, 2011
    • Iustin Pop's avatar
      Run pylint over QA code too · 3582eef6
      Iustin Pop authored
      
      Right now, the QA code is not covered by pylint, and this shows at
      least one low-impact bug.
      
      This patch does the necessary changes to make QA pylint-clean, and the
      changes the makefile to run pylint for it.
      
      Notable changes:
      
      - qa_utils.GenericQueryTest: randfields was not used at all, and my
        belief is that it was indented to be used in order not to modify the
        input list; so I replaced randfields with fields, so we only shuffle
        the our local copy
      - qa_node.TestOutOfBand was using it's own copy of AcquireNode(), so I
        replaced it with the existing version
      - qa_os: was using 'dir' in a couple of places, replaced with dirname
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      3582eef6
    • Iustin Pop's avatar
      QA: use a persistent SSH connection to the master · f7e6f3c8
      Iustin Pop authored
      
      The recent additions to QA (many more tests) make QA slow if the
      machine on which the QA runs is not very close to the tested nodes —
      or in general, when the SSH handhaske is costly.
      
      We discussed before about using a persistent connection, and here is
      the patch that implements it. On a very small QA (very very small), it
      cuts down a lot of time (almost half), so it should be useful even for
      a full QA.
      
      I've also thought about changing from external ssh to paramiko, but I
      estimated that it would be more work to correctly interleave the IO
      from the remote process than just running a background SSH.
      
      Also note that yes, the global dict is ugly, but I don't know of
      another simple way to implement this.
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      f7e6f3c8
  2. Jan 10, 2011
  3. Dec 21, 2010
  4. Dec 16, 2010
  5. Dec 14, 2010
  6. Dec 10, 2010
  7. Nov 29, 2010
    • Iustin Pop's avatar
      Simplify QA commands · 2f4b4f78
      Iustin Pop authored
      
      Currently, 95% of the QA commands are executed in the same way: on the
      master, based on a command list and with expectancies for succes:
      
          AssertEqual(StartSSH(master['primary'],
                               utils.ShellQuoteArgs(cmd)).wait(), 0)
      
      The rest 5% are variations on this theme (maybe the command needs to
      fail, or the node is different, etc.). Based on this, we can simplify
      the code significantly if we abstract the common theme into a new
      AssertCommand() function. This saves ~250 lines of code in the QA suite,
      around 8% of the entire QA code size.
      
      Additionally, the output was very cryptic before (the famous "QA error:
      1 != 0" messages), whereas now we show a clear error message (node,
      command, exit code and failure mode).
      
      The patch replaces single quotes with double quotes in all the parts of
      the code that I touch; let me know if that's not OK…
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      2f4b4f78
  8. Nov 01, 2010
  9. Jun 14, 2010
  10. May 11, 2010
  11. Mar 26, 2010
  12. Sep 05, 2008
    • Michael Hanselmann's avatar
      QA: Remove dry run mode · 26a61f87
      Michael Hanselmann authored
      It didn't work as planned because some commands depend on the return
      value or output of some operations.
      
      Reviewed-by: iustinp
      26a61f87
  13. Aug 26, 2008
  14. Aug 18, 2008
  15. Aug 15, 2008
  16. Feb 14, 2008
  17. Dec 03, 2007
  18. Nov 22, 2007
  19. Nov 08, 2007
  20. Nov 01, 2007
  21. Oct 18, 2007
  22. Oct 15, 2007
  23. Oct 12, 2007
  24. Oct 10, 2007
  25. Sep 26, 2007
    • Michael Hanselmann's avatar
      Enhance QA. · 5d640672
      Michael Hanselmann authored
      - Test “gnt-backup export” and “gnt-backup import”.
      - Move “ResolveInstanceName” to qa_utils.py.
      - Fix tests for “ganeti-watcher”.
      - Make instance shutdown and startup configurable.
      
      Reviewed-by: schreiberal
      
      5d640672
  26. Sep 13, 2007
Loading