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@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
On Sep 7, 2010, at 10:47 AM, Gabriel Tabares wrote:
Any ideas? I am quite baffled and would like to get this to work as soon as possible.
please post the output of `rpm -qp --requires <path to the adm-release RPM>`.
thanks, -steve
-- If this were played upon a stage now, I could condemn it as an improbable fiction. - Fabian, Twelfth Night, III,v http://five.sentenc.es
On Sep 7, 2010, at 11:28 AM, Gabriel Tabares wrote:
tomcat-6.0.26-1.13 adm-app-conf-18-2010.09.01 jdk-1.6.0_20-2.0 ant-1.8.1-1
there's your problem. in the specfile, these dependencies should be specified as:
Requires: tomcat >= 6.0.26 Requires: adm-app-conf >= 18 ...
relevant API documentation is here:
http://rpm5.org/docs/api/dependencies.html
-steve
-- If this were played upon a stage now, I could condemn it as an improbable fiction. - Fabian, Twelfth Night, III,v http://five.sentenc.es
On 07/09/2010 17:47, Steve Huff wrote:
On Sep 7, 2010, at 11:28 AM, Gabriel Tabares wrote:
tomcat-6.0.26-1.13 adm-app-conf-18-2010.09.01 jdk-1.6.0_20-2.0 ant-1.8.1-1
there's your problem. in the specfile, these dependencies should be specified as:
Requires: tomcat>= 6.0.26 Requires: adm-app-conf>= 18 ...
relevant API documentation is here:
Thanks, that fixed it.
I never read the documentation and was fooled by the fact that it listed the rpms with the right version number.