gantsign.sdkman_init
Ansible角色:SDKMAN初始化
这个角色用于初始化SDKMAN,一个软件开发工具包管理器。该角色允许你在Ansible配置中安装特定的SDK,并设置默认使用的版本。
重要: 此角色要求SDKMAN已经安装。你可以使用我们的gantsign.sdkman角色来安装SDKMAN。
要求
Ansible >= 2.9
Linux发行版
Debian家族
Debian
- Stretch (9)
- Buster (10)
- Bullseye (11)
Ubuntu
- Bionic (18.04)
- Focal (20.04)
RedHat家族
Rocky Linux
- 8
Fedora
- 35
SUSE家族
openSUSE
- 15.3
注意:其他版本可能可以使用,但未经过测试。
角色变量
以下变量会改变此角色的行为:
# SDKMAN为每个用户初始化,因此你必须至少指定一个用户
users:
- username: # 要为其初始化SDKMAN的用户
sdkman_install:
- candidate: # 候选SDK名称,例如java
version: # 要安装的候选版本
path: # 可选,添加现有SDK安装到SDKMAN。
# 现有SDK的`version`不能与SDKMAN提供的版本相同。
# 版本字符串仅作为标识符,可以给它任何你喜欢的值(只要与此候选的其他版本不冲突)。
sdkman_default:
_candidate_sdk_name_here_: # 可选,默认版本
示例剧本
这是此角色单独使用的示例配置(不包括安装SDKMAN所需的角色)。
- hosts: servers
roles:
- role: gantsign.sdkman_init
users:
- username: example_username
sdkman_install:
- candidate: java
version: '8.0.181-zulu'
- candidate: java
version: '10'
path: '/opt/java/jdk-10.0.2'
- candidate: maven
version: '3.5.4'
sdkman_default:
java: '10'
maven: '3.5.4'
这是一个完整的示例,它使用gantsign.sdkman
角色来安装SDKMAN。注意gantsign.sdkman_init
角色可以与Ansible标签多次使用,以有条件地安装特定的SDK。
- hosts: servers
roles:
- role: gantsign.sdkman
sdkman_users:
- example_username
- role: gantsign.sdkman_init
tags:
- java
users:
- username: example_username
sdkman_install:
- candidate: java
version: '8.0.181-zulu'
- candidate: java
version: '10'
path: '/opt/java/jdk-10.0.2'
sdkman_default:
java: '10'
- role: gantsign.sdkman_init
tags:
- java
- maven
users:
- username: example_username
sdkman_install:
- candidate: maven
version: '3.5.4'
sdkman_default:
maven: '3.5.4'
来自GantSign的更多角色
你可以在Ansible Galaxy上找到GantSign的更多角色。
开发与测试
该项目使用Molecule来帮助开发和测试;该角色使用Testinfra和pytest进行单元测试。
要进行开发或测试,你需要安装以下内容:
由于以上内容的安装可能比较复杂,因此该项目包括Molecule Wrapper。Molecule Wrapper是一个shell脚本,用于安装Molecule及其依赖项(不包括Linux),然后使用你传递的命令执行Molecule。
要使用Molecule Wrapper测试此角色,请从项目根目录运行以下命令:
./moleculew test
注意:某些依赖项需要sudo
权限才能安装。
许可证
Apache 2
作者信息
John Freeman
GantSign Ltd. 公司编号:06109112(在英格兰注册)
关于项目
Ansible role for initializing the SDKMAN software development kit manager.
安装
ansible-galaxy install gantsign.sdkman_init
许可证
apache-2.0
下载
4k
拥有者