Your message dated Fri, 10 Jun 2011 21:35:00 +0000 (UTC)
with message-id <[email protected]>
and subject line rotation script is gone
has caused the Debian Bug report #63119,
regarding cvs rotation scripts break on some repository names
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
63119: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=63119
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: cvs
Version: 1.10.7-7

The problem stems from the shell code used to store individual rotation
times, and the fact that shell variables can't have characters like
hyphens in them.  Thus if one creates a repository like /var/cvs/foo-bar
and requests an 8 day rotation period you'll end up with a
/etc/cvs-cron.conf that looks like:
ROT_HIST="yes"
REPOS="/var/cvs/foo-bar"
ROTKEEP="individual"
ROTKEEP__var_cvs_foo-bar="8"

/etc/cron.weekly/cvs will try to source that file and it will puke
as "ROTKEEP__var_cvs_foo-bar" is not a valid shell variable name.

I don't have time to write up a fix to all this but one possible avenue of
recourse is to use positional ROTKEEP_* instances rather than named coded
ones.  eg, given REPOS="/var/cvs/foo:/var/cvs/bar:/var/cvs/baz-quux" and
ROTKEEP="individual" you'd have ROTKEEP_1 through ROTKEEP_3, where _1 maps
to foo, _2 to bar, and _3 to baz-quux.  I know this isn't as human
readable but to combat that when you generate the file why not include
some comments:

ROT_HIST="yes"
REPOS="/var/cvs/foo:/var/cvs/bar:/var/cvs/baz-quux"
ROTKEEP="individual"
ROTKEEP_1="4"   # /var/cvs/foo
ROTKEEP_2="4"   # /var/cvs/bar
ROTKEEP_3="12"  # /var/cvs/baz-quux

Add a counter to the for loops in cron.weekly/cvs and pass this numeric
suffix into the rotate function along with the repository name, and you
should have a working replacement for the current method.  I imagine some
hacking to the debconf scripts would be in order as well, but I haven't
looked into it to seriously.


I am using Debian Linux 2.2 on an Alpha, not that it has any bearing on
this whatsoever.


-jamie


--- End Message ---
--- Begin Message ---
Hi,

the cvs package does not maintain any local repositories any more,
so your problem should be gone now.

bye,
//mirabilos
-- 
22:59⎜<Vutral> glaub ich termkit is kompliziert | glabe nicht das man
damit schneller arbeitet | reizüberflutung │ wie windows │ alles evil
zuviel bilder │ wie ein spiel | 23:00⎜<Vutral> die meisten raffen auch
nicht mehr von windows | 23:01⎜<Vutral> bilderbücher sind ja auch nich
wirklich verbreitet als erwachsenen literatur   ‣ who needs GUIs thus?


--- End Message ---

Reply via email to