aem_pipeline

Роль aem-пайплайна

Лицензия Статус сборки Статус сборки Galaxy Ansible Ansible =======

Роль AEM для установки Jenkins CI/CD

Требования

Узлы:

  • Sonarqube
  • Jenkins
  • Minio
  • AEM author
  • AEM publisher
  • AEM dispatcher

Модули Ansible:

Переменные роли: по умолчанию

Переменные CI/CD:

Пользователь Git для генерации CI/CD

  • git_username: "Имя_пользователя"
  • git_email: "git@email.com"

Архетип AEM на Maven:

  • archetypeGitRepository: 'git@git.epam.com:epm-aem/maven-archetype-2.git'
  • archetypeGitBranch: master

Для конфигурации шаблона архетипа диспетчера:

  • dispatcher_root: /opt/aemDispatcherCache
  • distr_storage: /tmp
  • apache_dir: /etc/httpd

Список окружений для генерации CI/CD:

env_types_list:
  - dev
  - test
  - uat
  - prod

Список проектов CI/CD, названия которых будут созданы во время генерации пайплайнов:

  • gitRepository - пустой репозиторий для создания проекта с примерными данными и CI/CD.
  • autoDeployOn - список окружений и веток для конфигурации автоматического развертывания.
build_flows:
 -
   project_name: "test"
   gitRepository: ''
   integrationEnv: 'dev'
   autoDeployOn:
    -
      branch: test
      environment: dev,qa

Отдельный сервер AEM author для развертывания пакета теста во время процесса сборки:

  • ci_aem_author: "localhost"
  • aem_instance_port: 4502

Адрес сервера Ansible AWX/Tower:

Конфигурация сервера Sonar:

  • sonar_server_address: "localhost"
  • sonarPort: 9000
  • sonar_admin_login: admin
  • sonar_admin_password: admin

Опции Maven:

Конфигурация Jenkins:

jenkins_plugin_list:
  - ansible
  • jenkins_file: /opt/jenkins.done
jenkins_package_list:
  - zip
  • jenkins_pip_modules: ansible
  • jenkins_home: /var/lib/jenkins
  • jenkins_port: 8080
  • jenkins_base_link: 'http://localhost:{{ jenkins_port }}'

Пользователь, владеющий файлами Jenkins:

  • jenkins_user: jenkins
jenkinsAdmin:
  name: jenkins_admin
  password: jenkins_admin
  • jenkins_admin_token: ""
  • jenkins_admin_login: '{{ jenkinsAdmin.name }}'
myJenkinsAttributes:
  url: '{{ jenkins_base_link }}'
  url_username: '{{ jenkinsAdmin.name }}'
  url_password: '{{ jenkinsAdmin.password }}'

Зависимости

Пример Playbook

---
- name: "jenkinf ci/cd"
  hosts: jenkins
  roles:
    - role: ansible-role-aem-pipeline
      jenkins_base_link: 'http://{{ inventory_hostname }}:{{ jenkins_port }}'
      aem_version: '6.4'
      aem_instance_port: 4502
      sonar_server_address: "{{ groups['sonar_servers'][0] }}"
      sonarPort: 80
      git_username: "VPupkin"
      git_email: "[email protected]"
      tower_server_url: https://aem-tower.ldi.projects.com
      archetypeGitRepository: '[email protected]:VPupkin/maven-archetype-2.git'
      minio_server_address: http://{{ groups['artifact_storage'][0] }}
      minio_port: 9000
      env_types_list:
        - dev
        - test
        - uat
        - prod
      ci_aem_author: "{{ groups['aem_authors'][0] }}"
      sonarJenkinsUser:
        id: 'test_user'
        name: 'Test'

      build_flows:
        - project_name: "petproj1"
          gitRepository: '[email protected]:VPupkin/aem-cicd-test-fin2.git'
          integrationEnv: 'dev'
          autoDeployOn:
            - branch: develop
              environment: dev

Лицензия

Apache

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

авторы:

О проекте

Playbook for Jenkins CI/CD Adobe AEM pipeline installation

Установить
ansible-galaxy install lean-delivery/ansible-role-aem-pipeline
Лицензия
apache-2.0
Загрузки
224
Владелец
Simplify by using!