X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/ba7df2ce70b4bfdaa73878342bc2482539b511e9..9274270397ef675a75b84c0ca593f917f3288ffd:/configure.ac?ds=sidebyside diff --git a/configure.ac b/configure.ac index 3fdbfb8..316efcc 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ m4_define([gnt_version_major], [2]) m4_define([gnt_version_minor], [7]) m4_define([gnt_version_revision], [0]) -m4_define([gnt_version_suffix], [~beta3]) +m4_define([gnt_version_suffix], [~rc2]) m4_define([gnt_version_full], m4_format([%d.%d.%d%s], gnt_version_major, gnt_version_minor, @@ -119,19 +119,6 @@ AC_ARG_WITH([xen-initrd], [xen_initrd="/boot/initrd-3-xenU"]) AC_SUBST(XEN_INITRD, $xen_initrd) -# --with-xen-cmd=... -AC_ARG_WITH([xen-cmd], - [AS_HELP_STRING([--with-xen-cmd=CMD], - [Sets the xen cli interface command (default is xm)] - )], - [xen_cmd="$withval"], - [xen_cmd=xm]) -AC_SUBST(XEN_CMD, $xen_cmd) - -if ! test "$XEN_CMD" = xl -o "$XEN_CMD" = xm; then - AC_MSG_ERROR([Unsupported xen command specified]) -fi - # --with-kvm-kernel=... AC_ARG_WITH([kvm-kernel], [AS_HELP_STRING([--with-kvm-kernel=PATH], @@ -243,15 +230,18 @@ AC_ARG_WITH([user-prefix], [user_masterd="${withval}masterd"; user_rapi="${withval}rapi"; user_confd="${withval}confd"; - user_noded="$user_default"], + user_noded="$user_default"; + user_mond="$user_default"], [user_masterd="$user_default"; user_rapi="$user_default"; user_confd="$user_default"; - user_noded="$user_default"]) + user_noded="$user_default"; + user_mond="$user_default"]) AC_SUBST(MASTERD_USER, $user_masterd) AC_SUBST(RAPI_USER, $user_rapi) AC_SUBST(CONFD_USER, $user_confd) AC_SUBST(NODED_USER, $user_noded) +AC_SUBST(MOND_USER, $user_mond) # --with-group-prefix=... AC_ARG_WITH([group-prefix], @@ -265,19 +255,22 @@ AC_ARG_WITH([group-prefix], group_confd="${withval}confd"; group_masterd="${withval}masterd"; group_noded="$group_default"; - group_daemons="${withval}daemons";], + group_daemons="${withval}daemons"; + group_mond="$group_default"], [group_rapi="$group_default"; group_admin="$group_default"; group_confd="$group_default"; group_masterd="$group_default"; group_noded="$group_default"; - group_daemons="$group_default"]) + group_daemons="$group_default"; + group_mond="$group_default"]) AC_SUBST(RAPI_GROUP, $group_rapi) AC_SUBST(ADMIN_GROUP, $group_admin) AC_SUBST(CONFD_GROUP, $group_confd) AC_SUBST(MASTERD_GROUP, $group_masterd) AC_SUBST(NODED_GROUP, $group_noded) AC_SUBST(DAEMONS_GROUP, $group_daemons) +AC_SUBST(MOND_GROUP, $group_mond) # Print the config to the user AC_MSG_NOTICE([Running ganeti-masterd as $group_masterd:$group_masterd]) @@ -467,14 +460,6 @@ then AC_MSG_WARN([qemu-img not found, using ovfconverter will not be possible]) fi -# --enable-htools-rapi -HTOOLS_RAPI= -AC_ARG_ENABLE([htools-rapi], - [AS_HELP_STRING([--enable-htools-rapi], - [enable use of curl in the Haskell code (default: check)])], - [], - [enable_htools_rapi=check]) - # --enable-confd ENABLE_CONFD= AC_ARG_ENABLE([confd], @@ -483,10 +468,10 @@ AC_ARG_ENABLE([confd], [], [enable_confd=check]) -ENABLE_MONITORING= +ENABLE_MOND= AC_ARG_ENABLE([monitoring], [AS_HELP_STRING([--enable-monitoring], - [enable the ganeti monitoring agent (default: check)])], + [enable the ganeti monitoring daemon (default: check)])], [], [enable_monitoring=check]) @@ -517,29 +502,13 @@ fi # check for modules, first custom/special checks AC_MSG_NOTICE([checking for required haskell modules]) -HS_NOCURL=-DNO_CURL -if test "$enable_htools_rapi" != no; then - AC_GHC_PKG_CHECK([curl], [HS_NOCURL=], []) - if test -n "$HS_NOCURL"; then - if test "$enable_htools_rapi" = check; then - AC_MSG_WARN(m4_normalize([The curl library was not found, Haskell - code will be compiled without RAPI support])) - else - AC_MSG_FAILURE(m4_normalize([The curl library was not found, but it has - been requested])) - fi - else - AC_MSG_NOTICE([Enabling curl/RAPI/RPC usage in Haskell code]) - fi -fi -AC_SUBST(HS_NOCURL) - HS_PARALLEL3= AC_GHC_PKG_CHECK([parallel-3.*], [HS_PARALLEL3=-DPARALLEL3], [AC_GHC_PKG_REQUIRE(parallel)], t) AC_SUBST(HS_PARALLEL3) # and now standard modules +AC_GHC_PKG_REQUIRE(curl) AC_GHC_PKG_REQUIRE(json) AC_GHC_PKG_REQUIRE(network) AC_GHC_PKG_REQUIRE(mtl) @@ -576,29 +545,52 @@ fi AC_SUBST(ENABLE_CONFD, $has_confd) AM_CONDITIONAL([ENABLE_CONFD], [test x$has_confd = xTrue]) -#extra modules for monitoring agent functionality +#extra modules for monitoring daemon functionality has_monitoring=False if test "$enable_monitoring" != no; then MONITORING_PKG= AC_GHC_PKG_CHECK([attoparsec], [], [MONITORING_PKG="$MONITORING_PKG attoparsec"]) + AC_GHC_PKG_CHECK([snap-server], [], + [MONITORING_PKG="$MONITORING_PKG snap-server"]) + AC_GHC_PKG_CHECK([process], [], + [MONITORING_PKG="$MONITORING_PKG process"]) + MONITORING_DEP= + if test "$has_confd" = False; then + MONITORING_DEP="$MONITORING_DEP confd" + fi + has_monitoring_pkg=False if test -z "$MONITORING_PKG"; then - has_monitoring=True + has_monitoring_pkg=True elif test "$enable_monitoring" = check; then AC_MSG_WARN(m4_normalize([The required extra libraries for the monitoring - agent were not found ($MONITORING_PKG), + daemon were not found ($MONITORING_PKG), monitoring disabled])) else AC_MSG_FAILURE(m4_normalize([The monitoring functionality was requested, but required libraries were not found: $MONITORING_PKG])) fi + has_monitoring_dep=False + if test -z "$MONITORING_DEP"; then + has_monitoring_dep=True + elif test "$enable_monitoring" = check; then + AC_MSG_WARN(m4_normalize([The optional Ganeti components required for the + monitoring agent were not enabled + ($MONITORING_DEP), monitoring disabled])) + else + AC_MSG_FAILURE(m4_normalize([The monitoring functionality was requested, but + required optional Ganeti components were not + found: $MONITORING_DEP])) + fi + fi -if test "$has_monitoring" = True; then +if test "$has_monitoring_pkg" = True -a "$has_monitoring_dep" = True; then + has_monitoring=True AC_MSG_NOTICE([Enabling the monitoring agent usage]) fi -AC_SUBST(ENABLE_MONITORING, $has_monitoring) -AM_CONDITIONAL([ENABLE_MONITORING], [test "$has_monitoring" = True]) +AC_SUBST(ENABLE_MOND, $has_monitoring) +AM_CONDITIONAL([ENABLE_MOND], [test "$has_monitoring" = True]) # development modules HS_NODEV= @@ -612,6 +604,8 @@ AC_GHC_PKG_CHECK([temporary], [], [HS_NODEV=1]) # of the checks. AC_GHC_PKG_CHECK([attoparsec], [], [HS_NODEV=1]) AC_GHC_PKG_CHECK([vector], [], [HS_NODEV=1]) +AC_GHC_PKG_CHECK([process], [], + [MONITORING_PKG="$MONITORING_PKG process"]) if test -n "$HS_NODEV"; then AC_MSG_WARN(m4_normalize([Required development modules were not found, you won't be able to run Haskell unittests])) @@ -641,8 +635,8 @@ AC_ARG_ENABLE([split-query], ;; esac ]], - [[case "x${has_confd}x${HS_NOCURL}x" in - xTruexx) + [[case "x${has_confd}x" in + xTruex) enable_split_query=True ;; *) @@ -655,10 +649,6 @@ if test x$enable_split_query = xTrue -a x$has_confd != xTrue; then AC_MSG_ERROR([Split queries require the confd daemon]) fi -if test x$enable_split_query = xTrue -a x$HS_NOCURL != x; then - AC_MSG_ERROR([Split queries require the htools-rapi feature (curl library)]) -fi - if test x$enable_split_query = xTrue; then AC_MSG_NOTICE([Split query functionality enabled]) fi @@ -768,7 +758,7 @@ fi AC_SUBST(MAN_HAS_WARNINGS) # Check for Python -AM_PATH_PYTHON(2.4) +AM_PATH_PYTHON(2.6) AC_PYTHON_MODULE(OpenSSL, t) AC_PYTHON_MODULE(simplejson, t) @@ -777,6 +767,8 @@ AC_PYTHON_MODULE(pyinotify, t) AC_PYTHON_MODULE(pycurl, t) AC_PYTHON_MODULE(bitarray, t) AC_PYTHON_MODULE(ipaddr, t) +AC_PYTHON_MODULE(yaml, t) +AC_PYTHON_MODULE(mock) AC_PYTHON_MODULE(affinity) AC_PYTHON_MODULE(paramiko)