maven

Ansible роль maven

Установите и настройте Apache Maven на ваших системах.

GitHub Версия Ошибки Запросы на слияние Загрузки
github Версия Ошибки Запросы на слияние Ansible Роль

Пример сценария

Этот пример взят из molecule/default/converge.yml и тестируется при каждом пуше, запросе на слияние и релизе.

# код: язык=ansible
---
- имя: Свести
  хосты: все
  выполнять от имени: true
  собирать_данные: true

  предварительные_задачи:
    - имя: Обновить кэш apt
      ansible.builtin.apt:
        обновить_кэш: true
      изменилось_когда: false
      когда: ansible_pkg_mgr in ('apt')

    - имя: Установить jdk 8 (apt)
      выполнять от имени: true
      ansible.builtin.apt:
        имя: openjdk-8-jdk
        состояние: присутствует
      когда: ansible_pkg_mgr in ('apt')

  роли:
    - роль: buluma.maven
      версия_maven: '3.9.6'
      директория_установки_maven: /opt/maven

    - роль: buluma.maven
      версия_maven: '3.3.9'
      является_умолчанием: false
      группа_фактов_maven: maven_3_3

Машину необходимо подготовить. В CI это делается с помощью molecule/default/prepare.yml:

---
- имя: Подготовить
  хосты: все
  собирать_данные: false
  выполнять от имени: true
  переменные:
    - тип_java: jdk
    - версия_java: "8"

  роли:
    - роль: buluma.bootstrap
    - роль: buluma.core_dependencies
    - роль: buluma.buildtools
    - роль: buluma.java
      поставщик_java: openjdk
      версия_java: "11"

Также смотрите полное объяснение и пример о том, как использовать эти роли.

Переменные Роли

Значения по умолчанию для переменных установлены в defaults/main.yml:

# код: язык=ansible
# https://github.com/gantsign/ansible-role-maven/blob/master/defaults/main.yml
---
# Номер версии Maven
версия_maven: '3.9.6'

# Зеркало для загрузки redistributable пакета Maven
maven_mirror: "http://archive.apache.org/dist/maven/maven-{{ версия_maven | regex_replace('\\..*', '') }}/{{ версия_maven }}/binaries"

# Основной каталог установки дистрибутива Maven
директория_установки_maven: /opt/maven

# Директория для хранения загружаемых файлов для установки Maven
директория_загрузки_maven: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"

# Количество секунд ожидания перед завершением загрузки Maven
время_ожидания_загрузки_maven: 10

# Использовать ли прокси при загрузке Maven (если переменная окружения прокси присутствует)
использовать_прокси_maven: true

# Нужно ли проверять сертификаты HTTPS при загрузке Maven
проверять_сертификаты_maven: true

# Если это установка по умолчанию, будут созданы символические ссылки на mvn и mvnDebug в /usr/local/bin
является_умолчанием: true

# Имя группы фактов Ansible, относящихся к этой установке Maven.
#
# Переопределите, если хотите использовать эту роль несколько раз для установки нескольких версий Maven.
#
# например, группа_фактов_maven: maven_3_3
# изменит факты home Maven на:
# ansible_local.maven_3_2.general.home
группа_фактов_maven: maven

Требования

Состояние используемых ролей

Для подготовки системы используются следующие роли. Вы можете подготовить свою систему другим способом.

Требование GitHub Версия
buluma.bootstrap Ansible Molecule Версия
buluma.buildtools Ansible Molecule Версия
buluma.core_dependencies Ansible Molecule Версия
buluma.java Ansible Molecule Версия

Контекст

Эта роль является частью многих совместимых ролей. Ознакомьтесь с документацией этих ролей для получения дополнительной информации.

Вот обзор связанных ролей:

зависимости

Совместимость

Эта роль была протестирована на следующих образах контейнеров:

контейнер теги
EL 8, 9
Fedora 39, 38
opensuse все
Ubuntu bionic, focal, jammy

Минимальная необходимая версия Ansible - 2.12, тестирование проводилось на:

  • Предыдущей версии.
  • Текущей версии.
  • Версии разработки.

Если вы обнаружите проблемы, пожалуйста, сообщите о них в GitHub

Журнал изменений

История ролей

Лицензия

Apache-2.0

Информация об авторе

Shadow Walker

О проекте

Install and configure Apache Maven on your systems.

Установить
ansible-galaxy install buluma/ansible-role-maven
Лицензия
apache-2.0
Загрузки
4104
Владелец
DevOps Engineer