[英]What are the differences between GitHub Actions and other CI tools like Jenkins?
GitHub announced an upcoming feature, GitHub Actions . GitHub 宣布了一项即将推出的功能,即GitHub Actions 。
I'm positive on the benefits of CI tools like Jenkins for automatic building or testing, which GitHub Actions is aimed to be used for in the future.我对 Jenkins 等 CI 工具在自动构建或测试方面的优势持积极态度,GitHub Actions 旨在在未来使用这些工具。
Having a repository on GitHub and using an external CI tool has the huge benefit of allowing to move the repository to another Git repository platform (or even local) without rewriting of the whole CI process.在 GitHub 上拥有一个存储库并使用外部 CI 工具具有巨大的好处,即允许将存储库移动到另一个 Git 存储库平台(甚至本地)而无需重写整个 CI 过程。 With GitHub Actions, you're more or less tied to the GitHub ecosystem.使用 GitHub Actions,您或多或少会与 GitHub 生态系统联系在一起。
I assume the integration of GitHub's Actions will be more fluent in the native environment, but are there any other advantages or disadvantages besides that?我认为 GitHub 的 Actions 的集成在原生环境中会更加流畅,但除此之外还有其他优点或缺点吗?
I've been working with GitHub actions full time for a couple of months now.几个月以来,我一直在全职使用 GitHub 操作。
It's still early days (June 2019), but here's my list:现在还为时尚早(2019 年 6 月),但这是我的清单:
docker build
docker run
away.在 GitHub 上,它只是一个docker build
docker run
away。main.workflow
spec (a subset of the HCL and really just a directed acyclic graph) is open source . main.workflow
规范(HCL 的一个子集,实际上只是一个有向无环图)是开源的。 The whole thing is a pretty thin wrapper around Docker anyway, so platform lock-in is arguably minimal.无论如何,整个事情都是围绕 Docker 的一个非常薄的包装器,因此平台锁定可以说是最小的。main.workflow
s is perhaps a good way to model CI/CD in particular and workflows in general.有向无环图 (DAG) 和main.workflow
的可视化编辑器可能是对 CI/CD 和一般工作流进行建模的好方法。 Takes some getting used to, but generalises well.需要一些时间来适应,但概括性很好。GitHub actions (still?) has sometimes surprisingly foundational limitations at this point (june 2019). GitHub 操作(仍然?)在这一点上(2019 年 6 月)有时具有令人惊讶的基本限制。
Having a repository on GitHub and using an external CI tool has the huge benefit of allowing to move the repository to another Git repository platform (or even local) without rewriting of the whole CI process.在 GitHub 上拥有一个存储库并使用外部 CI 工具具有巨大的好处,即允许将存储库移动到另一个 Git 存储库平台(甚至本地)而无需重写整个 CI 过程。
With GitHub Actions, you're more or less tied to the GitHub ecosystem.使用 GitHub Actions,您或多或少会与 GitHub 生态系统联系在一起。
Yes, and starting November 2019, slightly less so:是的,从 2019 年 11 月开始,略有下降:
See Joe Bourne 's annoucement " Self-hosted runners for GitHub Actions is now in beta ".请参阅Joe Bourne的公告“ GitHub Actions 的自托管运行器现已处于测试阶段”。
You can have self-hosted runners, which means:您可以拥有自托管的运行器,这意味着:
- Your environment, your tools ,你的环境,你的工具,
- Any size machine or configuration ,任何尺寸的机器或配置,
- Secure access and networking ,安全访问和网络,
- Large workload support .大工作量支持。
To support using self-hosted runners in your workflows, we've expanded the experience of using the
runs-on
key.为了支持在您的工作流程中使用自托管runs-on
,我们扩展了使用runs-on
键的体验。
When registering your self-hosted runners, they're each given a read-only label self-hosted which you can use withruns-on
.在注册您的自托管运行器时,它们每个都会获得一个只读标签 self-hosted,您可以将其与runs-on
。
Here's an example:下面是一个例子:# Use Any available Self-hosted runners connected to repo runs-on: self-hosted
See the documentation at " Hosting your own runners ".请参阅“ 托管您自己的跑步者”中的文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.