Ansible 在 Ansible Galaxy 分享 Roles(下)
上一章「Ansible 在 Ansible Galaxy 分享 Roles(上)」,我们帮 Role 补充了 Galaxy 网站所需的资讯,接下来就是把它分享到 Galaxy 上了!
怎么上传 Roles 到 GitHub?
先前在「Ansible 怎么使用 Roles」一章曾提过,Galaxy 里的 Roles 其实是存在 GitHub 上的。
- 在 GitHub 建立一个 Repository (储存库) 1,官方建议使用
ansible-role-acme
的格式进行命名。 把写好的 Roles 加入 Git 版本控制里。
$ git commit -a $ git push
借由 Git 从本地 (Local) 把 Roles 上传至 GitHub。
- 若对 Git 和 GitHub 不熟,可参考冻仁先前写的 Git and Github basic with SourceTree 简报。
怎么在 Galaxy 汇入 Roles?
进入 Galaxy 网站,并点击右上角的 SIGN IN。
使用 GitHub OAuth 登入 Galaxy 网站。
进入 My Roles 页面,并点选左方按钮启用 Roles,完成后将显示 ✔。
当 Roles 太多时,可借由右方的搜寻框进行过滤。
启用 Role 后,点击右方的 Import Role 图示进行汇入。
汇入成功后将显示 Succeeded,点击 Succeeded 即可观看这次汇入的相关资讯。
我们可借由此页面检查 Meta Data (
meta/main.yml
) 的设定是否有误。若想自定 Role name,可通过 Role Settings 进行更改。
以上,现在我们可以在 https://galaxy.ansible.com/chusiang/testlink/ 看到刚汇入的 Role,其中 chusiang
为 username,testlink
为 role name,而完整名称则是 chusiang.testlink
。
后话
写完复杂 Playbooks,我们只需再费点工夫就可以在 Galaxy 上与全世界分享了!
相关连结
1. 若不会在 GitHub 上建立 Repository,可参考 Create A Repo | GitHub 一文。 ↩