darkwizard242.jenkinslts

build-test release Ansible Role Ansible Role Ansible Quality Score Quality Gate Status Maintainability Rating Reliability Rating Security Rating GitHub tag (latest SemVer) GitHub repo size

Ansible Rola: jenkinslts

Rola służąca do instalacji (domyślnie) wersji LTS Jenkins dla systemów opartych na Debianie i EL lub do odinstalowania (jeśli podano jako zmienna) w systemach Debian i EL.

Wymagania

Jenkins wymaga Javy.

Możesz zainstalować Javę za pomocą roli darkwizard242.adoptopenjdk.

Zmienne Roli

Dostępne zmienne są wymienione poniżej (znajdują się w defaults/main.yml):

Lista Zmiennych:

jenkinslts_user: jenkins
jenkinslts_group: jenkins
jenkinslts_group_desired_state: present
jenkinslts_user_home: "/var/lib/{{ jenkinslts_user }}"
jenkinslts_user_shell: /bin/false
jenkinslts_user_desired_state: present
jenkinslts_app_name: jenkins
jenkinslts_debian_gpg_key: https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
jenkinslts_el_gpg_key: https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
jenkinslts_repo_debian: deb https://pkg.jenkins.io/debian-stable binary/
jenkinslts_repo_debian_filename: "{{ jenkinslts_app_name }}"
jenkinslts_repo_el_name: jenkins
jenkinslts_repo_el_description: Jenkins
jenkinslts_repo_el: http://pkg.jenkins.io/redhat-stable
jenkinslts_repo_el_filename: "{{ jenkinslts_app_name }}"
jenkinslts_repo_el_gpgcheck: yes
jenkinslts_repo_desired_state: present
jenkinslts_desired_state: present
jenkinslts_default_debain_config_file: /etc/default/jenkins
jenkinslts_default_el_config_file: /etc/sysconfig/jenkins
jenkinslts_app_port: 8080
jenkinslts_app_heapsize_max: 256m
jenkinslts_service_name: jenkins
jenkinslts_service_desired_state: restarted
jenkinslts_service_desired_boot_enabled: yes
jenkinslts_app_check_status_code: 200
jenkinslts_app_check_status_code_retries: 10
jenkinslts_app_check_status_code_delay: 5
jenkinslts_app_admin_password_file: "{{ jenkinslts_user_home }}/secrets/initialAdminPassword"

Tabela Zmiennych:

Variable Opis
jenkinslts_group Nazwa grupy, do której należy właściciel jenkins. Argument grupy Jenkins jest wymagany tylko w systemach opartych na Debianie, nie w systemach EL.
jenkinslts_group_desired_state present oznacza utworzenie grupy, jeśli nie istnieje. Alternatywą jest absent.
jenkinslts_user Nazwa użytkownika, który będzie właścicielem jenkins.
jenkinslts_user_home Katalog domowy dla użytkownika jenkins podanego powyżej jako jenkinslts_user. Ponieważ Jenkins jest domyślnie instalowany w /var/lib/jenkins, zaleca się użycie tego katalogu.
jenkinslts_user_shell Powłoka dla jenkinslts_user. Zwykle nie wymaga się używania powłoki, dlatego ustawiono na /bin/false.
jenkinslts_user_desired_state present oznacza utworzenie użytkownika, jeśli nie istnieje. Alternatywną opcją jest absent.
jenkinslts_debian_gpg_key Klucz GPG Jenkins wymagany w systemach opartych na Debianie.
jenkinslts_el_gpg_key Klucz GPG Jenkins wymagany w systemach EL.
jenkinslts_repo_debian Repozytorium do dodania dla systemów opartych na Debianie.
jenkinslts_repo_debian_filename Nazwa pliku repozytorium, który zostanie zapisany w /etc/apt/sources.list.d/ w systemach opartych na Debianie. Domyślnie to wartość zmiennej "{{ jenkinslts_app_name }}", która wynosi jenkins.
jenkinslts_repo_el_name Nazwa repozytorium dla Jenkins w systemach opartych na EL.
jenkinslts_repo_el_description Opis, który zostanie dodany w pliku repozytorium EL dla Jenkins.
jenkinslts_repo_el Bazowy adres URL repozytorium dla Jenkins w systemach opartych na EL.
jenkinslts_repo_el_gpgcheck Warunek, czy przeprowadzić kontrolę gpg dla Jenkins w systemach opartych na EL.
jenkinslts_repo_desired_state present oznacza utworzenie pliku repozytorium, jeśli nie istnieje w systemach Debian lub EL. Alternatywną opcją jest absent (niezalecane, ponieważ uniemożliwi to instalację pakietu jenkins).
jenkinslts_app_name Nazwa aplikacji Jenkins LTS (Long Term Support), tj. jenkins.
jenkinslts_desired_state Stan pakietu jenkinslts_app_name (tj. samego pakietu jenkins). Określa, czy zainstalować, sprawdzić dostępność czy odinstalować (tj. wartości modułu apt ansible: present, latest, lub absent).
jenkinslts_default_debain_config_file Domyślny plik konfiguracyjny Jenkins w systemach opartych na Debianie.
jenkinslts_default_el_config_file Domyślny plik konfiguracyjny Jenkins w systemach opartych na EL.
jenkinslts_app_port Port, na którym ma działać Jenkins.
jenkinslts_app_heapsize_max Maksymalny rozmiar sterty JVM przydzielany Jenkinsowi.
jenkinslts_service_name Domyślna nazwa usługi dla Jenkins.
jenkinslts_service_desired_state Żądany stan usługi Jenkins.
jenkinslts_service_desired_boot_enabled Żądany stan włączony/wyłączony dla usługi Jenkins.
jenkinslts_app_check_status_code Żądany kod statusu do zwrócenia w handlerze sprawdzającym URL Jenkins po instalacji i restarcie. Ustawiono na 200, ponieważ ścieżka /login zwraca kod HTTP 200.
jenkinslts_app_check_status_code_retries Liczba prób URL curl ustawiona na 10 (Jenkins może potrzebować trochę czasu na uruchomienie).
jenkinslts_app_check_status_code_delay Opóźnienie prób URL curl ustawione na 5.
jenkinslts_app_admin_password_file Plik zawierający domyślne hasło administratora dla interfejsu użytkownika Jenkins.

Zależności

Jenkins wymaga Javy.

Możesz zainstalować Javę za pomocą roli darkwizard242.adoptopenjdk.

Przykład Playbooka

Do domyślnego działania roli (tj. instalacji pakietu jenkins) w playbookach ansible.

- hosts: servers
  roles:
    - darkwizard242.jenkinslts

Aby dostosować działanie roli (tj. instalacji roli darkwizard242.adoptopenjdk obok darkwizard242.jenkins) w playbookach ansible.

- hosts: servers
  roles:
    - darkwizard242.adoptopenjdk
    - darkwizard242.jenkinslts
  vars:
    adoptopenjdk_app_name: adoptopenjdk-11-hotspot
    adoptopenjdk_desired_state: present
    jenkinslts_desired_state: latest

Aby dostosować działanie roli (tj. odinstalowania pakietu jenkins) w playbookach ansible.

- hosts: servers
  roles:
    - darkwizard242.jenkinslts
  vars:
    jenkinslts_desired_state: absent

Licencja

MIT

Informacje o autorze

Ta rola została stworzona przez Ali Muhammad.

O projekcie

Jenkins LTS version installation on Ubuntu xenial/bionic, Debian stretch and CentOS7.

Zainstaluj
ansible-galaxy install darkwizard242.jenkinslts
Licencja
mit
Pobrania
4.9k
Właściciel
Senior DevOps/CloudOps Engineer. Dedicated to Automating everything I come across. Love to work on and learn new technologies/tools everyday!