1. 23 Mar, 2012 2 commits
    • Iustin Pop's avatar
      Enable selection between Python and Haskell confd · 73b0fa69
      Iustin Pop authored
      
      
      This patch changes configure.ac Makefile.am so that the user can pass:
      
      - --disable-confd (or --enable-confd=no) to disable it completely
      - --enable-confd=yes or --enable-confd=python to select the
        traditional implementation (this is the default setting)
      - --enable-confd=haskell to select hconfd
      
      The only "not nice" thing is that I've chosen to keep the
      hconfd.hs/hconfd name, and we rename it after install via an
      install-exec-hook. The other choice is possible too (to rename the
      source file/binary).
      
      One additional note is that if we select haskell, the _rule_ for
      creating daemons/ganeti-confd dissapears; whereas if we select python,
      the rule for htools/hconfd still exists (one can build it explicitly),
      it just is not installed. This is due to the different way in which
      the rules are declared.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarRené Nussbaumer <rn@google.com>
      73b0fa69
    • Iustin Pop's avatar
      Fix qemu-img configure.ac check · acf70442
      Iustin Pop authored
      By accident, commit a002ed79
      
       introduced the qemu-img checks in the
      htools block. I found this also by mistake while investigating
      another issue :)
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarRené Nussbaumer <rn@google.com>
      acf70442
  2. 21 Mar, 2012 1 commit
  3. 19 Jan, 2012 1 commit
  4. 09 Jan, 2012 1 commit
  5. 22 Dec, 2011 1 commit
  6. 06 Dec, 2011 1 commit
    • Andrea Spadaccini's avatar
      Add DRBD barriers disk parameters · 8a69b3a8
      Andrea Spadaccini authored
      
      
      Add the disk-barriers and meta-barriers parameters described in the
      design doc.
      
      constants.py:
      * add the needed LD and DT-level parameters, use the defaults provided
        at ./configure time;
      * add constants representing which barriers should be disabled and the
        set of valid options.
      
      lib/bdev.py:
      * factor the barriers handling code to a class method, for testing
        purposes;
      * implement the more granular version checking logic;
      * use the LD level parameters;
      * add stricter check on DRBD version (8.0, 8.2 or 8.3), as we do not
        support 8.4 yet.
      
      lib/cmdlib.py:
      * translate DT level parameters to LD level ones.
      
      configure.ac, Makefile.am:
      * set both disk and meta barriers parameters depending on the value of
        --enable-drbd-barriers.
      
      test/ganeti.bdev_unittest.py:
      * unit tests for the code that sets DRBD barrier parameters depending on
        the version.
      
      doc/design-resource-model.rst:
      * reword the description of meta-barriers;
      * change all disk parameters names to use dashes instead of underscores.
      Signed-off-by: default avatarAndrea Spadaccini <spadaccio@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      8a69b3a8
  7. 02 Dec, 2011 1 commit
  8. 17 Nov, 2011 1 commit
  9. 27 Oct, 2011 2 commits
  10. 26 Oct, 2011 1 commit
  11. 20 Oct, 2011 2 commits
  12. 18 Oct, 2011 1 commit
  13. 04 Oct, 2011 1 commit
  14. 15 Sep, 2011 2 commits
  15. 31 Aug, 2011 1 commit
  16. 26 Aug, 2011 1 commit
  17. 23 Aug, 2011 1 commit
  18. 19 Aug, 2011 1 commit
  19. 08 Aug, 2011 1 commit
  20. 05 Aug, 2011 2 commits
  21. 19 Jul, 2011 1 commit
  22. 28 Jun, 2011 2 commits
    • Iustin Pop's avatar
      Fix htools, QuickCheck library detection and tests · e5f6768c
      Iustin Pop authored
      
      
      Just saw this while testing the migration to QuickCheck v2: while
      configure.ac detects that QuickCheck-2.x is not available, the test in
      Makefile.am was against WANT_HTOOLS (overall htools compilation), not
      on a more-specific WANT_HTOOLSTESTS.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      e5f6768c
    • Iustin Pop's avatar
      htools: Switch to QuickCheck 2.x · 8e4f6d56
      Iustin Pop authored
      
      
      Since current distros don't package anymore QuickCheck 1.x, let's move
      to 2.x.
      
      This requires also a few changes to the code:
      
      - Test.QuickCheck.Batch doesn't exist anymore, so we need to write some
        scaffolding code to replace it
      - the way test sizes are generated has changed, and we need to restrict
        (in some tests) the cluster size, as our code is not yet ready for
        hundreds of thousands of nodes in a cluster and we run out of stack
        (which could be a bug somewhere by itself, needs investigation)
      - at least with GHC 7, floating point errors make a perfect cluster
        score even bigger, so we need to bump up the max. rounding error
        allowed
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      8e4f6d56
  23. 24 Jun, 2011 1 commit
  24. 24 May, 2011 1 commit
  25. 12 May, 2011 1 commit
  26. 30 Mar, 2011 1 commit
  27. 23 Mar, 2011 1 commit
  28. 22 Mar, 2011 2 commits
    • Iustin Pop's avatar
      htools: add option to control the use of RAPI · 50ed57c1
      Iustin Pop authored
      
      
      RAPI needs the curl module, which is a binding to the libcurl C
      library. This is more complex (can be compiled either against gnutls
      or openssl, etc.) and it's not of much help when the tools are used on
      the cluster itself, we disable it by default.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      50ed57c1
    • Iustin Pop's avatar
      configure.ac: add checks for Haskell compiler/libs · e5bd9de5
      Iustin Pop authored
      This patch adds an enable/disable option for htools (--enable-htools),
      and associated tests for determining whether GHC (the compiler we use
      for htools) and required libraries are present.
      
      The method to do so is not very nice; usually, Haskell programs are
      configured and compiled using cabal (http://www.haskell.org/cabal/
      
      , a
      tool similar to Python's setuptools)), but that doesn't suit itself to
      nice integration with autoconf/automake, so we test for the modules
      presence manually.
      
      In the end, we set a few variables:
      
      - GHC: the path to the ghc compiler
      - HTOOLS_MODULES: command line option for ghc to select the wanted
        'parallel' module
      - HTOOLS_NOCURL: set to -DNO_CURL if we don't want to enable curl (and
        thus RAPI) support in htools
      - HTOOLS: set to 'yes' if we should compile/install the htools
        programs
      - HTOOLS_APIDOC: set to yes if we should build/install the htools
        API documentation
      - WANT_HTOOLS, WANT_HTOOLSAPIDOC: two automake conditionals for later
        use in Makefile.am
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      e5bd9de5
  29. 09 Mar, 2011 1 commit
  30. 07 Mar, 2011 1 commit
  31. 01 Mar, 2011 1 commit
    • Apollon Oikonomopoulos's avatar
      Core shared file storage support · 4b97f902
      Apollon Oikonomopoulos authored
      
      
      This patch introduces core file storage support, consisting of the following:
      
      A configure-time switch for enabling/disabling shared file storage
      support and controlling the shared file storage location:
      --with-shared-file-storage-dir=.  Shared file storage configuration is then
      available as _autoconf.ENABLE_SHARED_FILE_STORAGE and
      _autoconf.SHARED_FILE_STORAGE_DIR and there is a cluster-wide ssconf
      key named "shared_file_storage_dir" for changing the file location.
      
      A new disk template named "sharedfile" (DT_SHARED_FILE), using
      ganeti.bdev.FileStorage.
      
      Auxiliary functions in lib/config.py to handle shared file storage.
      Signed-off-by: default avatarApollon Oikonomopoulos <apollon@noc.grnet.gr>
      [iustin@google.com: small style fixes]
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      4b97f902
  32. 28 Feb, 2011 1 commit
  33. 21 Feb, 2011 1 commit