srsp.oracle-java

srsp.oracle-java pour Ansible Galaxy

État de la construction

Résumé

Nom du rôle dans Ansible Galaxy : srsp.oracle-java

Ce rôle Ansible a les fonctionnalités suivantes liées à l'Oracle JDK :

Ce rôle est basé sur williamyeh.oracle-java, mais je voulais des versions Java plus récentes et j'ai décidé de ne plus prendre en charge les anciennes versions.

Si vous préférez OpenJDK, essayez geerlingguy.java.

Téléchargement automatique depuis Oracle

Attention : Autrefois, ce rôle téléchargeait tous les JDK directement depuis le site d'Oracle. Oracle a progressivement supprimé cette possibilité. Maintenant, vous ne pouvez plus télécharger aucune version de JDK 8 sans compte Oracle. Pour le JDK 11, vous pouvez seulement télécharger une version ancienne. Le JDK 13 peut être téléchargé pour le moment.

Étant donné que cela change de manière non déterministe à chaque fois qu'Oracle publie une nouvelle version de Java, vous ne devriez pas compter là-dessus. Je recommande de télécharger le JDK manuellement et de l'installer avec ce rôle.

Variables du rôle

Utilisation de base

Cela essaiera de télécharger le JDK depuis Oracle et de l'installer.

- hosts: all

  roles:
    - srsp.oracle-java

  vars:
    # Vous devez définir cela :
    - java_version: 13
    # Vous pouvez omettre cela (le rôle utilisera alors la dernière version connue) :
    - java_subversion: 0.2

Exemples

Installer un JDK téléchargé manuellement

Placez le fichier JDK téléchargé pour votre système souhaité dans le répertoire files et définissez java_download_from sur local :

- hosts: all

  roles:
    - srsp.oracle-java

  vars:
    - java_version: 8
    - java_subversion: 201
    - java_download_from: local

Installer depuis votre miroir

- hosts: all

  roles:
    - srsp.oracle-java

  vars:
    - java_version: 8
    - java_subversion: 172
    - java_download_from: mirror
    - java_mirror: "http://some.url/in/your/network/jdk-8u172-macosx-x64.dmg"

Télécharger le JDK sur la machine locale (pré-échantillonner)

Si vous souhaitez juste avoir le JDK sur votre machine locale (par exemple, pour utiliser les fichiers pour le test de molécule ou pour le télécharger sur votre miroir intranet d'entreprise), vous pouvez utiliser le playbook prefetch.yml dans ce rôle :

ansible-playbook prefetch.yml

Changez le playbook selon vos besoins.

Si vous exécutez depuis la ligne de commande

ansible-playbook --ask-become-pass playbook.yml

Variables optionnelles

Valeurs par défaut configurables par l'utilisateur :

# Version de Java
java_version: 8

# Sous-version de Java
java_subversion: 201

# Si vous souhaitez télécharger Java directement depuis Oracle
# - oracle : Télécharger depuis le site d'Oracle en temps réel.
# - mirror : Télécharger depuis l'URL définie dans 'java_mirror'.
# - local : Copier depuis le répertoire `files` du rôle ou du playbook sur la machine de contrôle.
java_download_from: oracle

# Selon la valeur de 'java_download_from', différentes actions se produisent ici :
# - oracle : Vous n'avez pas besoin de le définir. Il est pré-rempli avec le miroir de téléchargement d'Oracle.
# - mirror : Vous devez définir le miroir à partir duquel vous souhaitez télécharger. Vous devez définir l'URL complète y compris le fichier, comme dans l'exemple ci-dessous. Si vous souhaitez également le JCE, vous devez définir 'jce_zip_url'.
# - local : 'java_mirror' n'est pas utilisé, donc la valeur est ignorée.
#java_mirror: "https://private-repo.com/java/jdk-8u172-macosx-x64.dmg"
java_mirror: "http://download.oracle.com/otn-pub/java"

# Supprimer les fichiers téléchargés temporairement ?
java_remove_download: true

# Définir $JAVA_HOME ?
java_set_java_home: true

# Installer le JCE ?
java_install_jce: false

Pour d'autres options configurables, lisez le fichier tasks/set-role-variables.yml ; par exemple, pour voir les combinaisons java_version/java_subversion prises en charge.

Je veux installer un JDK que vous ne supportez pas encore !

Pas de problème ! Vous devez spécifier le numéro de build Java correspondant dans les variables java_build et jdk_tarball_hash, en plus de java_version et java_subversion, par exemple :

# fichier : playbook.yml
- hosts: all

  roles:
    - srsp.oracle-java

  vars:
    - java_version: 8
    - java_subversion: 141
    - java_build: 15
    - jdk_tarball_hash: 336fa29ff2bb4ef291e347e091f7f4a7

Licence

Licencié sous la Licence Apache V2.0. Voir le fichier LICENSE pour les détails.

Développement

Tests

Les tests utilisent molecule. Comme ce rôle nécessite un JDK d'Oracle, les conteneurs de test de molécule monteront /tmp/java, de sorte que le JDK soit persistant sur la machine locale et toujours disponible lorsque le conteneur de test a été détruit. Vous pouvez également pré-échantillonner le fichier d'installation et le mettre dans /tmp/java.

Cela exécutera tout le cycle de test contre le scénario par défaut :

molecule test

Si vous souhaitez travailler sur une certaine distribution, utilisez quelque chose comme ceci :

molecule converge --scenario-name opensuse15

Si vous voulez tester tout, émettez :

molecule test --all

Cela prendra un certain temps.

À propos du projet

Oracle JDK 8 to 13 for CentOS/Fedora/Debian/Ubuntu/Suse/MacOSX

Installer
ansible-galaxy install srsp.oracle-java
Licence
apache-2.0
Téléchargements
186.3k
Propriétaire
Doing software things @holisticon