[CentOS] Wrapper package / yum repository

Tue Sep 7 14:47:53 UTC 2010
Gabriel Tabares <gabriel.tabares at roboreus.com>

  Hi,

I am setting up a yum repository for our applications and I am having a 
bit of trouble. I copy  the files to a webserver, run createrepo and 
then configure the servers to use it.

One of the RPMs is a "release" package that includes exact versions of 
all the binary and configuration files as dependencies so we can do 
"packaged releases" and, if we want to revert to a previous version, we 
can force it by installing this package (and the yum-downgrade plugin).

The issue I am having is that RPM/yum seems to be unable to correctly 
resolve the dependencies:

If I do "yum install adm-release" I get errors about lots of missing 
dependencies. EG:

[root at host01 yum.repos.d]# yum install adm-release
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package adm-release.noarch 0:1-1 set to be updated
--> Processing Dependency: adm-app-conf-18-2010.09.01 for package: 
adm-release
--> Processing Dependency: ant-1.8.1-1 for package: adm-release
--> Processing Dependency: jdk-1.6.0_20-2.0 for package: adm-release
....
--> Finished Dependency Resolution
adm-release-1-1.noarch from myrepo has depsolving problems
   --> Missing Dependency: jdk-1.6.0_20-2.0 is needed by package 
adm-release-1-1.noarch (myrepo)
adm-release-1-1.noarch from myrepo has depsolving problems
   --> Missing Dependency: adm-app-conf-18-2010.09.01 is needed by 
package adm-release-1-1.noarch (myrepo)
adm-release-1-1.noarch from myrepo has depsolving problems
   --> Missing Dependency: ant-1.8.1-1 is needed by package 
adm-release-1-1.noarch (myrepo)
adm-release-1-1.noarch from myrepo has depsolving problems
   --> Missing Dependency: geosweep-libquantis-0.1.0-1.1 is needed by 
package adm-release-1-1.noarch (myrepo)
....
Error: Missing Dependency: ant-1.8.1-1 is needed by package 
adm-release-1-1.noarch (myrepo)
Error: Missing Dependency: jdk-1.6.0_20-2.0 is needed by package 
adm-release-1-1.noarch (myrepo)
Error: Missing Dependency: adm-app-conf-18-2010.09.01 is needed by 
package adm-release-1-1.noarch (myrepo)
You could try using --skip-broken to work around the problem
  You could try running: package-cleanup --problems
                         package-cleanup --dupes
                         rpm -Va --nofiles --nodigest


If I try to install some of the packages on its own, they work just fine:

# yum install ant-1.8.1-1
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ant.noarch 0:1.8.1-1 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

==============================================================================================================================================================================
  Package                                  
Arch                                     
Version                                   
Repository                                  Size
==============================================================================================================================================================================
Installing:
ant                                      
noarch                                   
1.8.1-1                                   myrepo     
                                   2.2 M

Transaction Summary
==============================================================================================================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 2.2 M

And, even worse, some of the packages are already installed:

# yum install jdk-1.6.0_20-2.0
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Package jdk-1.6.0_20-2.0.x86_64 already installed and latest version
Nothing to do

Any ideas? I am quite baffled and would like to get this to work as soon 
as possible.

Thanks

Gabriel