我有一个看起来像这样的ansible项目 .
[root@ansible-tower kubernetes]# pwd
/var/lib/awx/projects/kubernetes
[root@ansible-tower kubernetes]# tree
.
├── files
│ ├── apiserver
│ ├── config
│ ├── config.json
│ ├── docker
│ ├── dockercfg
│ ├── docker-storage
│ ├── ericsson-redhat-7-extras.repo
│ ├── ericsson-redhat-7.repo
│ └── http-proxy.conf
├── tasks
│ └── main.yaml
└── templates
├── config.j2
├── etcd.conf.j2
└── kubelet.j2
3 directories, 13 files
现在在Ansible Tower GUI中,我已经为Kubernetes设置了一个项目 .
然后我继续尝试为这份工作创建一个模板 . 但是当我尝试选择Playbook时,我无法看到 main.yaml
.
如何配置Ansible Tower以了解我的主要剧本是 main.yaml
且其依赖项位于 files/
和 templates/
文件夹中?
2 回答
在上面的第二个屏幕截图中,您似乎尚未在作业模板中选择项目 .
一旦选择它,您应该能够看到其中可用的剧本(即在配置项目时选择的'kubernetes'目录中的剧本) .
您可能需要更新目录结构以使用角色,并添加顶级手册以在'/var/lib/awx/projects/kubernetes'目录下包含您的角色 . 这样,您可以将塔工作指向顶级游戏手册,然后使用main.yml执行角色
我认为你持有一个角色存储库作为你的ansible“项目” .
为了使您的代码能够工作,您需要:
确保你的代码可以通过支持的源代码控制(
git
)获得,告诉塔/剧本你的角色是git仓库,类似galaxy的工作将您的文件(包括文件夹本身
kubernetes
)放在塔上的roles
文件夹中然后在你的剧本中你应该像常规角色一样参考角色 .
NOTE: 我对塔完全没有经验