Compare commits
29 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
017a749d13 | ||
|
|
e37f6d5af6 | ||
|
|
c797e52851 | ||
|
|
4ab58a2f88 | ||
|
|
3afa0813ea | ||
|
|
4d7154516d | ||
|
|
d027d35e2d | ||
|
|
30b07259a2 | ||
|
|
6365fcd9f2 | ||
|
|
a671ad7cc4 | ||
|
|
0e4dc2dd81 | ||
|
|
4c1161891b | ||
|
|
98e1d30235 | ||
|
|
b5854b3ef3 | ||
|
|
e6be2ed785 | ||
|
|
b547e53a8b | ||
|
|
3b674ac225 | ||
|
|
8a7c2fce30 | ||
|
|
babdde5f02 | ||
|
|
0b541605e1 | ||
|
|
8aa2053c9d | ||
|
|
12544569fb | ||
|
|
e09792cea9 | ||
|
|
3b00510615 | ||
|
|
07ea32a90c | ||
|
|
c503afd73e | ||
|
|
cc1dd231e3 | ||
|
|
221a6d3dab | ||
|
|
7efde2db1e |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,2 +1,3 @@
|
|||||||
pkg/
|
pkg/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
metadata.json
|
||||||
|
|||||||
12
CHANGELOG
12
CHANGELOG
@@ -1,3 +1,15 @@
|
|||||||
|
2012-11-15 Scott Schneider <sschneider@puppetlabs.com> - 0.2.0
|
||||||
|
* Add Solaris support
|
||||||
|
|
||||||
|
2011-06-16 Jeff McCune <jeff@puppetlabs.com> - 0.1.5
|
||||||
|
* Add Debian based distro (Lucid) support
|
||||||
|
|
||||||
|
2011-06-02 Jeff McCune <jeff@puppetlabs.com> - 0.1.4
|
||||||
|
* Fix class composition ordering problems
|
||||||
|
|
||||||
|
2011-05-28 Jeff McCune <jeff@puppetlabs.com> - 0.1.3
|
||||||
|
* Remove stages
|
||||||
|
|
||||||
2011-05-26 Jeff McCune <jeff@puppetlabs.com> - 0.1.2
|
2011-05-26 Jeff McCune <jeff@puppetlabs.com> - 0.1.2
|
||||||
* Changes JRE/JDK selection class parameter to $distribution
|
* Changes JRE/JDK selection class parameter to $distribution
|
||||||
|
|
||||||
|
|||||||
17
LICENSE
Normal file
17
LICENSE
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
Puppet OpenNebula Module - Puppet module for managing OpenNebula
|
||||||
|
|
||||||
|
Copyright (C) 2011 Puppet Labs Inc
|
||||||
|
|
||||||
|
Puppet Labs can be contacted at: info@puppetlabs.com
|
||||||
|
|
||||||
|
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.
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
name 'puppetlabs-java'
|
name 'puppetlabs-java'
|
||||||
version '0.1.2'
|
version '0.2.0'
|
||||||
source 'git://github.com/puppetlabs/puppetlabs-java'
|
source 'git://github.com/puppetlabs/puppetlabs-java'
|
||||||
author 'puppetlabs'
|
author 'puppetlabs'
|
||||||
license 'Apache'
|
license 'Apache'
|
||||||
@@ -8,4 +8,4 @@ description 'Manage the official Java runtime'
|
|||||||
project_page 'https://github.com/puppetlabs/puppetlabs-java'
|
project_page 'https://github.com/puppetlabs/puppetlabs-java'
|
||||||
|
|
||||||
## Add dependencies, if any:
|
## Add dependencies, if any:
|
||||||
dependency 'puppetlabs/stdlib', '>= 0.1.3'
|
dependency 'puppetlabs/stdlib', '>= 0.1.6'
|
||||||
|
|||||||
@@ -2,7 +2,14 @@
|
|||||||
|
|
||||||
Manage the Java runtime for use with other application software.
|
Manage the Java runtime for use with other application software.
|
||||||
|
|
||||||
Currently this simply deploys the package on Enterprise Linux based systems.
|
Currently this simply deploys the package on Enterprise Linux based systems and Debian based systems.
|
||||||
|
|
||||||
|
Tested on:
|
||||||
|
|
||||||
|
* Centos 5.6
|
||||||
|
* Ubuntu 10.04 Lucid
|
||||||
|
|
||||||
|
# RedHat Support #
|
||||||
|
|
||||||
The Java runtime this module is designed to configure are the RPM's provided by Oracle and obtained by extracting them from the "bin" installers.
|
The Java runtime this module is designed to configure are the RPM's provided by Oracle and obtained by extracting them from the "bin" installers.
|
||||||
|
|
||||||
@@ -14,3 +21,13 @@ Please download the installer from:
|
|||||||
|
|
||||||
* [Java Downloads](http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25-download-346242.html)
|
* [Java Downloads](http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25-download-346242.html)
|
||||||
|
|
||||||
|
# Ubuntu Support #
|
||||||
|
|
||||||
|
## Lucid ##
|
||||||
|
|
||||||
|
You need to have the partner repository enabled in order to install the Sun JDK or JRE.
|
||||||
|
|
||||||
|
aptitude install python-software-properties
|
||||||
|
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
|
||||||
|
aptitude update
|
||||||
|
|
||||||
|
|||||||
@@ -13,31 +13,77 @@
|
|||||||
# [Remember: No empty lines between comments and class definition]
|
# [Remember: No empty lines between comments and class definition]
|
||||||
class java(
|
class java(
|
||||||
$distribution = 'jdk',
|
$distribution = 'jdk',
|
||||||
$version = 'installed'
|
$version = 'present'
|
||||||
) {
|
) {
|
||||||
|
|
||||||
# Cannot pass anonymous arrays to functions in 2.6.8
|
validate_re($distribution, '^jdk$|^jre$|^java.*$')
|
||||||
$v_distribution = [ '^jre$', '^jdk$' ]
|
validate_re($version, 'installed|^[._0-9a-zA-Z:-]+$')
|
||||||
# Must compare string values, not booleans.
|
|
||||||
validate_re($version, '^[._0-9a-zA-Z:-]+$')
|
|
||||||
validate_re($distribution, $v_distribution)
|
|
||||||
|
|
||||||
$version_real = $version
|
anchor { 'java::begin': }
|
||||||
$distribution_real = $distribution
|
anchor { 'java::end': }
|
||||||
|
|
||||||
case $distribution_real {
|
case $::osfamily {
|
||||||
jre: {
|
|
||||||
class { 'java::jre_package':
|
'RedHat': {
|
||||||
version => $version_real,
|
|
||||||
stage => 'runtime',
|
class { 'java::package_redhat':
|
||||||
|
version => $version,
|
||||||
|
distribution => $distribution,
|
||||||
|
require => Anchor['java::begin'],
|
||||||
|
before => Anchor['java::end'],
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
jdk: {
|
|
||||||
class { 'java::jdk_package':
|
'Debian': {
|
||||||
version => $version_real,
|
|
||||||
stage => 'runtime',
|
case $::lsbdistcodename {
|
||||||
|
squeeze, lucid: {
|
||||||
|
$distribution_debian = $distribution ? {
|
||||||
|
jdk => 'openjdk-6-jdk',
|
||||||
|
jre => 'openjdk-6-jre-headless',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
wheezy, precise: {
|
||||||
|
$distribution_debian = $distribution ? {
|
||||||
|
jdk => 'openjdk-7-jdk',
|
||||||
|
jre => 'openjdk-7-jre-headless',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
default: {
|
||||||
|
fail("operatingsystem distribution ${::lsbdistcodename} is not supported")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class { 'java::package_debian':
|
||||||
|
version => $version,
|
||||||
|
distribution => $distribution_debian,
|
||||||
|
require => Anchor['java::begin'],
|
||||||
|
before => Anchor['java::end'],
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
'Solaris': {
|
||||||
|
|
||||||
|
$distribution_solaris = $distribution ? {
|
||||||
|
jdk => 'developer/java/jdk-7',
|
||||||
|
jre => 'runtime/java/jre-7',
|
||||||
|
}
|
||||||
|
|
||||||
|
class { 'java::package_solaris':
|
||||||
|
version => $version,
|
||||||
|
distribution => $distribution_solaris,
|
||||||
|
require => Anchor['java::begin'],
|
||||||
|
before => Anchor['java::end'],
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
default: {
|
||||||
|
fail("osfamily ${::osfamily} is not supported")
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
# Class: java:jdk_package
|
|
||||||
#
|
|
||||||
# This class installs the Java JDK package
|
|
||||||
# produced from ./jdk-6u25-linux-x64-rpm.bin -x
|
|
||||||
#
|
|
||||||
# This is the "Official" RPM distributed by Oracle
|
|
||||||
#
|
|
||||||
# Parameters:
|
|
||||||
#
|
|
||||||
# Actions:
|
|
||||||
#
|
|
||||||
# Requires:
|
|
||||||
#
|
|
||||||
# Sample Usage:
|
|
||||||
#
|
|
||||||
class java::jdk_package (
|
|
||||||
$version
|
|
||||||
) {
|
|
||||||
|
|
||||||
validate_re($version, '^[._0-9a-zA-Z:-]+$')
|
|
||||||
|
|
||||||
$version_real = $version
|
|
||||||
|
|
||||||
package { 'jdk':
|
|
||||||
ensure => $version_real,
|
|
||||||
alias => 'java',
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
# Class: java:jre_package
|
|
||||||
#
|
|
||||||
# class description goes here.
|
|
||||||
#
|
|
||||||
# Parameters:
|
|
||||||
#
|
|
||||||
# Actions:
|
|
||||||
#
|
|
||||||
# Requires:
|
|
||||||
#
|
|
||||||
# Sample Usage:
|
|
||||||
#
|
|
||||||
class java::jre_package (
|
|
||||||
$version
|
|
||||||
) {
|
|
||||||
|
|
||||||
validate_re($version, '^[._0-9a-zA-Z:-]+$')
|
|
||||||
|
|
||||||
$version_real = $version
|
|
||||||
|
|
||||||
package { 'jre':
|
|
||||||
ensure => $version_real,
|
|
||||||
alias => 'java',
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
27
manifests/package_debian.pp
Normal file
27
manifests/package_debian.pp
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
# Class: java::package_debian
|
||||||
|
#
|
||||||
|
# Implementation class of the Java package
|
||||||
|
# for debian based systems.
|
||||||
|
#
|
||||||
|
# This class is not meant to be used by the end user
|
||||||
|
# of the module. It is an implementation class
|
||||||
|
# of the composite Class[java]
|
||||||
|
#
|
||||||
|
# Parameters:
|
||||||
|
#
|
||||||
|
# Actions:
|
||||||
|
#
|
||||||
|
# Requires:
|
||||||
|
#
|
||||||
|
# Sample Usage:
|
||||||
|
#
|
||||||
|
class java::package_debian(
|
||||||
|
$version,
|
||||||
|
$distribution
|
||||||
|
) {
|
||||||
|
|
||||||
|
package { 'java':
|
||||||
|
ensure => $version,
|
||||||
|
name => $distribution,
|
||||||
|
}
|
||||||
|
}
|
||||||
28
manifests/package_redhat.pp
Normal file
28
manifests/package_redhat.pp
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
# Class: java::package_redhat
|
||||||
|
#
|
||||||
|
# Implementation class of the Java package
|
||||||
|
# for redhat based systems.
|
||||||
|
#
|
||||||
|
# This class is not meant to be used by the end user
|
||||||
|
# of the module. It is an implementation class
|
||||||
|
# of the composite Class[java]
|
||||||
|
#
|
||||||
|
# Parameters:
|
||||||
|
#
|
||||||
|
# Actions:
|
||||||
|
#
|
||||||
|
# Requires:
|
||||||
|
#
|
||||||
|
# Sample Usage:
|
||||||
|
#
|
||||||
|
class java::package_redhat(
|
||||||
|
$version,
|
||||||
|
$distribution
|
||||||
|
) {
|
||||||
|
|
||||||
|
package { 'java':
|
||||||
|
ensure => $version,
|
||||||
|
name => $distribution,
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
27
manifests/package_solaris.pp
Normal file
27
manifests/package_solaris.pp
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
# Class: java::package_solaris
|
||||||
|
#
|
||||||
|
# Implementation class of the Java package
|
||||||
|
# for Solaris based systems.
|
||||||
|
#
|
||||||
|
# This class is not meant to be used by the end user
|
||||||
|
# of the module. It is an implementation class
|
||||||
|
# of the composite Class[java]
|
||||||
|
#
|
||||||
|
# Parameters:
|
||||||
|
#
|
||||||
|
# Actions:
|
||||||
|
#
|
||||||
|
# Requires:
|
||||||
|
#
|
||||||
|
# Sample Usage:
|
||||||
|
#
|
||||||
|
class java::package_solaris(
|
||||||
|
$version,
|
||||||
|
$distribution
|
||||||
|
) {
|
||||||
|
|
||||||
|
package { 'java':
|
||||||
|
ensure => $version,
|
||||||
|
name => $distribution,
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
/*
|
|
||||||
+-----------------------------------------------------------------------+
|
|
||||||
| |
|
|
||||||
| ==> DO NOT EDIT THIS FILE! <== |
|
|
||||||
| |
|
|
||||||
| You should edit the `Modulefile` and run `puppet-module build` |
|
|
||||||
| to generate the `metadata.json` file for your releases. |
|
|
||||||
| |
|
|
||||||
+-----------------------------------------------------------------------+
|
|
||||||
*/
|
|
||||||
|
|
||||||
{}
|
|
||||||
3
templates/sun-java6.preseed
Normal file
3
templates/sun-java6.preseed
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true
|
||||||
|
sun-java6-jdk shared/accepted-sun-dlj-v1-1 boolean true
|
||||||
|
sun-java6-jre shared/accepted-sun-dlj-v1-1 boolean true
|
||||||
@@ -1 +1,10 @@
|
|||||||
include java
|
node default {
|
||||||
|
|
||||||
|
notify { "alpha": } ->
|
||||||
|
class { 'java':
|
||||||
|
distribution => 'jdk',
|
||||||
|
version => 'latest',
|
||||||
|
} ->
|
||||||
|
notify { "omega": }
|
||||||
|
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user