Github Action 简介
介绍
它是一个Continuous integration
和continuous delivery
(CI/CD) 平台,可让您自动化构建、测试和部署。您可以在存储库中构建和测试每个拉取请求,或将合并的拉取请求部署到生产环境。
当您的存储库中发生其他事件时,您可以在GitHub Actions
的帮助下运行工作流。每当有人在您的存储库中创建新问题时,您都可以运行工作流来自动添加适当的标签。
如果您想在自己的数据中心或云基础架构中托管own runners
的运行器,可以使用virtual machines provided by GitHub
。
GitHub Actions 的组成部分
正在打开的拉取请求或正在创建的问题可以由GitHub Actions workflow
触发。一项或多项作业可以按顺序或parallel
运行。每个作业都将在其自己的虚拟机运行程序或容器内运行,并且具有一个或多个步骤,可以运行您定义的脚本或运行操作,这是一种可以简化工作流程的reuse extension
。
工作流程
- 运行一个或多个作业的流程称为
workflows
。 - 当您的存储库中的事件触发时,一个 YAML 文件将被检入到您的存储库中,并将用于定义一组流程。
- 一个存储库可以有
multiple workflows
,每个工作流可以执行一组不同的任务。
活动
- 事件是存储库中的
specific activity
。 - 当有人创建拉取请求、打开问题或将提交推送到存储库时,活动可能源自 GitHub。
- 您可以按计划或手动发布运行。
工作
- 作业是流程中的一
set of steps
。 - 将要运行的动作要么是一个
shell script
,要么是一个将要执行的动作。 - 这些步骤
dependent
。 - 如果每个步骤都在同一个运行器上执行,则
Data can be shared
到另一个步骤。 - 构建应用程序的步骤之后可以执行测试它的步骤。
- 默认情况下,
jobs have no dependency
并且彼此并行运行。 - 当一个作业依赖于另一个作业时,它将
wait for the other job to finish
才能运行。
行动
- 操作是执行复杂但
frequently repeated task
的custom application
。 - 您可以使用操作来帮助减少您编写的重复代码量。
- 您可以从 GitHub 拉取您的 git 存储库,为您的构建环境设置正确的工具链,或者通过操作设置对您的云提供商的身份验证。
跑步者
- 运行器是运行您的工作流程的服务器。
- 跑步者一次可以运行一个作业。
- 每次运行都在一个全新的、
newly-provisioned virtual machine
中执行。 - 为了运行您的工作流程,GitHub 提供了 Ubuntu Linux、Microsoft Windows 和 macOS 运行器。
- 如果您需要不同的操作系统,您可以托管自己的跑步者。
请参阅文章Github Actions 简介 – 第 2 部分
感谢您阅读我的文章直到最后。我希望你今天学到了一些特别的东西。如果您喜欢这篇文章,请分享给您的朋友,如果您有建议或想法与我分享,请在评论框中写下。
原文: https://dev.to/makendrang/introduction-to-github-actions-part-1-5ep6