darkwizard242.jenkinslts
Ansible Role: jenkinslts
このロールは、デフォルトでDebianベースおよびELベースのシステムにJenkinsのLTSバージョンをインストールします。また、変数を渡すことでアンインストールも可能です。
要件
JenkinsにはJavaが必要です。
Javaはdarkwizard242.adoptopenjdkロールを使用してインストールできます。
ロール変数
使用可能な変数は以下の通りです(defaults/main.yml
にあります):
変数リスト:
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"
変数の説明:
変数名 | 説明 |
---|---|
jenkinslts_group | Jenkinsのオーナーが属するグループ名。Debianベースのシステムでのみ必要です。 |
jenkinslts_group_desired_state | present は、グループが存在しない場合に作成することを示します。代わりにabsent を使用できます。 |
jenkinslts_user | Jenkinsを所有するユーザー名です。 |
jenkinslts_user_home | 上記で指定したjenkinsユーザーのホームディレクトリ。Jenkinsは通常/var/lib/jenkins にインストールされるため、推奨されるディレクトリです。 |
jenkinslts_user_shell | jenkinslts_user のシェル。通常はシェルは必要ありませんので、/bin/false に設定します。 |
jenkinslts_user_desired_state | present は、ユーザーが存在しない場合に作成することを示します。代わりにabsent を使用できます。 |
jenkinslts_debian_gpg_key | Debianベースのシステムで必要なJenkinsのGPGキーです。 |
jenkinslts_el_gpg_key | ELベースのシステムで必要なJenkinsのGPGキーです。 |
jenkinslts_repo_debian | Debianベースのシステムに追加するリポジトリです。 |
jenkinslts_repo_debian_filename | Debianベースのシステムの/etc/apt/sources.list.d/ に保存されるリポジトリファイルの名前。デフォルトはjenkins です。 |
jenkinslts_repo_el_name | ELベースのシステムのJenkins用リポジトリ名です。 |
jenkinslts_repo_el_description | ELベースのリポジトリファイルに追加される説明です。 |
jenkinslts_repo_el | ELベースのシステム用のJenkinsのリポジトリのbaseurl です。 |
jenkinslts_repo_el_gpgcheck | ELベースのシステムにおけるJenkinsのGPGチェックを行うかどうかの真偽値です。 |
jenkinslts_repo_desired_state | present は、DebianまたはELベースのシステムにリポジトリファイルが存在しない場合に作成することを示します。代わりにabsent を使用できます(推奨されません)。 |
jenkinslts_app_name | Jenkins LTS(長期サポート)アプリケーションの名前です。 |
jenkinslts_desired_state | Jenkinsパッケージの状態(present 、latest 、またはabsent )です。 |
jenkinslts_default_debain_config_file | DebianベースのシステムでのJenkinsのデフォルト設定ファイルです。 |
jenkinslts_default_el_config_file | ELベースのシステムでのJenkinsのデフォルト設定ファイルです。 |
jenkinslts_app_port | Jenkinsが使用するポート番号です。 |
jenkinslts_app_heapsize_max | Jenkinsに割り当てる最大JVMヒープサイズです。 |
jenkinslts_service_name | Jenkinsのデフォルトサービス名です。 |
jenkinslts_service_desired_state | Jenkinsサービスの望ましい状態です。 |
jenkinslts_service_desired_boot_enabled | Jenkinsサービスを有効または無効にするかの望ましい状態です。 |
jenkinslts_app_check_status_code | Jenkinsのインストールおよび再起動後にURLのチェックを行うハンドラの期待されるステータスコードです。200に設定されています。 |
jenkinslts_app_check_status_code_retries | URL curlのリトライ回数。Jenkinsが起動するのに時間がかかることがあるため、10回に設定されています。 |
jenkinslts_app_check_status_code_delay | URL curlのリトライ間隔。5に設定されています。 |
jenkinslts_app_admin_password_file | Jenkins UIのデフォルト管理者パスワードを含むファイルです。 |
依存関係
JenkinsにはJavaが必要です。
Javaはdarkwizard242.adoptopenjdkロールを使用してインストールできます。
例のプレイブック
Ansibleプレイブックでのロールのデフォルト動作(jenkins
パッケージのインストール)。
- hosts: servers
roles:
- darkwizard242.jenkinslts
Ansibleプレイブックでのロールのカスタマイズ(darkwizard242.adoptopenjdk
ロールをdarkwizard242.jenkins
と一緒にインストール)。
- hosts: servers
roles:
- darkwizard242.adoptopenjdk
- darkwizard242.jenkinslts
vars:
adoptopenjdk_app_name: adoptopenjdk-11-hotspot
adoptopenjdk_desired_state: present
jenkinslts_desired_state: latest
Ansibleプレイブックでのロールのカスタマイズ(jenkins
パッケージのアンインストール)。
- hosts: servers
roles:
- darkwizard242.jenkinslts
vars:
jenkinslts_desired_state: absent
ライセンス
作者情報
このロールはAli Muhammadによって作成されました。
プロジェクトについて
Jenkins LTS version installation on Ubuntu xenial/bionic, Debian stretch and CentOS7.
インストール
ansible-galaxy install darkwizard242.jenkinslts
ライセンス
mit
ダウンロード
4.9k
所有者
Senior DevOps/CloudOps Engineer.
Dedicated to Automating everything I come across.
Love to work on and learn new technologies/tools everyday!