Permalink
Browse files

COOK-722, add yum::ius recipe

  • Loading branch information...
1 parent 19a2e32 commit 1c8b13ac36a4da5925cc54f99d2dffab9744babd @jtimberman jtimberman committed Sep 15, 2011
Showing with 42 additions and 2 deletions.
  1. +8 −0 README.md
  2. +1 −1 attributes/default.rb
  3. +1 −1 recipes/epel.rb
  4. +32 −0 recipes/ius.rb
View
8 README.md
@@ -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
=======
@@ -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
===================
View
2 attributes/default.rb
@@ -22,7 +22,6 @@
default[:yum][:exclude]
default[:yum][:installonlypkgs]
-
default['yum']['epel_release'] = case node['platform_version'].to_i
when 6
"6-5"
@@ -31,3 +30,4 @@
when 4
"4-10"
end
+default['yum']['ius_release'] = '1.0-8'
View
2 recipes/epel.rb
@@ -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
View
32 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.