首页 文章

Magallanes,Travis,Jenkins,Ansible之间的目的和差异[关闭]

提问于
浏览
1

我正在努力让自己更新工作流/部署自动化工具,但数量太多,我无法辨别我找到的多种工具的目的差异 .

到目前为止,我发现有趣的是:

Magallanes:

What I understood so far: 这是一个部署工具 . 其目的是自动化部署,以便您可以摆脱大多数人为错误和时间来进行部署 .

Travis:

What I understood so far: 持续集成工具 . 它用于在提交/部署时自动化测试集成 . 但是......它能否自动化部署?我应该将它与Magallanes集成,以便Travis可以管理Magallanes的部署吗?

Jenkins:

What I understood so far: 与Travis相同但不作为服务,但作为一种工具,您可以配置和安装 . 同样的疑虑,我可以自动化部署吗?只是测试集成?

Ansible:

What I understood so far: 多个任务的自动化,部署,服务配置管理......我想我可以摆脱Magallanes并使用Ansible,这是对的吗?我可以将Ansible与Travis整合吗?或者travis也是Ansible部署工作(目前我唯一感兴趣的自动化)?

你可以看到我迷失在这里 .

哇:已经投了一票,我应该把它放在哪里?这是一个编程相关的问题,他们是编程相关的工具 .

Edit :问题是我需要与团队和我正在开发的项目一起实施部署工具 .

我所怀疑的是,我应该使用哪种工具(或者我应该将哪些工具集成在一起) . 例如:我知道Travis用于测试自动化,但我可以将其用于部署吗?正如我所说的,我应该将它与更面向部署的工具(Magallanes,或Ansible)一起使用......也许直接使用Git?

团队使用Filezilla上传产品和SVN作为代码共享工具(没有分支)......我在Git(服务器端,再见,Filezilla)中考虑使用钩子和精细分支系统,但我知道那里'更好的方式和更完整的部署流程 .

1 回答

  • 3

    特拉维斯和詹金斯都是 continuous integration 工具 . 它们的主要目的是在所有提交上运行测试套件,但此类别中的某些工具也可以在构建过程中触发自动部署 . 编写需要编译的代码的人有时会谈论构建工件,这些工件实际上可以部署,但是如果你可能只是在服务器上执行git pull或drop tarball,那么你就不需要了关注CI工具的这个方面 .

    我之前没有听说过Magallanes,但是,它似乎是一个 deployment 工具 . 许多公司根据其特定情况创建自己的部署工具,有时基于Capistrano或Fabric等工具 .

    Ansible是一个 configuration management 工具 . 这主要是用于管理服务器的配置,但作为附带好处,因为它了解所有服务器,它还可以处理为它们部署新代码 . 此类别中的其他流行工具是Puppet,Chef和Salt .


    这些工具都是关于预先存在的流程的自动化 . 所以,当你找到一遍又一遍的步骤时,去研究可以用什么工具来解决这个问题;我发现这是一个比找到工具更好的方法,并试图确定他们可以解决的问题 .

相关问题