I think you want this: http://www.cfengine.org/manuals/cf3-reference.html#move_005fobstructions-in-files
On Mon, Dec 21, 2009 at 3:43 PM, Robert Markula <robert.mark...@gmx.net> wrote: > Hi again, > > Brendan Strejcek wrote: >> Set classes based on what kind of file /srv/www is. >> >> http://www.cfengine.org/manuals/cf3-reference.html#Function-islink >> http://www.cfengine.org/manuals/cf3-reference.html#Function-isplain >> http://www.cfengine.org/manuals/cf3-reference.html#Function-isdir >> >> Conditionals should allow you to avoid any race conditions. >> >> Let me know if you need specific examples, or if that is enough to go on. > > > No matter how I write my test promises, I always end up with the error > message "!! Promise constraint conflicts - /var/www/. cannot be > renamed/moved and exist there at the same time". > > *** FIRST EXAMPLE *** - does not work: > <snip> > classes: > SRV_APACHE:: > "isdir" expression => isdir("/var/www"); > files: > SRV_APACHE.isdir:: > "/var/www/." > rename => MoveTo("/srv/www/."), > perms => PermsChgrp("www-data"), > create => "true"; > "/var/www" > link_from => LinkFrom("/srv/www"), > perms => PermsChgrp("www-data"); > </snip> > > *** SECOND EXAMPLE (just to make sure...) *** - same error message: > <snip> > classes: > SRV_APACHE:: > "isdir" expression => isdir("/var/www"); > "islink" expression => islink("/var/www"); > files: > SRV_APACHE.isdir:: > "/var/www/." > rename => MoveTo("/srv/www/."), > perms => PermsChgrp("www-data"), > create => "true"; > SRV_APACHE.!islink:: > "/var/www" > link_from => LinkFrom("/srv/www"), > perms => PermsChgrp("www-data"); > </snip> > > So the race condition is avoided, but cfengine still complains. Ideas > anyone? > > Cheers, > Robert > > _______________________________________________ > Help-cfengine mailing list > Help-cfengine@cfengine.org > https://cfengine.org/mailman/listinfo/help-cfengine > _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine