java

Ansible Java Роль

Описание

Это роль Ansible для установки Oracle/OpenJDK Java на несколько систем GNU/Linux.

Поддерживаемые Системы

  • Debian
  • Ubuntu
  • RedHat
  • CentOS
  • FreeBSD

Требования

  • Ansible 1.9 или выше (можно легко установить через pip. Например: sudo pip install ansible==1.9.2)
  • Vagrant 1.7 или выше
  • Пакет sshpass, который нужен Ansible, если вы используете аутентификацию по SSH с паролем. На Ubuntu/Debian: $ sudo apt-get install sshpass
  • Virtualbox
  • Oh-my-box инструмент, необязательный, если вы хотите быстро создать и упаковать базовый Vagrant box с предустановленными Ansible и Ruby.

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

Доступные переменные перечислены ниже вместе с значениями по умолчанию:

  • java_jdk_type - Тип Java Development Toolkit должен быть oracle или openjdk (по умолчанию: 'openjdk')
  • java_version - Версия Java для установки (по умолчанию: '8')
  • java_package - Название пакета Java JDK для установки (по умолчанию: None)
  • java_set_as_default - Если true, устанавливает текущую установленную Java как системную версию по умолчанию (по умолчанию: false)
  • oracle_jdk_rpm_package - Название пакета rpm для установки oracle jdk на Redhat (по умолчанию: 'jdk-8u144-linux-x64.rpm')
  • oracle_jdk_rpm_url - URL для загрузки пакета rpm oracle jdk (по умолчанию: 'http://download.oracle.com/otn-pub/java/jdk/8u144-b01/jdk-8u144-linux-x64.rpm')
  • rpm_download_directory - Абсолютный путь к временной директории, куда будет загружен пакет (по умолчанию: '/var/cache/yum/x86_64/7/extras/packages')

Доступные теги

  • install-java - Тег по умолчанию для выполнения установки Java JDK.

Использование

Установка OpenJDK 8 (по умолчанию openjdk)

- hosts: localhost
  sudo: yes
  roles:
    - ansible-java

Установка Oracle JDK 8 (по умолчанию oracle jdk)

- hosts: localhost
  sudo: yes
  roles:
    - { role: ansible-java, java_jdk_type: 'oracle' }

Установка OpenJDK 7 (на Debian и установка как по умолчанию)

- hosts: localhost
  sudo: yes
  roles:
    - role: ansible-java
      java_version: 7
      java_package: 'openjdk-7-jdk'
      java_set_as_default: true

Установка Oracle JDK 7 (на Redhat и установка как по умолчанию)

- hosts: localhost
  sudo: yes
  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

Разработка и тестирование

Тестирование с помощью Vagrant

Для быстрых тестов вы можете запустить виртуальную машину Debian с помощью Vagrant. Возможно, вам нужно будет адаптировать Vagrantfile под вашу среду (IP-адреса и т.д.).

$ vagrant up

Запуск приемочных тестов

Приемочные/Интеграционные тесты можно запустить против роли с помощью инструмента test-kitchen. Все написанные приемочные тесты находятся в директории ./test/integration/.

Файл .kitchen.yml описывает конфигурацию тестирования и список тестов для запуска. По умолчанию ваши экземпляры будут настроены с помощью Ansible и запущены в виртуальных машинах Vagrant.

Чтобы вывести список экземпляров:

$ kitchen list

Экземпляр                            Драйвер   Провизионер      Проверщик  Транспорт  Последнее действие
default-debian-8-x64                Vagrant  AnsiblePlaybook  Busser    Ssh        <Не создано>
override-java-version-debian-8-x64  Vagrant  AnsiblePlaybook  Busser    Ssh        <Не создано>
install-oracle-jdk-debian-8-x64     Vagrant  AnsiblePlaybook  Busser    Ssh        <Не создано>

Чтобы запустить тесты с набором override-java-version на платформе Debian 8, например, выполните следующее:

$ kitchen test override-java-version-debian-8-x64

Автор

Эта роль была создана Ахмедом Бессифи, энтузиастом DevOps.

О проекте

Java for GNU/Linux systems

Установить
ansible-galaxy install abessifi/ansible-java
Лицензия
mit
Загрузки
336
Владелец
I’m a tech enthusiast who breathes code and loves creating beautiful software. I’m an active contributor to opensource projects and maintain a few of my own.