conga_ansible_controlhost

wcm_io_devops.conga_ansible_controlhost

Эта роль настраивает хост как контролирующий хост для wcm.io DevOps Ansible Automation для AEM.

Роль устанавливает следующие инструменты:

  • JDK
  • Maven
  • Ansible (включая необходимые пакеты pip, такие как cffi, jmespath, boto и др.)
  • Terraform

При наличии она развернет ваши AWS credentials и файл .vault_pass.

Роль также позволяет вам настроить окружение в вашем файле .bashrc при необходимости:

  • EDITOR
  • ANSIBLE_VAULT_PASSWORD_FILE

Для Maven поддерживается настройка settings.yml и settings-security.xml (по желанию).

Кроме регулярных пакетов ОС для инструментов, будут установлены следующие пакеты для быстрого мониторинга и отладки:

  • nano
  • iftop
  • htop
  • iotop

Требования

Эта роль требует Ansible версии 2.7 или выше.

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

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

controlhost_dependency_maven: true

Включает / отключает зависимость от роли Maven.

controlhost_dependency_java: true

Включает / отключает зависимость от роли Java.

controlhost_dependency_epel: true

Включает / отключает зависимость от роли EPEL.

controlhost_dependency_terraform: true

Включает / отключает зависимость от роли Terraform.

controlhost_user: "{{ ansible_env.SUDO_USER | default(ansible_env.USER) }}"

Пользователь на контролирующем хосте.

controlhost_group: "{{ controlhost_user }}"

Группа пользователя на контролирующем хосте.

controlhost_user_home: "/home/{{ controlhost_user }}"

Домашний каталог пользователя.

controlhost_maven_path: "{{ controlhost_user_home }}/.m2"

Путь к директории Maven.

controlhost_maven_settings_path: "{{ controlhost_maven_path }}/settings.xml"

Путь к файлу настроек Maven settings.xml.

controlhost_maven_settings_security_path: "{{ controlhost_maven_path }}/settings-security.xml"

Путь к файлу настроек безопасности Maven settings-security.xml.

controlhost_maven_artifact_threads: 5

Потоки, используемые Maven при загрузке артефактов. Увеличение этого значения улучшает скорость загрузки.

#controlhost_maven_master_password:

Если задано, будет создан файл настроек безопасности Maven settings-security.xml с зашифрованным мастер-паролем, а учетные данные для controlhost_maven_repositories будут зашифрованы с использованием мастер-пароля Maven.

controlhost_nodejs_npmrc_path: "{{ controlhost_user_home }}/.npmrc"

Путь к .npmrc.

controlhost_nodejs_npmrc_always_auth: true

Управляет параметром "always-auth" в .npmrc.

# controlhost_nodejs_npmrc_registries:
  #- registry:
  #  username:
  #  password:

При настройке реестров .npmrc будет создан. Обратите внимание, что в данный момент можно определить только один реестр. Имя пользователя и пароль должны быть указаны в явном виде. Роль позаботится о создании токена аутентификации.

#controlhost_vault_pass_path: "{{ controlhost_user_home }}/.ansible/.vault_pass"

Если указано, переменная окружения ANSIBLE_VAULT_PASSWORD_FILE в .bashrc будет установлена.

#controlhost_vault_pass_src:

Если указано, указанный файл будет скопирован на контролирующий хост в controlhost_vault_pass_path.

controlhost_aws_credentials_path: "{{ controlhost_user_home }}/.aws/credentials"

Путь к файлу учетных данных AWS. Работает вместе с: controlhost_aws_credentials_src.

#controlhost_aws_credentials_src:

Если указано, указанный файл будет скопирован на контролирующий хост в controlhost_aws_credentials_path.

#controlhost_default_editor: "nano"

Если указано, bashrc будет экспортировать EDITOR с этим значением.

controlhost_bashrc: "{{ controlhost_user_home }}/.bashrc"

Путь к файлу команд оболочки для настройки ANSIBLE_VAULT_PASSWORD_FILE и EDITOR.

controlhost_maven_repositories:
  - id: central
    url: https://repo.maven.apache.org/maven2/
  - id: adobe-public-releases
    url: https://repo.adobe.com/nexus/content/groups/public
    releases:
      enabled: "true"
      updatePolicy: "never"
    snapshots:
      enabled: "false"

Список репозиториев Maven, которые будут настроены в файле настроек Maven settings.xml. По умолчанию здесь настроены maven central и публичный репозиторий от Adobe.

- id: [REPO-ID]
  url: [REPO-URL]
  username: [USERNAME] # опционально
  password: [USERNAME] # опционально
  releases:  # (опционально)
    [KEY]:[VALUE] # будет преобразовано в <key>value</key>
  snapshots: # (опционально)
    [KEY]:[VALUE] # будет преобразовано в <key>value</key>

Список конфигурационных параметров для репозитория Maven.

controlhost_maven_mirrors: []

Список конфигураций зеркал. См. https://maven.apache.org/guides/mini/guide-mirror-settings.html для подробностей конфигурации.

# Конфигурация зеркала
#  - id: [REPO-ID]
#    url: [REPO-URL]
#    mirrorOf: *

Пример конфигурации зеркала.

# controlhost_maven_settings_custom:

Если указано, эта часть будет отображаться как есть в блоке файла настроек Maven.

#controlhost_ansible_version: 2.5.6

Если указано, указанная версия Ansible будет установлена на контролирующем хосте.

controlhost_python_version: 3

Управляет установкой Python3 или Python2. Конкретная версия зависит от ОС хоста.

controlhost_packages_pip_upgrade: true

Управляет выполнением pip с параметром --upgrade.

controlhost_packages_pip_enabled: true

Включает / отключает установку пакетов pip.

controlhost_packages_pip:
  - markupsafe
  - jmespath
  - cffi
  - cryptography
  - boto
  - lxml
  - boto3
  - rsa
  - colorama
  - botocore
  - s3transfer
  - awscli

Пакеты pip для установки. Определение пакетов pip при использовании Ansible версии 2.7+ также может указывать версии, как описано здесь: https://docs.ansible.com/ansible/latest/modules/pip_module.html.

# controlhost_packages_os: []

Список пакетов ОС для установки на контролирующем хосте. Специфично для ОС, см. определение переменной в папке vars.

controlhost_packages_os_enabled: true

Включает / отключает установку пакетов ОС.

Зависимости

Эта роль зависит от следующих ролей:

Пример

Настройте локальный хост как контролирующий хост с редактором по умолчанию NANO, файлом ANSIBLE_VAULT_PASSWORD_FILE, расположенным в .ansible/.vault_pass, и мастер-паролем masterpassword для Maven.

- hosts: localhost
  vars:
    controlhost_default_editor: nano
    controlhost_vault_pass_path: "{{ controlhost_user_home }}/.ansible/.vault_pass"
    controlhost_maven_master_password: masterpassword
  roles:
    - wcm_io_devops.conga_ansible_controlhost

Лицензия

Apache 2.0

О проекте

Setups tooling for conga ansible aem automation

Установить
ansible-galaxy install wcm-io-devops/ansible-conga-ansible-controlhost
Лицензия
apache-2.0
Загрузки
42520
Владелец
Tools for Configuration Management and Deployment