1. 20 Jan, 2008 7 commits
    • Iustin Pop's avatar
      Make backend._GetVGInfo check the validity of 'vgs' · f4d377e7
      Iustin Pop authored
      Currently, the function backend._GetVGInfo only checks for errors via
      the exit code of the 'vgs' command. However, there are other ways of
      failure so we need to also check for valid output before parsing.
      
      Furthermore, the checks on the exit code were reported via a 'raise
      LVMError', however this exception is not handled anywhere and so the
      remote caller will not get reasonable data.
      
      This patch does two main things:
        - change the calling protocol for this function to not raise an error,
          and instead return the same type of argument always (dict) with the
          requested keys but values changed into None; this allows in the
          parent rpc call node_info to have valid memory information but
          "error" value for disk space, if there's an error with disks
        - check the validity of the output so that in case we fail to parse
          it, we don't abort with a backtrace in the node daemon but instead
          return the default result value (containing errors), and log these
          cases in the node daemon log file
      
      We also bump the protocol version to 11.
      
      Reviewed-by: ultrotter
      f4d377e7
    • Iustin Pop's avatar
      Fix checking of node free disk in CreateInstance · 8d75db10
      Iustin Pop authored
      This patch does two things:
        - checks that the result values from call_node_info are valid integer
          values and aborts otherwise
        - skips disk space computation for the DT_DISKLESS case
      
      The most important point of the patch is the verification of results
      from the rpc call, as it prepares for a patch that allows failures to be
      better reported from the remote node.
      
      Reviewed-by: ultrotter
      8d75db10
    • Iustin Pop's avatar
      Abstract node memory checking into a separate function · d4f16fd9
      Iustin Pop authored
      The checking of a node's free memory (via rpc.call_node_info) is done in
      both start instance an failover. This patch abstracts this call,
      together with the appropriate error handling, into a separate function
      called _CheckNodeFreeMemory.
      
      The patch also has some related changes:
        - the check is done in prereq and not in exec for start instance
        - the redundant check in exec for failover has been removed
      
      Reviewed-by: ultrotter
      d4f16fd9
    • Iustin Pop's avatar
      Change a hardcoded path into its proper constant · 97628462
      Iustin Pop authored
      The function backend.UploadFile still uses "/etc/hosts" directly instead
      of the existing constant; this patch fixes this.
      
      Reviewed-by: ultrotter
      97628462
    • Iustin Pop's avatar
      Allow use of 'diskless' disk template in burnin · bd249e2f
      Iustin Pop authored
      Even if this doesn't have any practical use for actually creating
      instances, it can be used for very fast burnin and testing just the
      add/start/stop/remove functionality.
      
      This has also revealed a bug in export/import related to diskless
      instances, so it's educational value is proved.
      
      Reviewed-by: ultrotter
      bd249e2f
    • Iustin Pop's avatar
      Fix run directory for the fake hypervisor · 1ed70996
      Iustin Pop authored
      Currently the fake hypervisor has hardcoded ‘/var/run’ as a base
      directory for its store. This patch adds a constant RUN_DIR that is used
      for both the fake hypervisor and for BDEV_CACHE_DIR.
      
      Reviewed-by: ultrotter
      1ed70996
    • Iustin Pop's avatar
      Fix the init.d script · e71d6323
      Iustin Pop authored
      The script (which is geared towards Debian) is actually not fully
      compliant, as lintian generates a warning on it - the S runlevel is not
      a valid one in the "Stop" stanza. This patch removes "S" from the stop
      list.
      
      Reviewed-by: imsnah
      e71d6323
  2. 18 Jan, 2008 2 commits
    • Iustin Pop's avatar
      Fix the make dist rule · b6f2e47f
      Iustin Pop authored
      In revision 459 I added a bug in the make dist rule in the sense that
      the archive will include *all* of test/data directory, including the
      .svn directory if it exists.
      
      This patch fixes that problem and adds a distcheck hook that tests for
      such errors in the future (files/directories matching the .svn and .git
      patterns).
      
      It also fixes a typo in the NEWS file.
      
      Reviewed-by: imsnah
      b6f2e47f
    • Iustin Pop's avatar
      Bump version numbers for the 1.2.1 release · 31b9055c
      Iustin Pop authored
      This a merge to trunk of revision 494.
      
      Reviewed-by: imsnah
      31b9055c
  3. 16 Jan, 2008 2 commits
  4. 14 Jan, 2008 6 commits
    • Guido Trotter's avatar
      Make instance start/stop skippable at burnin time · d4844f0f
      Guido Trotter authored
      Even though burnin was born just to do that test it now contains a lot more
      things one might try, so it makes sense to make instance start/stop optional
      too.
      
      This creates a burnin that at the bare minimum tests instance create and
      remove, if all the --no options are specified, but usually does a lot more.
      
      Reviewed-by: iustinp
      
      d4844f0f
    • Guido Trotter's avatar
      Do instance export and import during burnin · bd5e77f9
      Guido Trotter authored
      Instances get exported to a remote node, then removed and imported back to
      their original nodes. This should be an idempotent option from the instance
      point of view, and help making sure ImportExport is kept up to date.
      
      It will also help making burnin take a lot longer, which is nice to take a nap.
      "...but I'm doing a cluster burnin...". Unfortunately this subfeature is a bit
      jeopardized by the fact that the new code can be skipped with the
      --no-importexport option, but nobody needs to know that, do they?
      
      Reviewed-by: iustinp
      bd5e77f9
    • Iustin Pop's avatar
      Allow burnin to take "-t plain" as an option · 4aa036ab
      Iustin Pop authored
      The burnin code deals with "-t plain", but the command line parser
      doesn't allow that as an option. This patch fixes this issue.
      
      Reviewed-by: ultrotter
      4aa036ab
    • Iustin Pop's avatar
      Fix some misspellings · ba4b62cf
      Iustin Pop authored
      This patch fixes two name typos and a style issue (which makes pylint
      complain).
      
      Reviewed-by: ultrotter
      ba4b62cf
    • Guido Trotter's avatar
      Fix CreateInstance new optional parameters · 40ed12dd
      Guido Trotter authored
      Some new paramenters of the CreateInstance opcode are optional (namely
      kernel_path, initrd_path and hvm_boot_order) but their absence makes the code
      crash. Fix this by initializing them to a default value if they're not present.
      
      Reviewed-by: iustinp
      40ed12dd
    • Guido Trotter's avatar
      Add mac="auto" at import time · c19dfc03
      Guido Trotter authored
      Mac is now a mandatory option for OpCreateInstance. Add it when we call this
      opcode at import time too. This is a quick fix for the code, but probably more
      work needs to be done to integrate mac addresses with the import/export
      functionality in a nice way.
      
      Reviewed-by: iustinp
      c19dfc03
  5. 11 Jan, 2008 1 commit
  6. 10 Jan, 2008 5 commits
  7. 09 Jan, 2008 1 commit
  8. 08 Jan, 2008 8 commits
  9. 07 Jan, 2008 6 commits
    • Iustin Pop's avatar
      Fix a typo in the ‘gnt-instance’ manpage · 61854511
      Iustin Pop authored
      Reviewed-by: schreiberal
      61854511
    • Iustin Pop's avatar
      Fix ‘make distcheck’ breakage introduced in r455 · 6634816b
      Iustin Pop authored
      This patch fixes the ‘make distcheck’ breakage caused by missing test data in
      the archive and missing handling of builddir!=srcdir case.
      
      Reviewed-by: schreiberal
      6634816b
    • Iustin Pop's avatar
      Improve verify-disks: broken/missing LV detection · b63ed789
      Iustin Pop authored
      This patch improves the ‘gnt-cluster verify-disks’ command by adding
      support for detecting broken volume groups and missing logical volume
      names.
      
      As such, we don't try anymore to activate disks for instances that are
      not likely to succeed anyway, and instead report them.
      
      Reviewed-by: schreiberal
      b63ed789
    • Iustin Pop's avatar
      Activate logical volumes at Assemble() time · 5574047a
      Iustin Pop authored
      This patch changes the Assemble() method for logical volumes from a noop
      to do a `lvchange -ay` on the logical volume; this ensures that if the
      logical volume is not active, we are able to activate and use it.
      
      Reviewed-by: imsnah
      5574047a
    • Iustin Pop's avatar
      Improve speed of activating block devs · be1ba2bd
      Iustin Pop authored
      This patch fixes the double attach operation in bdev.AttachOrAssemble,
      which was an indentation mistake in the first place.
      
      Reviewed-by: imsnah
      be1ba2bd
    • Iustin Pop's avatar
      Add unittest for DRBD8 drdbsetup show parser · 3840729d
      Iustin Pop authored
      This patch changes the bdev.DRBD8._GetDevInfo to take a string instead
      of a minor, separates the `drbdsetup show` invocation into a new
      separate method (bdev.DRBD8._GetShowData) and modifies the rest of the
      DRBD8 class to make the appropriate calls.
      
      It also adds a unittest script and data files for testing various cases
      of device output.
      
      Reviewed-by: imsnah
      3840729d
  10. 28 Dec, 2007 1 commit
  11. 27 Dec, 2007 1 commit