trfore.jsvc
Ansible ロール: jsvc
RedHat/CentOS および Debian/Ubuntu で Apache Commons Daemon、つまり jsvc
をコンパイルします。
このロールは、Apache Commons から最新のソースコードをダウンロードしコンパイルし、バイナリを /usr/bin/
にコピーします。オプションで、JDK やソースコードのディレクトリを削除します。
手動でソースコードを Ansible コントロールホストにダウンロードしたい場合は、native-src の commons-daemon-*.*.*-native-src.tar.gz
を files
ディレクトリにダウンロードし、以下の2つの変数をプレイブックに設定してください:
jsvc_tar_src: commons-daemon-*.*.*-native-src.tar.gz
jsvc_tar_src_remote: false
ロールのインストール
Ansible Galaxy CLI を使って、このロールをインストールできます:
ansible-galaxy role install trfore.jsvc
または、requirements.yml
ファイルに含めて、ansible-galaxy install -r requirements.yml
でインストールできます。フォーマットは以下の通りです:
---
roles:
- trfore.jsvc
テストされたプラットフォーム
ansible-core
2.15、2.16 & 2.17- CentOS Stream 8 & 9
- CentOS 8 はデフォルトで Python 3.6 を使用し、ansible-core 2.17 ではサポートされていません
- Debian 10 & 11
- Ubuntu 20.04、22.04 & 24.04
要件
特になし
ロールの変数
利用可能な変数は以下に示されています。デフォルト値も記載しています(defaults/main.yml
を参照):
変数 | デフォルト | 説明 | 必須 |
---|---|---|---|
jsvc_src_version | 1.4.0 |
Apache Commons Daemon の最新リリース | いいえ |
jsvc_tar_src | URL | Apache Commons Daemon の native ソース tar ファイルの URL または相対パス | いいえ |
jsvc_tar_src_remote | true |
ブール値、URL からダウンロードする場合は true |
いいえ |
jsvc_tar_dir | /var/tmp |
ターゲットホストでのソースコードを展開およびコンパイルするための一時ディレクトリ | いいえ |
jsvc_tar_folder | 自動 | jsvc_tar_src 変数から決定されます |
自動 |
jsvc_build_dependencies | ["autoconf", "make", "gcc"] |
ソースコードをコンパイルするためのパッケージ | いいえ |
jsvc_remove_jdk | false |
ブール値、ビルド後に Java JDK をアンインストールするかどうか | いいえ |
jsvc_remove_tar_folder | false |
ブール値、ターゲットホストのソースコード一時ディレクトリを削除するかどうか | いいえ |
OS 特有の変数は以下に示されています。デフォルト値も記載しています(vars/main.yml
を参照):
変数 | デフォルト | 説明 | 必須 |
---|---|---|---|
jsvc_build_jdk | openjdk-11-jdk-headless |
Java JDK (Debian) | いいえ |
jsvc_build_jdk | java-11-openjdk-devel.x86_64 |
Java JDK (RHEL) | いいえ |
依存関係
特になし
サンプルプレイブック
- hosts: servers
become: true
roles:
- name: jsvc バイナリのコンパイル
role: trfore.jsvc
- 手動で tar ファイルをダウンロードし、JDK とソースディレクトリを削除したい場合:
- hosts: servers
become: true
vars:
jsvc_tar_src: commons-daemon-1.4.0-native-src.tar.gz
jsvc_tar_src_remote: false
jsvc_remove_jdk: true
jsvc_remove_tar_folder: true
roles:
- name: jsvc バイナリのコンパイル
role: trfore.jsvc
ライセンス
MIT
著者情報
テイラー・フォア (https://github.com/trfore)
関連ロールとプレイブック
Github | Ansible Galaxy |
---|---|
ansible-role-jsvc | trfore.jsvc |
ansible-role-mongodb-install | trfore.mongodb_install |
ansible-role-omada-install | trfore.omada_install |