nexus3_oss

Ansible Роль: Nexus 3 OSS

Эта роль устанавливает и настраивает Nexus Repository Manager OSS версии 3.x.

Вся конфигурация может быть обновлена повторным запуском роли, за исключением настроек, связанных с blobstores, которые неизменяемы в nexus.

Оглавление

Примечание: ссылки в оглавлении могут не работать корректно при просмотре на сайте ansible galaxy. Посмотреть на github

(Создано с помощью gh-md-toc)

История / Благодарности

Эта роль является форком ansible-nexus3-oss от @savoirfairelinux после объявления об окончании поддержки. Вы можете ознакомиться с следующими тикетами в оригинальном репозитории для получения разъяснений:

Мы хотели бы поблагодарить оригинальных авторов за проделанную работу.

Требования

  • Достаточно актуальная версия ansible. Мы следим за версиями ansible в процессе сопровождения и разработки и будем использовать новые функции при необходимости (и обновим meta/main.yml для минимальной версии).
  • Совместимая ОС. Эта роль тестируется с молекулой на travis CI для CentOS 8, Ubuntu Bionic (18.04) и Debian buster. Другие сценарии молекулы могут быть протестированы локально для CentOS 7, Ubuntu Xenial (16.04) и Debian stretch.
  • Rsync должен быть установлен на целевой машине (не нужен на хосте, запускающем ansible, если это другой сервер).
  • Библиотека jmespath должна быть установлена на хосте, запускающем плейбук (нужна для фильтра json_query). Смотрите requirements.txt.
  • Java 8 (обязательно).
    • Oracle объявила о завершении поддержки Java 8. Sonatype теперь рекомендует openjdk8.
    • Для получения дополнительной информации смотрите системные требования nexus3.
  • Apache HTTPD (по желанию).
    • Используется для настройки SSL обратного прокси.
    • Следующие модули должны быть включены в вашей конфигурации: mod_ssl, mod_rewrite, mod_proxy, mod_proxy_http, mod_headers.

(Смотрите раздел Зависимости ниже на соответствующие роли на galaxy)

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

Переменные ansible вместе с их значениями по умолчанию (смотрите default/main.yml):

Общие переменные

    nexus_version: ''
    nexus_timezone: 'UTC'
    nexus_download_url: "http://download.sonatype.com/nexus/3"

Роль установит последнюю доступную версию nexus по умолчанию. Вы можете установить фиксированную версию, установив переменную nexus_version. Смотрите доступные версии на https://www.sonatype.com/download-oss-sonatype.

Если вы зафиксируете версию и измените ее на другую, роль попытается обновить вашу установку. Убедитесь, что вы переходите на более позднюю версию в истории релизов. Понижение версии не будет успешным (если только вы не переустановите nexus с нуля с использованием специальной переменной nexus_purge).

Если вы не фиксируете версию и запускаете роль на существующей установке, будет использоваться текущая установленная версия (определяемая целевой {{ nexus_installation_dir}}/nexus-latest). Если вы хотите обновить nexus, вам нужно будет передать специальную переменную nexus_upgrade=true в командной строке ansible-playbook. Смотрите Обновление nexus до последней версии.

Зависимости

Java и apache требования могут быть выполнены с помощью следующих ролей galaxy:

Не стесняйтесь использовать их или реализовывать свой собственный сценарий установки по мере необходимости.

Пример плейбука

---
- name: Nexus
  hosts: nexus
  become: yes
  vars:
    nexus_timezone: 'Canada/Eastern'
    nexus_admin_password: "{{ vault_nexus_admin_password }}"
    nexus_public_hostname: 'nexus.vm'
    httpd_setup_enable: true
    httpd_ssl_certificate_file: "{{ vault_httpd_ssl_certificate_file }}"
    httpd_ssl_certificate_key_file: "{{ vault_httpd_ssl_certificate_key_file }}"
    nexus_blobstores:
      - name: company-artifacts
        path: /var/nexus/blobs/company-artifacts
  roles:
    - { role: geerlingguy.java }
    - { role: geerlingguy.apache }
    - { role: ansible-thoteam.nexus3-oss }

Лицензия

GNU GPLv3

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

Смотрите: https://github.com/ansible-ThoTeam

О проекте

Nexus Repository Manager 3.x (Sonatype)

Установить
ansible-galaxy install pogosoftware/nexus3-oss
Лицензия
gpl-3.0
Загрузки
130
Владелец