Ansible Role Publish To Galaxy
摘要
-
本文介绍如何将Ansible Role发布到Galaxy。
-
关于Ansible的介绍可以参看 Linux常用命令--Ansible
-
关于将Ansible Collection发布到Galaxy的详细介绍可以参看 Ansible Collection Publish To Galaxy
创建Role
-
在当前目录下创建一个名称为
mongodb-install
的role,实际上就是创建一个名称为mongodb-install
的目录结构
1 | ansible-galaxy init mongodb-install |
-
创建完成后,目录结构如下:
1 | mongodb-install |
-
编辑role,相关代码参考https://github.com/hanqunfeng/ansible-role-mongodb
-
这里我们要注意两个文件
README.md
: 这里面配置的是role的描述信息,其会显示在文档
一栏中
meta/main.yml
,这里面配置的是role的作者信息
上传Role到Github
1 | cd mongodb-install |
发布Role到Galaxy
-
登录https://galaxy.ansible.com/,点击
登录
,使用Github账号登录。 -
导入Role
-
填写Role信息
-
查看导入状态
-
搜索Role
此时我们在角色列表中搜索关键字hanqunfeng
,就可以搜索到我们刚刚上传的那个role了
-
点击进去我们就可以查看角色的详细信息了
修改Role
-
修改了role信息后,重新上传到github即可
-
如果同时修改了
README.md
等role信息,可以在galaxy中重新上传即可
安装Role
1 | # 安装 |
使用Role
-
在
playbook
中引用role
1 |
|
-
执行playbook
1 | ansible-playbook -i hosts playbook.yml |
发布指定版本到Galaxy
-
给角色代码打tag
1 | # 创建tag,名称为 v1.0.0 |
-
在galaxy中重新上传,注意此时在要指定tag名称
-
上传成功后,就可以在galaxy中查看到对应的版本了
下载指定版本的角色
1 | # 注意role和版本号之间用逗号隔开,不加版本号,则下载最新版本 |
搜索角色
-
除了在galaxy网站中搜索,还可以通过命令行搜索
1 | $ ansible-galaxy search hanqunfeng |