robertdebock.rundeck

Rola Ansible Rundeck

Zainstaluj i skonfiguruj Rundeck na swoim systemie.

GitHub GitLab Pobrania Wersja
github gitlab downloads Wersja

Przykładowy playbook

Ten przykład pochodzi z molecule/default/converge.yml i jest testowany podczas każdego push, żądania pull i wydania.

---
- nazwa: Zbieżność
  hosty: wszystkie
  stań się: prawda
  zbierz_fakty: prawda

  role:
    - rola: robertdebock.rundeck

Maszyna musi być przygotowana. W CI robi się to używając molecule/default/prepare.yml:

---
- nazwa: Przygotowanie
  hosty: wszystkie
  stań się: prawda
  zbierz_fakty: fałsz

  zmienne:
    _java_version:
      domyślna: 11
      Debian-12: 17
      Ubuntu-22: 17
    java_version: "{{ _java_version[ansible_distribution ~ '-' ~ ansible_distribution_major_version] | default(_java_version['domyślna']) }}"

  role:
    - rola: robertdebock.bootstrap
    - rola: robertdebock.java
    - rola: robertdebock.common

Zapoznaj się także z pełnym wyjaśnieniem i przykładem jak korzystać z tych ról.

Zmienne roli

Domyślne wartości dla zmiennych są ustawione w defaults/main.yml:

---
# domyślny plik dla rundeck

# Wersja Rundeck do zainstalowania
rundeck_version: "4.17.3"
rundeck_release_date: 20231113

# Gdzie zainstalować rundeck.
rundeck_rdeckbase: /opt/rundeck

# Rozmiar pamięci Xmx w mb. (Przechowywane w: "{{ rundeck_rdeckbase }}/etc/profile".)
rundeck_xmx: 4096
rundeck_xms: 256
rundeck_maxmetaspacesize: 128

# Adres URL, na którym będzie dostępny Rundeck:
rundeck_port: 4440
rundeck_address: "{{ ansible_all_ipv4_addresses[0] | default('127.0.0.1') }}"

# Możesz zmienić kontekst na przykład: "/rundeck". Pusta wartość oznacza,
# że nie dodawany jest żaden specyficzny kontekst.
rundeck_server_web_context: ""

rundeck_config:
  - parameter: server.address
    value: "{{ rundeck_address }}"
  - parameter: grails.serverURL
    value: "{{ rundeck_url }}"
  - parameter: dataSource.url
    value: "jdbc:h2:file:/opt/rundeck/server/data/grailsdb"
#   Aby połączyć się z MySQL, użyj tych ustawień. (Baza danych musi być przygotowana.)
#   - parameter: dataSource.url
#     value: "jdbc:mysql://myserver/rundeck?autoReconnect=true&useSSL=false"
#   - parameter: dataSource.username
#     value: rundeck
#   - parameter: dataSource.password
#     value: rundeck
#   - parameter: dataSource.driverClassName
#     value: org.mariadb.jdbc.Driver

# Ustawienia dla Rundeck. (Przechowywane w: "{{ rundeck_rdeckbase }}/etc/framework.properties".)
rundeck_framework:
  - parameter: framework.server.hostname
    value: "{{ ansible_fqdn }}"
  - parameter: framework.server.name
    value: "{{ ansible_hostname }}"
  - parameter: framework.projects.dir
    value: "{{ rundeck_rdeckbase }}/projects"
  - parameter: framework.var.dir
    value: "{{ rundeck_rdeckbase }}/var"
  - parameter: framework.logs.dir
    value: "{{ rundeck_rdeckbase }}/var/logs"
  # - parameter: "framework.server.username"
  #   value: unset
  # - parameter: "framework.server.password"
  #   value: unset
  - parameter: framework.rundeck.url
    value: "{{ rundeck_url }}"
  # - parameter: "framework.ssh.keypath"
  #   value: unset
  # - parameter: "framework.ssh.user"
  #   value: unset
  - parameter: framework.ssh-connect-timeout
    value: 0
  - parameter: framework.ssh-command-timeout
    value: 0
  # - parameter: "framework.log.dispatch.console.format"
  #   value: unset
  - parameter: framework.rundeck.execution.script.tokenexpansion.enabled
    value: true

# domyślni użytkownicy, przechowywani w {{ rundeck_rdeckbase }}/server/config/realm.properties
rundeck_users:
  - username: "admin"
    password: "admin"
    roles: "użytkownik,admin"
  - username: "użytkownik"
    password: "użytkownik"
    roles: "użytkownik"

# Wtyczki Rundeck do zainstalowania
rundeck_plugins: []
# - "https://github.com/Batix/rundeck-ansible-plugin/releases/download/3.1.1/ansible-plugin-3.1.1.jar"

Wymagania

Stan używanych ról

Następujące role są używane do przygotowania systemu. Możesz przygotować swój system w inny sposób.

Wymaganie GitHub GitLab
robertdebock.bootstrap Stan budowy GitHub Stan budowy GitLab
robertdebock.common Stan budowy GitHub Stan budowy GitLab
robertdebock.core_dependencies Stan budowy GitHub Stan budowy GitLab
robertdebock.java Stan budowy GitHub Stan budowy GitLab
robertdebock.service Stan budowy GitHub Stan budowy GitLab

Kontekst

Ta rola jest częścią wielu zgodnych ról. Zapoznaj się z dokumentacją tych ról w celu uzyskania dalszych informacji.

Oto przegląd związanych ról: dependencies

Zgodność

Ta rola została przetestowana na tych obrazach kontenerów:

kontener tagi
EL 9
Debian wszystkie
Fedora wszystkie
Ubuntu wszystkie

Minimalna wymagana wersja Ansible to 2.12, testy wykonano dla:

  • Poprzedniej wersji.
  • Bieżącej wersji.
  • Wersji deweloperskiej.

Jeśli znajdziesz jakiekolwiek problemy, zgłoś je w GitHub.

Licencja

Apache-2.0.

Informacje o autorze

robertdebock

Rozważ wsparcie mnie.

O projekcie

Install and configure rundeck on your system.

Zainstaluj
ansible-galaxy install robertdebock.rundeck
Licencja
apache-2.0
Pobrania
2.8k
Właściciel
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.