Update to 2020-04-15 19:00

master
Daniel Berteaud 4 years ago
parent 63781c69d5
commit 2a2842261b
  1. 6
      roles/maven/defaults/main.yml
  2. 8
      roles/maven/tasks/cleanup.yml
  3. 12
      roles/maven/tasks/directories.yml
  4. 30
      roles/maven/tasks/facts.yml
  5. 40
      roles/maven/tasks/install.yml
  6. 6
      roles/maven/tasks/main.yml
  7. 6
      roles/maven/templates/profile.sh.j2

@ -0,0 +1,6 @@
---
mvn_version: 3.6.3
mvn_archive_url: https://miroir.univ-lorraine.fr/apache/maven/maven-3/{{ mvn_version }}/binaries/apache-maven-{{ mvn_version }}-bin.tar.gz
mvn_archive_sha1: cc836dc7e64b113472df31996caaedf132969009
mvn_root_dir: /opt/maven

@ -0,0 +1,8 @@
---
- name: Remove temp files
file: path={{ item }} state=absent
loop:
- "{{ mvn_root_dir }}/tmp/apache-maven-{{ mvn_version }}-bin.tar.gz"
- "{{ mvn_root_dir }}/tmp/apache-maven-{{ mvn_version }}"
tags: mvn

@ -0,0 +1,12 @@
---
- name: Create needed directories
file: path={{ item.dir }} state=directory owner={{ item.owner | default(omit) }} group={{ item.group | default(omit) }} mode={{ item.mode | default(omit) }}
loop:
- dir: "{{ mvn_root_dir }}"
- dir: "{{ mvn_root_dir }}/meta"
mode: 700
- dir: "{{ mvn_root_dir }}/tmp"
mode: 700
- dir : "{{ mvn_root_dir }}/apache-maven"
tags: mvn

@ -0,0 +1,30 @@
---
- name: Set install mode
set_fact: mvn_install_mode='none'
tags: mvn
- name: Check if version file exists
stat: path={{ mvn_root_dir }}/meta/ansible_version
register: mvn_version_file
tags: mvn
- name: Detect installed version
block:
- slurp: src={{ mvn_root_dir }}/meta/ansible_version
register: mvn_current_version
- set_fact: mvn_current_version={{ mvn_current_version.content | b64decode | trim }}
when: mvn_version_file.stat.exists
tags: mvn
- name: Set install mode
set_fact: mvn_install_mode='install'
when: not mvn_version_file.stat.exists
tags: mvn
- name: Set upgrade mode
set_fact: mvn_install_mode='upgrade'
when:
- mvn_version_file.stat.exists
- mvn_current_version != mvn_version
tags: mvn

@ -0,0 +1,40 @@
---
- name: Install java
yum:
name:
- java-1.8.0-openjdk
tags: mvn
- name: Install or update maven
block:
- name: Download maven
get_url:
url: "{{ mvn_archive_url }}"
dest: "{{ mvn_root_dir }}/tmp/"
checksum: sha1:{{ mvn_archive_sha1 }}
- name: Extract maven archive
unarchive:
src: "{{ mvn_root_dir }}/tmp/apache-maven-{{ mvn_version }}-bin.tar.gz"
dest: "{{ mvn_root_dir }}/tmp/"
remote_src: True
- name: Move maven to its final location
synchronize:
src: "{{ mvn_root_dir }}/tmp/apache-maven-{{ mvn_version }}/"
dest: "{{ mvn_root_dir }}/apache-maven/"
recursive: True
delete: True
delegate_to: "{{ inventory_hostname }}"
when: mvn_install_mode != 'none'
tags: mvn
- name: Write installed version
copy: content={{ mvn_version }} dest={{ mvn_root_dir }}/meta/ansible_version
tags: mvn
- name: Deploy profile script
template: src=profile.sh.j2 dest=/etc/profile.d/maven.sh mode=755
tags: mvn

@ -0,0 +1,6 @@
---
- include: directories.yml
- include: facts.yml
- include: install.yml
- include: cleanup.yml

@ -0,0 +1,6 @@
#!/bin/sh
export JAVA_HOME=/usr/lib/jvm/jre-openjdk
export M2_HOME={{ mvn_root_dir }}/apache-maven
export MAVEN_HOME={{ mvn_root_dir }}/apache-maven
export PATH=${M2_HOME}/bin:${PATH}
Loading…
Cancel
Save