Skip to content

Commit

Permalink
COOK-722, add yum::ius recipe
Browse files Browse the repository at this point in the history
  • Loading branch information
jtimberman committed Sep 15, 2011
1 parent 19a2e32 commit 1c8b13a
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 2 deletions.
8 changes: 8 additions & 0 deletions README.md
Expand Up @@ -20,6 +20,7 @@ Attributes
==========

* `node['yum']['epel_release']` - Set the epel release version based on `node['platform_version']`.
* `node['yum']['ius_release']` - Set the IUS release to install.

Recipes
=======
Expand All @@ -37,6 +38,13 @@ epel

Installs the EPEL repository via RPM. Uses the `node['yum']['epel_release']` attribute to select the right version of the repository package to install. Also uses the node's platform version (as an integer) for the major release of EL.

ius
----

Installs the [IUS Community repositories](http://iuscommunity.org/Repos) via RPM. Uses the `node['yum']['ius_release']` attribute to select the right versino of the package to install.

The IUS repository requires EPEL, and the recipe includes `yum::epel` to install this.

Resources/Providers
===================

Expand Down
2 changes: 1 addition & 1 deletion attributes/default.rb
Expand Up @@ -22,7 +22,6 @@
default[:yum][:exclude]
default[:yum][:installonlypkgs]


default['yum']['epel_release'] = case node['platform_version'].to_i
when 6
"6-5"
Expand All @@ -31,3 +30,4 @@
when 4
"4-10"
end
default['yum']['ius_release'] = '1.0-8'
2 changes: 1 addition & 1 deletion recipes/epel.rb
Expand Up @@ -25,7 +25,7 @@

remote_file "#{Chef::Config[:file_cache_path]}/epel-release-#{epel}.noarch.rpm" do
source "http://download.fedoraproject.org/pub/epel/#{major}/i386/epel-release-#{epel}.noarch.rpm"
not_if "rpm -qa | grep -qx 'epel-release-#{epel}'"
not_if "rpm -qa | grep -qx '^epel-release-#{epel}.noarch$'"
end


Expand Down
32 changes: 32 additions & 0 deletions recipes/ius.rb
@@ -0,0 +1,32 @@
#
# Author:: Joshua Timberman (<joshua@opscode.com>)
# Cookbook Name:: yum
# Recipe:: ius
#
# Copyright:: Copyright (c) 2011 Opscode, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

include_recipe "yum::epel"

major = node['platform_version'].to_i
ius = node['yum']['ius_release']

remote_file "#{Chef::Config[:file_cache_path]}/ius-release-#{ius}.ius.el#{major}.noarch.rpm" do
source "http://dl.iuscommunity.org/pub/ius/stable/Redhat/#{major}/i386/ius-release-#{ius}.ius.el#{major}.noarch.rpm"
not_if "rpm -qa | grep -qx 'ius-release-#{ius}'"
end

rpm_package "ius-release" do
source "#{Chef::Config[:file_cache_path]}/ius-release-#{ius}.ius.el#{major}.noarch.rpm"
end

0 comments on commit 1c8b13a

Please sign in to comment.