Module puppet simple pour Java8 pour une machine virtuelle construite avec Vagrant


J'essaie d'écrire un module puppet pour installer Java 8 sur une machine virtuelle. Avec Java 6 ce n'était pas un problème: j'ai écrit un java.pp avec plus ou moins ces lignes et tout a fonctionné correctement.

class java_6 {

package { "openjdk-6-jdk":
  ensure => installed,
require => Exec["update-package-list"],
}}

J'ai essayé avec un tutoriel en ligne, mais tout semble être plus complexe que nécessaire. Avez-vous une idée de la façon d'obtenir Java 8 installé sur une machine virtuelle via Puppet?

Author: TrinitasXVII, 2016-05-06

2 answers

java8.pp pour Ubuntu:

case $::operatingsystem {
    ubuntu: {
      include apt

      apt::ppa { 'ppa:openjdk-r/ppa': 
        ensure => present,
      }

      exec { 'apt-update':
        command => '/usr/bin/apt-get update',
        require => [
          Apt::Ppa['ppa:openjdk-r/ppa']
        ],
      }

      package { 'openjdk-8-jdk':
        require  => [
          Exec['apt-update'],
          Apt::Ppa['ppa:openjdk-r/ppa'],
        ],
      }
    }

    default: {
      notice "Unsupported operatingsystem ${::operatingsystem}"
    }
  }

Ce java8.le fichier pp dépend du module apt, qui doit être installé sur votre machine.

  1. sudo puppet module install puppetlabs-apt
  2. sudo puppet apply java8.pp
  3. L'Exécution de java -version pour vérifier:

    Ravitezu@Lenevo:~/espace de travail/de Marionnettes$ java -version
    la version "1.8.0_91"d'openjdk
    Il est possible de créer un environnement d'exécution OpenJDK (build 1.8.0_91-8u91-b14-0ubuntu4~16.04.1-b14)
    OpenJDK 64-Bit Serveur VM (construire 25.91-b14, mode mixte)

 0
Author: RaviTezu, 2016-05-06 12:08:45

Vous n'avez pas nécessairement besoin de construire vous-même un module pour que Java8 fonctionne, la plupart des moyens recommandés sont de laisser master le faire et d'utiliser des modules comme le puppetlabs-java puppet module, la dernière mise à jour peut installer Java 8 avec une classe simple

class { 'java' : 
  distribution  => 'jdk',
  package       => 'java-1.8.0-openjdk-devel'
}
 0
Author: Frédéric Henri, 2016-05-09 11:57:28