buluma.maven
Ansibleロール maven
Apache Mavenをシステムにインストールして構成します。
GitHub | バージョン | 問題 | プルリクエスト | ダウンロード |
---|---|---|---|---|
例のプレイブック
この例はmolecule/default/converge.yml
から取られており、各プッシュ、プルリクエスト、リリース時にテストされます。
# コード: 言語=ansible
---
- name: Converge
hosts: all
become: true
gather_facts: true
pre_tasks:
- name: aptキャッシュを更新
ansible.builtin.apt:
update_cache: true
changed_when: false
when: ansible_pkg_mgr in ('apt')
- name: jdk 8をインストール (apt)
become: true
ansible.builtin.apt:
name: openjdk-8-jdk
state: present
when: ansible_pkg_mgr in ('apt')
roles:
- role: buluma.maven
maven_version: '3.9.6'
maven_install_dir: /opt/maven
- role: buluma.maven
maven_version: '3.3.9'
maven_is_default_installation: false
maven_fact_group_name: maven_3_3
# post_tasks:
# - name: デフォルトのmavenの事実を確認
# ansible.builtin.assert:
# that:
# - ansible_local.maven.general.versionが定義されている
# - ansible_local.maven.general.homeが定義されている
#
# - name: maven 3.3の事実を確認
# ansible.builtin.assert:
# that:
# - ansible_local.maven_3_3.general.versionが定義されている
# - ansible_local.maven_3_3.general.homeが定義されている
マシンは準備する必要があります。CIではmolecule/default/prepare.yml
を使用してこれを行います:
---
- name: 準備
hosts: all
gather_facts: false
become: true
vars:
- java_type: jdk
- java_version: "8"
roles:
- role: buluma.bootstrap
- role: buluma.core_dependencies
- role: buluma.buildtools
- role: buluma.java
java_vendor: openjdk
java_version: "11"
これらのロールを使用する方法の完全な説明と例もご覧ください。
ロール変数
変数のデフォルト値はdefaults/main.yml
に設定されています:
# コード: 言語=ansible
# https://github.com/gantsign/ansible-role-maven/blob/master/defaults/main.yml
---
# Mavenのバージョン番号
maven_version: '3.9.6'
# Mavenの再配布パッケージをダウンロードするミラー
maven_mirror: "http://archive.apache.org/dist/maven/maven-{{ maven_version | regex_replace('\\..*', '') }}/{{ maven_version }}/binaries"
# Mavenディストリビューションの基本インストールディレクトリ
maven_install_dir: /opt/maven
# Mavenインストール用にダウンロードしたファイルを保存するディレクトリ
maven_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"
# Mavenのダウンロードタイムアウトを待機する秒数
maven_download_timeout: 10
# Mavenをダウンロードする際にプロキシを使用するかどうか(プロキシ環境変数が存在する場合)
maven_use_proxy: true
# Mavenをダウンロードする際にHTTPS証明書を検証するかどうか
maven_validate_certs: true
# これがデフォルトのインストールである場合、/usr/local/binにmvnとmvnDebugのシンボリックリンクが作成されます。
maven_is_default_installation: true
# このMavenインストールに関するAnsibleファクトのグループ名。
#
# このロールを複数回使用して複数のMavenバージョンをインストールする場合はオーバーライドしてください。
#
# 例: maven_fact_group_name: maven_3_3
# これによりMavenホームファクトが次のようになります:
# ansible_local.maven_3_2.general.home
maven_fact_group_name: maven
要件
- requirements.txtに記載されているpipパッケージ。
使用されるロールの状態
システムを準備するために次のロールが使用されます。他の方法でシステムを準備することもできます。
要件 | GitHub | バージョン |
---|---|---|
buluma.bootstrap | ||
buluma.buildtools | ||
buluma.core_dependencies | ||
buluma.java |
コンテキスト
このロールは多くの互換性のあるロールの一部です。これらのロールに関する詳細についてはそのドキュメントを参照してください。
以下は関連するロールの概要です:
互換性
このロールは以下のコンテナイメージでテストされています:
コンテナ | タグ |
---|---|
EL | 8, 9 |
Fedora | 39, 38 |
opensuse | 全て |
Ubuntu | bionic, focal, jammy |
必要なAnsibleの最小バージョンは2.12で、テストは以下が行われました:
- 前のバージョン。
- 現在のバージョン。
- 開発バージョン。
問題を見つけた場合は、GitHubに登録してください。
変更履歴
ライセンス
著者情報
インストール
ansible-galaxy install buluma.maven
ライセンス
apache-2.0
ダウンロード
4.2k
所有者
DevOps Engineer