abessifi.java
Ansible Java Rolle
Beschreibung
Dies ist eine Ansible-Rolle zur Installation von Oracle/OpenJDK Java auf verschiedenen GNU/Linux-Systemen.
Unterstützte Systeme
- Debian
- Ubuntu
- RedHat
- CentOS
- FreeBSD
Anforderungen
- Ansible 1.9 oder höher (kann einfach über
pip
installiert werden. Zum Beispiel:sudo pip install ansible==1.9.2
) - Vagrant 1.7 oder höher
- Das
sshpass
Paket, das von Ansible benötigt wird, wenn Sie die SSH-Authentifizierung mit Passwort verwenden. Auf Ubuntu/Debian:$ sudo apt-get install sshpass
- Virtualbox
- Oh-my-box Tool, optional, wenn Sie schnell eine Vagrant-Basisbox mit Ansible und Ruby vorinstalliert einrichten und paketieren möchten.
Rollenvariablen
Verfügbare Variablen sind unten aufgeführt, zusammen mit Standardwerten:
java_jdk_type
- Der Typ des Java Development Toolkits sollteoracle
oderopenjdk
sein (Standard: 'openjdk')java_version
- Die zu installierende Java-Version (Standard: '8')java_package
- Der Name des zu installierenden Java JDK-Pakets (Standard: None)java_set_as_default
- Wenn wahr, wird die aktuell installierte Java-Version als Systemstandardversion festgelegt (Standard: false)oracle_jdk_rpm_package
- Der RPM-Paketname zur Installation von Oracle JDK auf RedHat (Standard: 'jdk-8u144-linux-x64.rpm')oracle_jdk_rpm_url
- Die Download-URL des Oracle JDK RPM-Pakets (Standard: 'http://download.oracle.com/otn-pub/java/jdk/8u144-b01/jdk-8u144-linux-x64.rpm')rpm_download_directory
- Der absolute Pfad zu einem temporären Verzeichnis, in dem das Paket heruntergeladen wird (Standard: '/var/cache/yum/x86_64/7/extras/packages')
Verfügbare Tags
install-java
- Standard-Tag zur Durchführung der Java JDK-Installation.
Verwendung
Installiere OpenJDK 8 (Standardversion openjdk)
- hosts: localhost
sudo: ja
roles:
- ansible-java
Installiere Oracle JDK 8 (Standardversion oracle jdk)
- hosts: localhost
sudo: ja
roles:
- { role: ansible-java, java_jdk_type: 'oracle' }
Installiere OpenJDK 7 (auf Debian und setze es als Standard)
- hosts: localhost
sudo: ja
roles:
- role: ansible-java
java_version: 7
java_package: 'openjdk-7-jdk'
java_set_as_default: true
Installiere Oracle JDK 7 (auf RedHat und setze es als Standard)
- hosts: localhost
sudo: ja
roles:
- role: ansible-java
java_jdk_type: 'oracle'
java_version: 7
oracle_jdk_rpm_package: 'jdk-7u79-linux-x64.rpm'
oracle_jdk_rpm_url: 'http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.rpm'
java_set_as_default: true
Entwicklung und Tests
Testen mit Vagrant
Für schnelle Tests können Sie eine Debian VM mit Vagrant aufsetzen. Möglicherweise müssen Sie die Vagrantfile an Ihre Umgebung anpassen (IP-Adressen usw.).
$ vagrant up
Akzeptanztests durchführen
Akzeptanz-/Integrationstests können mit dem Werkzeug test-kitchen
gegen die Rolle durchgeführt werden. Alle geschriebenen Akzeptanztests befinden sich im Verzeichnis ./test/integration/.
Die Datei .kitchen.yml
beschreibt die Testkonfiguration und die Liste der auszuführenden Testsuiten. Standardmäßig werden Ihre Instanzen mit Ansible konvergiert und in Vagrant-VMs ausgeführt.
Um die Instanzen aufzulisten:
$ kitchen list
Instanz Treiber Bereitsteller Prüfer Transport Letzte Aktion
default-debian-8-x64 Vagrant AnsiblePlaybook Busser Ssh <Nicht erstellt>
override-java-version-debian-8-x64 Vagrant AnsiblePlaybook Busser Ssh <Nicht erstellt>
install-oracle-jdk-debian-8-x64 Vagrant AnsiblePlaybook Busser Ssh <Nicht erstellt>
Um die Tests mit der Suite override-java-version auf einer Debian 8-Plattform durchzuführen, führen Sie Folgendes aus:
$ kitchen test override-java-version-debian-8-x64
Autor
Diese Rolle wurde von Ahmed Bessifi, einem DevOps-Enthusiasten, erstellt.
ansible-galaxy install abessifi.java