new version
Some checks failed
Some checks failed
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
---
|
||||
java_version: 21
|
||||
java_vendor: openjdk
|
||||
java_home: /usr/lib/jvm/java-{{ java_version }}-openjdk-amd64
|
||||
java_bin_path: "{{ java_home }}/bin"
|
||||
# Configuration par défaut Java
|
||||
java_version: "17"
|
||||
java_packages:
|
||||
- openjdk-17-jdk
|
||||
- openjdk-17-jre
|
||||
|
||||
java_home_path: "/usr/lib/jvm/java-17-openjdk-amd64"
|
@@ -1,8 +1,4 @@
|
||||
---
|
||||
- name: update java alternatives
|
||||
ansible.builtin.command: update-alternatives --config java
|
||||
listen: update java configuration
|
||||
|
||||
- name: reload environment
|
||||
ansible.builtin.command: source /etc/environment
|
||||
listen: reload system environment
|
||||
ansible.builtin.command: update-java-alternatives --set java-1.{{ java_version }}.0-openjdk-amd64
|
||||
failed_when: false
|
6
roles/02-installation-java/tasks/01-check-java.yml
Normal file
6
roles/02-installation-java/tasks/01-check-java.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
- name: Vérification de la présence de Java
|
||||
ansible.builtin.command: "{{ java_version_check_command }}"
|
||||
register: java_check
|
||||
failed_when: false
|
||||
changed_when: false
|
1
roles/02-installation-java/tasks/02-install-java.yml
Normal file
1
roles/02-installation-java/tasks/02-install-java.yml
Normal file
@@ -0,0 +1 @@
|
||||
02-install-java.yml
|
@@ -1,21 +0,0 @@
|
||||
---
|
||||
- name: Remove old Java versions
|
||||
ansible.builtin.apt:
|
||||
name: "{{ item }}"
|
||||
state: absent
|
||||
purge: yes
|
||||
loop:
|
||||
- openjdk-8-jdk
|
||||
- openjdk-8-jre
|
||||
- openjdk-11-jdk
|
||||
- openjdk-11-jre
|
||||
- openjdk-17-jdk
|
||||
- openjdk-17-jre
|
||||
when: ansible_os_family == "Debian"
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Clean apt cache after removal
|
||||
ansible.builtin.apt:
|
||||
autoclean: yes
|
||||
autoremove: yes
|
||||
when: ansible_os_family == "Debian"
|
@@ -1,24 +0,0 @@
|
||||
---
|
||||
- name: Add Java repository for Ubuntu
|
||||
ansible.builtin.apt_repository:
|
||||
repo: "{{ java_apt_repository.ubuntu }}"
|
||||
state: present
|
||||
when: ansible_distribution == "Ubuntu"
|
||||
|
||||
- name: Add backports repository for Debian
|
||||
ansible.builtin.apt_repository:
|
||||
repo: "{{ java_apt_repository.debian }}"
|
||||
state: present
|
||||
when: ansible_distribution == "Debian"
|
||||
|
||||
- name: Update apt cache
|
||||
ansible.builtin.apt:
|
||||
update_cache: yes
|
||||
cache_valid_time: 3600
|
||||
when: ansible_os_family == "Debian"
|
||||
|
||||
- name: Install Java packages
|
||||
ansible.builtin.apt:
|
||||
name: "{{ java_packages[ansible_distribution | lower] }}"
|
||||
state: present
|
||||
when: ansible_os_family == "Debian"
|
6
roles/02-installation-java/tasks/03-validate-java.yml
Normal file
6
roles/02-installation-java/tasks/03-validate-java.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
- name: Validation de l'installation Java
|
||||
ansible.builtin.command: java -version
|
||||
register: java_validation
|
||||
changed_when: false
|
||||
failed_when: "'openjdk version' not in java_validation.stderr"
|
@@ -1,27 +0,0 @@
|
||||
---
|
||||
- name: Set JAVA_HOME environment variable
|
||||
ansible.builtin.lineinfile:
|
||||
path: /etc/environment
|
||||
line: "JAVA_HOME={{ java_home }}"
|
||||
create: yes
|
||||
state: present
|
||||
|
||||
- name: Add Java to PATH
|
||||
ansible.builtin.lineinfile:
|
||||
path: /etc/environment
|
||||
line: 'PATH="{{ java_bin_path }}:$PATH"'
|
||||
state: present
|
||||
|
||||
- name: Create Java profile script
|
||||
ansible.builtin.template:
|
||||
src: java.sh.j2
|
||||
dest: /etc/profile.d/java.sh
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
|
||||
- name: Set default Java version
|
||||
ansible.builtin.alternatives:
|
||||
name: java
|
||||
path: "{{ java_home }}/bin/java"
|
||||
notify: update java configuration
|
@@ -1,21 +0,0 @@
|
||||
---
|
||||
- name: Verify Java installation
|
||||
ansible.builtin.command: "{{ java_home }}/bin/java -version"
|
||||
register: java_version_output
|
||||
changed_when: false
|
||||
|
||||
- name: Display Java version
|
||||
ansible.builtin.debug:
|
||||
msg: "Java version installed: {{ java_version_output.stderr_lines[0] }}"
|
||||
|
||||
- name: Verify Java compiler
|
||||
ansible.builtin.command: "{{ java_home }}/bin/javac -version"
|
||||
register: javac_version_output
|
||||
changed_when: false
|
||||
|
||||
- name: Validate Java version matches requirement
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- "'{{ java_version }}' in java_version_output.stderr"
|
||||
fail_msg: "Java version {{ java_version }} not properly installed"
|
||||
success_msg: "Java version {{ java_version }} successfully installed"
|
@@ -1,6 +0,0 @@
|
||||
---
|
||||
- name: Check if Java is installed
|
||||
ansible.builtin.command: java -version
|
||||
register: java_installed
|
||||
failed_when: false
|
||||
changed_when: false
|
@@ -1,17 +1,11 @@
|
||||
---
|
||||
- name: Include check Java tasks
|
||||
ansible.builtin.include_tasks: 01-check-java.yml
|
||||
# Tâches principales installation Java
|
||||
- import_tasks: 01-check-java.yml
|
||||
tags: [java, check]
|
||||
|
||||
- name: Include remove old Java tasks
|
||||
ansible.builtin.include_tasks: 02-remove-old-java.yml
|
||||
when: java_needs_update | default(false)
|
||||
- import_tasks: 02-install-java.yml
|
||||
tags: [java, install]
|
||||
when: java_installed is not defined or not java_installed
|
||||
|
||||
- name: Include install Java tasks
|
||||
ansible.builtin.include_tasks: 03-install-java.yml
|
||||
when: java_not_installed | default(false) or java_needs_update | default(false)
|
||||
|
||||
- name: Include configure Java tasks
|
||||
ansible.builtin.include_tasks: 04-configure-java.yml
|
||||
|
||||
- name: Include validate installation tasks
|
||||
ansible.builtin.include_tasks: 05-validate-installation.yml
|
||||
- import_tasks: 03-validate-java.yml
|
||||
tags: [java, validate]
|
@@ -1,5 +0,0 @@
|
||||
#!/bin/bash
|
||||
# {{ ansible_managed }}
|
||||
|
||||
export JAVA_HOME={{ java_home }}
|
||||
export PATH=$JAVA_HOME
|
@@ -1,12 +1,4 @@
|
||||
---
|
||||
java_packages:
|
||||
debian:
|
||||
- "openjdk-{{ java_version }}-jdk"
|
||||
- "openjdk-{{ java_version }}-jre"
|
||||
ubuntu:
|
||||
- "openjdk-{{ java_version }}-jdk"
|
||||
- "openjdk-{{ java_version }}-jre"
|
||||
|
||||
java_apt_repository:
|
||||
debian: "deb http://deb.debian.org/debian {{ ansible_distribution_release }}-backports main"
|
||||
ubuntu: "ppa:openjdk-r/ppa"
|
||||
# Variables Java
|
||||
java_version_check_command: "java -version"
|
||||
java_required_version: "17"
|
Reference in New Issue
Block a user