Skip to content

Commit 5b4e976

Browse files
author
Gary Larizza
committed
Merge pull request #137 from hunner/php_support
Add php support
2 parents dc5ee12 + 02c4da4 commit 5b4e976

File tree

3 files changed

+78
-0
lines changed

3 files changed

+78
-0
lines changed

manifests/params.pp

+4
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
$ruby_package_name = 'ruby-mysql'
4242
$ruby_package_provider = 'gem'
4343
$python_package_name = 'MySQL-python'
44+
$php_package_name = 'php-mysql'
4445
$java_package_name = 'mysql-connector-java'
4546
$root_group = 'root'
4647
$ssl_ca = '/etc/mysql/cacert.pem'
@@ -60,6 +61,7 @@
6061
$log_error = '/var/log/mysql/error.log'
6162
$ruby_package_name = 'libmysql-ruby'
6263
$python_package_name = 'python-mysqldb'
64+
$php_package_name = 'php5-mysql'
6365
$java_package_name = 'libmysql-java'
6466
$root_group = 'root'
6567
$ssl_ca = '/etc/mysql/cacert.pem'
@@ -80,6 +82,7 @@
8082
$ruby_package_name = 'ruby-mysql'
8183
$ruby_package_provider = 'gem'
8284
$python_package_name = 'databases/py-MySQLdb'
85+
$php_package_name = 'php5-mysql'
8386
$java_package_name = 'databases/mysql-connector-java'
8487
$root_group = 'wheel'
8588
$ssl_ca = undef
@@ -101,6 +104,7 @@
101104
$ruby_package_name = 'ruby-mysql'
102105
$ruby_package_provider = 'gem'
103106
$python_package_name = 'MySQL-python'
107+
$php_package_name = 'php-mysql'
104108
$java_package_name = 'mysql-connector-java'
105109
$root_group = 'root'
106110
$ssl_ca = '/etc/mysql/cacert.pem'

manifests/php.pp

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Class: mysql::php
2+
#
3+
# This class installs the php libs for mysql.
4+
#
5+
# Parameters:
6+
# [*ensure*] - ensure state for package.
7+
# can be specified as version.
8+
# [*packagee*] - name of package
9+
#
10+
class mysql::php(
11+
$package_name = $mysql::params::php_package_name,
12+
$package_ensure = 'present'
13+
) inherits mysql::params {
14+
15+
package { 'php-mysql':
16+
ensure => $package_ensure,
17+
name => $package_name,
18+
}
19+
20+
}

spec/classes/mysql_php_spec.rb

+54
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
require 'spec_helper'
2+
3+
describe 'mysql::php' do
4+
5+
describe 'on a debian based os' do
6+
let :facts do
7+
{ :osfamily => 'Debian'}
8+
end
9+
it { should contain_package('php-mysql').with(
10+
:name => 'php5-mysql',
11+
:ensure => 'present'
12+
)}
13+
end
14+
15+
describe 'on a freebsd based os' do
16+
let :facts do
17+
{ :osfamily => 'FreeBSD'}
18+
end
19+
it { should contain_package('php-mysql').with(
20+
:name => 'php5-mysql',
21+
:ensure => 'present'
22+
)}
23+
end
24+
25+
describe 'on a redhat based os' do
26+
let :facts do
27+
{:osfamily => 'Redhat'}
28+
end
29+
it { should contain_package('php-mysql').with(
30+
:name => 'php-mysql',
31+
:ensure => 'present'
32+
)}
33+
describe 'when parameters are supplied' do
34+
let :params do
35+
{:package_ensure => 'latest', :package_name => 'php53-mysql'}
36+
end
37+
it { should contain_package('php-mysql').with(
38+
:name => 'php53-mysql',
39+
:ensure => 'latest'
40+
)}
41+
end
42+
end
43+
44+
describe 'on any other os' do
45+
let :facts do
46+
{:osfamily => 'foo'}
47+
end
48+
49+
it 'should fail' do
50+
expect { subject }.to raise_error(/Unsupported osfamily: foo/)
51+
end
52+
end
53+
54+
end

0 commit comments

Comments
 (0)