|
From: Jason H. <jh...@ap...> - 2011-06-03 22:24:04
|
As far as debugging this you can run the client with the --debug flag. This will show you the XML messages exchanged with the server. It will also turn on debugging on the server just for that session, causing the server to write debug messages to <etchserver>/log/etchdebug.log That said, it looks like your directory structure is not correct. The etch server looks for the configuration repository in /etc/etchserver/ by default. You can change that by setting the "etchserverbase" environment variable before starting the server. The /etc/etchserver directory is generally separate from the directory where you install the etch server itself, although you could certainly install it into a subdirectory of /etc/etchserver if you wanted. The directory structure within /etc/etchserver would be what you have under /etch/root in your listing below. I.e. the nodetagger script, the trunk directory in your case, etc. In general most or all of /etc/etchserver is expected to come out of your local revision control system. Jason On Jun 2, 2011, at 2:47 PM, Johnston, Nathaniel wrote: > Thanks for your response - the nokogiri library has been rock-solid and very stable. Now I was wondering if you could help me figure out why the nodegrouping stuff does not seem to be applying correctly to my hosts. > > [root@edgenode-03p ~]# etch --list-files > Files under management: > [root@edgenode-03p ~]# > > But I can use etch to fetch files freely. For example, /etc/issue.net and /etc/motd have already been configured on the host in question. I have this in nodes.xml: > > <node name="edgenode-03p.internal"> > <group> etch_test_hosts </group> > </node> > > I do not get an error on the etch server indicating that the host was not found in nodes.xml, so I believe that the values are correct, even if they are not having any effect. > > Perhaps I have my files in the incorrect location. Given an etch installed in /etch on the etch server, I have the following directory hierarchy for the etch server application, which has evolved by running etch many times and evolving it until I could etch various files and not get big hairy errors. > > /etch - root of application, with "app", "config", "public", etc. subdirectories > /etch/root > /etch/root/nodegrouper - external script that returns carriage-return-delimited roles for a given FQDN > /etch/root/nodetagger - always returns "trunk" > /etch/root/orig - Seems to have been automatically created > /etch/root/trunk > /etch/root/trunk/commands.dtd > /etch/root/trunk/config.dtd > /etch/root/trunk/defaults.xml > /etch/root/trunk/nodegrouper - symlink to ../nodegrouper > /etch/root/trunk/nodegroups.dtd > /etch/root/trunk/nodegroups.xml > /etch/root/trunk/nodes.xml - has all the same info that nodegrouper would return > /etch/root/trunk/warning.txt > /etch/root/trunk/source > /etch/root/trunk/source/etc > /etch/root/trunk/source/etc/motd > /etch/root/trunk/source/etc/motd/config.xml - see below > /etch/root/trunk/source/etc/motd/motd.template > > Here is what the config.xml has - there is nothing in it that would preclude it from getting the motd file: > > <config> > <file> > <owner>root</owner> > <group>sys</group> > <perms>644</perms> > <warning_file></warning_file> > <source> > <template>motd.template</template> > </source> > </file> > </config> > > So I would expect that I would be able to do "etch --list-files" and be able to get back some kind of output that includes /etc/motd - but it seems that I can not. What am I doing wrong? > > Thanks, > > --N. |