Honza Horak píše v St 04. 02. 2015 v 11:58 +0100: > On 02/02/2015 05:01 PM, Miloslav Trmač wrote: > > Hello, > >> in Fedora Rawhide there is a new major version of mongoDB 2.6. With this > >> new version names of mongoDB configuration files will be changed - to > >> reflect names used in upstream rpms > >> (http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/RPMS/ ) > >> > >> mongodb.conf -> mongod.conf > >> mongodb-shard.conf -> mongos.conf > >> > >> In Fedora mongodb.conf is used from version 12. > >> > >> If this change should be a problem, please contact me... > > > > Is it possible to do something (write RPM scriptlets, or perhaps ship symlinks) to make this transparent and effortless to users? > > Let's look at it closer.. First, we need to do all the magic only if > previous version is < 2.6. > > One idea is that we could use %pre script and do the following in it: > If /etc/mongodb.conf is there (that means we upgrade from 2.4), move it > to /etc/monogd.conf and create a symlink /etc/mongodb.conf > > /etc/mongod.conf > > There is one issue I see with this way -- generally when we bring new > content during update and the config file hasn't changed, rpm replaces > the content and creates <config>.rpmnew otherwise. The solution above > wouldn't behave like this. > > Another idea is that we can just ship new config and let the old one > either be backed-up (into <config>.rpmsave in case it has been changed) > or removed. Then in case /etc/mongodb.conf.rpmsafe exists, its content > could be copied to /etc/mongod.conf, while the original /etc/mongod.conf > would be copied into /etc/mongod.conf.rpmnew. Hopefully, that should > handle the same user experience as when user upgrades ordinary. > With the rename of mongodb.conf and mongodb-shard.conf there are also changes in /etc/sysconfig/mongod and /etc/sysconfig/mongos. In these files there is mainly one option which determines config file and these files are marked as %config(noreplace). So it complicates upgrade... 1. /etc/sysconf/mongod changed && /etc/mongodb.conf changed -> use these changed files with same names 2. /etc/sysconf/mongod changed && /etc/mongodb.conf original -> use changed mongod file and rename mongod.conf back to mongodb.conf 1. /etc/sysconf/mongod original && /etc/mongodb.conf changed -> use new mongod file and rename changed mongodb.conf to mongod.conf 2. /etc/sysconf/mongod original && /etc/mongodb.conf original -> use new files And the same for /etc/sysconfig/mongos and mongodb-shard.conf... I have implemented this in %triggerpostun server -- %{name}-server < 2.6.7-3 ( http://pkgs.fedoraproject.org/cgit/mongodb.git/tree/mongodb.spec#n291 ) But it is quite complicated. Is it required to check changes in sysconfig files? Not enough to check only config files? Or what else should be done? Thanks, Marek -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct