目前我正在开发ansible编排系统。项目结构是这样的:
site.yml
webservers.yml
fooservers.yml
roles/
common/
files/
templates/
tasks/
handlers/
vars/
defaults/
meta/
webservers/
files/
templates/
tasks/
handlers/
vars/
defaults/
meta/
因此,我必须处理数十种游戏书,角色,子目录,任务,变量文件等。现在,我使用WinSCP作为一种IDE(我在Windows开发机器上工作)这个解决方案远非完美,但允许我在文件和文件夹之间轻松导航。事实上我非常想念Visual Studio(intellisense!)。我之前尝试过在我的开发机器上安装Eclipse,但它太慢了。我发现shell工具相当不舒服。由于公司限制,我无法添加任何VM-s。
所以,我的问题是: 是否有任何Windows(或轻量级Ubuntu GUI)工具来处理Linux开发的文件和文件夹的复杂结构?
答案 0 :(得分:5)
基于JetBrains的IDE有一个YAML/Ansible插件,可以向Ansible playbook结构添加一些上下文和语法高亮显示。
Sublime有一个插件,可以向Ansible文件添加语法高亮显示https://github.com/clifford-github/sublime-ansible
这两个工具都可以显示文件夹结构,并使用sftp / ssh连接到远程服务器。
答案 1 :(得分:2)
Vim不是IDE,但是我(工作和)每天使用Rocannon for Ansible进行自动完成,语法突出显示,内置帮助和其他类似IDE的功能
Vim学习起来不是很快,但很轻松。 :)
在Rocannon github页面上有一个GIF演示,可以让您了解它提供的内容。
答案 2 :(得分:1)
这是IDE或编辑器的正式列表:https://docs.ansible.com/ansible/latest/community/other_tools_and_programs.html#popular-editors
当前看来,最好的选择是Visual Studio Code,因为它具有专门用于Ansible的自动完成和语法突出显示功能。
答案 3 :(得分:0)
Ansible应该有一个IDE来验证YAML lint和ansible本身的语法错误(取决于版本)。这是一个浪费时间,必须运行和调试并反复遇到的事情,最新的例子是这样的: “msg”:“模块不支持的参数:寄存器”}
当你所做的只是:
- name: gather rds instance facts
rds:
command: facts
instance_name: "{{ wp_db_instance }}"
register: database_facts
VS
- name: gather rds instance facts
rds:
command: facts
instance_name: "{{ wp_db_instance }}"
register: database_facts
注意缩进。这就是YAML痛苦的原因。
答案 4 :(得分:0)
Netbeans了解yaml但不支持Ansible Playbook甚至是通用项目。所以我从exices源创建一个PHP项目,并在我的ansible playbook中指出。
加上git整合('因为你确实把你的剧本保存在scm中)
根本没有任何安全意识,例如帮助找到变量声明
答案 5 :(得分:0)
我为基于IntelliJ的IDE编写了一个插件,该插件有助于处理ansible文件。 它会自动完成所有字段并可以检测角色并提出建议。