meierw.jenkins_config
jenkins_config
Ansible-Rolle zur Verwaltung verschiedener Optionen und Konfigurationen in Jenkins.
Anforderungen
- Ein Jenkins-Dienst sowie alle Plugins, die Sie konfigurieren möchten.
- Die Fähigkeit, jenkins_script gegen den genannten Jenkins-Dienst auszuführen.
Rollenvariablen
WICHTIG: Wenn angegeben, überschreiben die meisten dieser Variablen zuvor festgelegte Jenkins-Optionen. Achten Sie darauf, dass Sie keine Einstellungen verlieren, die Sie zuvor eingerichtet haben.
jenkins_config_url: http://localhost:8080
jenkins_config_user: admin
jenkins_config_password: admin
Die URL, der Benutzername und das Passwort zur Authentifizierung bei Jenkins. Werden verwendet, um jenkins_script auszuführen.
jenkins_config_csrf_enabled: null
Zustand des CSRF-Schutzes, der in den Jenkins-Einstellungen festgelegt werden soll. Eine Festlegung erfolgt nur, wenn einer der unterstützten Werte angegeben ist.
Unterstützte Werte:
truefalse
jenkins_config_global_environment_variables: []
# jenkins_config_global_environment_variables:
# - name: FOO
# value: bar
# - name: TOKEN
# value: xxxyyyzzz
Globale Umgebungsvariablen für Jenkins, die in den Jenkins-Einstellungen festgelegt werden sollen. Eine Festlegung erfolgt nicht, wenn die Liste leer ist.
jenkins_config_pipeline_durability: ''
Standardgeschwindigkeit/Dauerhaftigkeitsniveau der Pipeline, das in den Jenkins-Einstellungen festgelegt werden soll. Eine Festlegung erfolgt nicht, es sei denn, einer der unterstützten Werte ist angegeben.
Unterstützte Werte:
max_survivabilityperformance_optimizedsurvivable_nonatomic
jenkins_config_simple_theme_css_url: ''
# jenkins_config_simple_theme_css_url: https://cdn.rawgit.com/afonsof/jenkins-material-theme/gh-pages/dist/material-indigo.css
URL des Theme-CSS, das in den einfachen Theme-Einstellungen von Jenkins festgelegt werden soll. Eine Festlegung erfolgt nicht, wenn dieser Wert leer ist.
jenkins_config_jenkins_url: ''
Jenkins-URL, die in den Jenkins-Einstellungen festgelegt werden soll. Eine Festlegung erfolgt nicht, wenn dieser Wert leer ist.
jenkins_config_system_admin_email: ''
E-Mail-Adresse des Systemadministrators, die in den Jenkins-Einstellungen festgelegt werden soll. Eine Festlegung erfolgt nicht, wenn dieser Wert leer ist.
jenkins_config_global_pipeline_libraries: []
# jenkins_config_global_pipeline_libraries:
# - name: global-pipeline-library
# default_version: master
# load_implicitly: false
# allow_default_version_override: true
# scm_git_path: '[email protected]:example/global-pipeline-library.git'
# scm_credentials_id: jenkins-ssh
Globale Pipeline-Bibliotheken, die in den Jenkins-Einstellungen festgelegt werden sollen. Alle Felder sollten einen nicht-null Wert enthalten (leer / 0 / etc. je nach Typ). Eine Festlegung erfolgt nicht, wenn die Liste leer ist.
Pflichtfelder (dürfen nicht leer sein):
namescm_git_pathscm_credentials_id
jenkins_config_email_notification: null
# jenkins_config_email_notification:
# smtp_server: smtp.gmail.com
# default_user_email_suffix: @example.com
# smtp_auth_username: example
# smtp_auth_password: "{{ secret_smtp_password }}"
# use_ssl: false
# smtp_port: 465
# reply_to_address: ''
# charset: UTF-8
Werte zur E-Mail-Benachrichtigung, die in den Jenkins-Einstellungen festgelegt werden sollen. Alle Felder sollten einen nicht-null Wert enthalten (leer / 0 / etc. je nach Typ). Eine Festlegung erfolgt nicht, wenn jenkins_config_email_notification.smtp_server undefiniert ist.
jenkins_config_credentials: []
# jenkins_config_credentials:
# - kind: ssh_username_with_private_key
# id: jenkins-ssh
# username: jenkins
# private_key: "{{ secret_key }}"
# passphrase: ''
# description: Schlüssel von Ansible hinzugefügt
Zugangsdaten, die im globalen Bereich festgelegt werden sollen. Alle Felder sollten einen nicht-null Wert enthalten (leer / 0 / etc. je nach Typ). Eine Festlegung erfolgt nicht, wenn die Liste leer ist.
Pflichtfelder (dürfen nicht leer sein):
kindid
Unterstützte kind und zusätzliche benötigte Felder:
username_with_passwordid: Stringusername: Stringpassword: Stringdescription: String
ssh_username_with_private_keyid: Stringusername: Stringprivate_key: Stringpassphrase: Stringdescription: String
jenkins_config_nodes: []
# jenkins_config_nodes:
# - name: slave0
# description: Knoten von Ansible hinzugefügt
# num_of_executors: 2
# remote_root_directory: /var/lib/jenkins
# labels: durch Leerzeichen getrennte Labels
# usage: exklusiv
# launch_method:
# type: via_ssh
# host: slave0.example.com
# port: 22
# credentials_id: jenkins-ssh
# verification_strategy:
# type: manually_trusted_key
# require_initial_manual_trust: true
# availability:
# type: always
# environment_variables: # optionale Definition
# - name: FOO
# value: bar
# disable_deferred_wipeout: true # optionale Definition
Knoten, die in Jenkins festgelegt werden sollen. Alle definierten Felder sollten einen nicht-null Wert enthalten (leer / 0 / etc. je nach Typ). Eine Festlegung erfolgt nicht, wenn die Liste leer ist.
Pflichtfelder (dürfen nicht leer sein):
namenum_of_executorsremote_root_directoryusagelaunch_methodavailability
Unterstützte Werte für usage:
normalexclusive
Unterstützte launch_method: type und zusätzliche benötigte Felder:
via_commandcommand: String
via_sshhost: Stringport: Ganzzahlcredentials_id: String- Unterstützte
verification_strategy:typeund zusätzliche benötigte Felder:known_hosts_filemanually_provided_keyssh_key: String
manually_trusted_keyrequire_initial_manual_trust: Boolean
non_verifying
Unterstützte availability: type und zusätzliche benötigte Felder:
alwaysschedulestartup_schedule: Stringscheduled_uptime: Ganzzahlkeep_up_when_active: Boolean
demandin_demand_delay: Ganzzahlidle_delay: Ganzzahl
Beispiel-Playbook
- hosts: servers
roles:
- { role: meierw.jenkins_config }
Lizenz
MIT
Autorinformationen
- Autor: Walter Meier
Manages various options/configurations in Jenkins.
ansible-galaxy install meierw.jenkins_config