RFC: cman changes
PATCH 1/1 RFC: cman changes
This patch changes the way cman works internally - it decouples it from CCS so that any configuration system can be used. Provided the necessary keys are filled in the objdb then cman can use them. Currently the only alternative is /etc/ais/openais.conf, but it should be relatively easy to add others (eg LDAP) as people feel the need.
Patrick
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cman3.diff
Type: text/x-patch
Size: 79051 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/cluster-devel/attachments/20080103/5e7dc316/attachment.bin>
PATCH 1/1 RFC: cman changes
Quoted 8 lines · Patrick Caulfeld
This patch changes the way cman works internally - it decouples it from CCS so that any configuration system can be used. Provided the necessary keys are filled in the objdb then cman can use them. Currently the only alternative is
/etc/ais/openais.conf, but it should be relatively easy to add others (eg LDAP) as people feel the need.Patrick
Only a few _minor_ details:
the patch needs a better rediff. This one doesn't apply clean on top of HEAD but nothing too bad :)
Some bits:
+ if (comline->two_node) {
+ snprintf(scratch, sizeof(scratch), "CMAN_2NODE=true");
+ envp[envptr++] = strdup(scratch);
+ }
this one could land anytime (with it's getenv counterpart)
----
+ .name = (char *)"openais CMAN membership
service 2.50",
I think we should be targetting 2.9x in preparation for 3.0
----
+ // TODO get config_version ??
:)
----
For the Makefile, just commit this one instead. Diff from the one that I did send you early is copyright update and do not link with libccs if we don't need to. Sorry for this double one :)
Thanks
Fabio
###############################################################################
###############################################################################
##
## Copyright (C) 2004-2008 Red Hat, Inc. All rights reserved. ##
## This copyrighted material is made available to anyone wishing to use, ## modify, copy, or redistribute it subject to the terms and conditions ## of the GNU General Public License v.2.
##
###############################################################################
###############################################################################
TARGET1= service_cman.lcrso
TARGET2= config_ccs.lcrso
TARGET3= config_cmanpre.lcrso
LCRSOT=$(TARGET1) $(TARGET2) $(TARGET3)
all: depends ${TARGET1} ${TARGET2} ${TARGET3}
include ../../make/defines.mk
include $(OBJDIR)/make/cobj.mk
include $(OBJDIR)/make/clean.mk
include $(OBJDIR)/make/install.mk
include $(OBJDIR)/make/uninstall.mk
CFLAGS += -fPIC
CFLAGS += -I${ccsincdir} -I${openaisincdir}
CFLAGS += -I${incdir}
CCS_LDFLAGS += -L${ccslibdir} -lccs
OBJS1= daemon.o \
logging.o \
ais.o \
commands.o \
barrier.o \
cmanconfig.o
OBJS2= config.o logging.o
OBJS3= cman-preconfig.o \
logging.o
${TARGET1}: ${OBJS1}
$(CC) -shared -Wl,-soname,$@ -o $@ $^ $(LDFLAGS)
${TARGET2}: ${OBJS2}
$(CC) -shared -Wl,-soname,$@ -o $@ $^ $(LDFLAGS) $(CCS_LDFLAGS)
${TARGET3}: ${OBJS3}
$(CC) -shared -Wl,-soname,$@ -o $@ $^ $(LDFLAGS)
depends:
$(MAKE) -C ../lib all
clean: generalclean
--
I'm going to make him an offer he can't refuse.