Can’t get yum repository (ius) to install because of (epel) dependency that seems to be installed

chefdependenciesepelyum

So I'm trying to install the epel repository and then also install the ius repository.

I'm managing this server with chef, and my run list goes

...
"recipe[yum::yum]",
"recipe[yum::epel]",
"recipe[yum::ius]",
...

And it installs the epel repository correctly, contents of epel.repo in /etc/yum.repos.d

# Generated by Chef for chef-test.midwestern.de
# Local modifications will be overwritten.
[epel]
name=Extra Packages for Enterprise Linux
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
enabled=1

and it shows as enabled for yum repolist all

but when I do this

rpm  -U /var/chef/cache/ius-release-1.0-10.ius.el6.noarch.rpm

It outputs this

warning: /var/chef/cache/ius-release-1.0-10.ius.el6.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID 9cd4953f: NOKEY
error: Failed dependencies:
    epel-release is needed by ius-release-1.0-10.ius.el6.noarch

Ideas?

Best Answer

To supplement what NickW said, I'd debate whether you have installed the dependency.

You're using chef to spraypaint a new dot-repo file into the system. While that's neat, that's semantically identical to hand-copying a dot-repo file into the system, and you'd never responsibly do that. Neither of those actions actually install an RPM dependency: they're just copying files into the system in a barely- or un-trackable manner, since they don't register the copied file with the system-wide meta-info database which is used exclusively and expressly for dependency calculation. And that's why, despite your chef recipe installing a file into the system, its contents tracked in the third-party chef checksums database, you are still running into dependency issues.

I use chef. It's a fine tool. As it's very effective at allowing us to do well or poorly at vast scale, don't forget you're still managing Linux.

SF won't let me comment properly as I lack the 50 magic beans.