

act 允许开发者在本地运行他们的 GitHub Actions 工作流程,提供快速反馈并简化开发流程。此工具模拟 GitHub Actions 环境,使用户能够在不提交和推送更改到远程仓库的情况下测试和调试工作流程。与直接在 GitHub 上测试不同,act 提供更快的迭代周期,并减少等待 CI/CD 管道的时间。它利用 Docker 执行操作,确保与 GitHub 环境的一致性。开发者受益于更快的反馈循环、更简单的调试,以及能够直接从他们喜欢的 IDE(如 VS Code)通过扩展管理和运行操作。
使开发者能够在本地运行 GitHub Actions 工作流程,无需将更改推送到远程仓库进行测试。这大大减少了反馈循环,允许更快地迭代和调试。它模拟 GitHub Actions 环境,确保工作流程在本地的行为与在 GitHub 服务器上的行为一致。
利用 Docker 执行操作,确保一个一致且隔离的环境,该环境反映了 GitHub Actions 运行时。这种方法保证了依赖项和配置得到正确管理,防止本地和远程执行之间的差异。它提取或构建在您的工作流程文件中定义的 Docker 镜像。
提供一个模拟环境,该环境反映了 GitHub 的环境变量,包括与仓库、提交和运行器相关的变量。这确保了工作流程可以在本地访问与在 GitHub 上相同的信息,从而促进对条件逻辑和集成的准确测试和调试。
通过专用扩展提供与 Visual Studio Code 的集成。这种集成允许开发者直接从他们的编辑器运行和测试工作流程,提供无缝的开发体验。它简化了迭代工作流程的过程,并减少了上下文切换。
允许用户指定自定义容器引擎,从而在管理执行环境方面提供灵活性。这对于有特定需求或更喜欢使用与默认 Docker 不同的容器引擎的用户特别有用。它通过配置支持各种容器引擎。
支持 GitHub Enterprise,使用户能够在本地为托管在其私有 GitHub Enterprise 实例上的仓库运行工作流程。这对于使用 GitHub Enterprise 进行开发和 CI/CD 管道的组织至关重要,允许他们在安全和受控的环境中测试和调试工作流程。
brew install act,或按照网站上的说明进行其他平台的安装)。,2. 导航到您的仓库: 将您的目录更改为包含 .github/workflows 目录的 Git 仓库的根目录。,3. 运行工作流程: 使用命令 act -W .github/workflows/<your_workflow_file.yml> 执行特定的工作流程。将 <your_workflow_file.yml> 替换为您的工作流程的实际文件名。,4. 指定一个作业: 通过将作业名称添加到命令来定位工作流程中的特定作业:act -W .github/workflows/<your_workflow_file.yml> -j <job_name>。,5. 查看输出: 在您的终端中观察输出,它模拟 GitHub Actions 运行器,包括日志、环境变量和生成的任何工件。,6. 自定义环境: 使用 -e 标志将环境变量传递给操作,或使用 -s 标志提供密钥。软件工程师可以使用 act 在本地调试复杂的工作流程。他们可以逐步执行每个操作,检查日志,并修改配置,而无需提交更改。这加速了调试过程,减少了在远程 CI/CD 管道中排除故障所花费的时间。
开发者可以使用 act 在将新的 CI/CD 工作流程部署到生产环境之前进行开发和测试。他们可以尝试不同的配置,测试集成,并在本地验证其工作流程的行为,确保它们在部署之前正常运行。
自定义 GitHub Actions 的维护者可以使用 act 在本地测试他们的操作。他们可以模拟不同的输入,测试各种场景,并确保他们的操作按预期运行。这提高了自定义操作在发布之前的质量和可靠性。
开发者可以使用 act 快速迭代对他们的工作流程文件的更改。他们无需等待完整的 CI/CD 运行,就可以在本地测试他们的更改并立即获得反馈。这大大加快了开发过程并提高了生产力。
软件工程师受益于 act,因为他们能够在本地快速测试和调试他们的 GitHub Actions 工作流程,减少等待 CI/CD 管道的时间,并提高整体开发效率。
DevOps 工程师可以使用 act 在本地开发和验证 CI/CD 管道,确保工作流程配置正确并按预期运行,然后再将它们部署到生产环境。
CI/CD 专家可以利用 act 测试和排除复杂工作流程的故障,确保 CI/CD 流程的各个方面都正常且高效地运行。
开源贡献者可以使用 act 测试并为使用 GitHub Actions 的项目做出贡献。这使他们能够快速验证他们的更改并确保与项目的 CI/CD 设置兼容。
开源 (MIT 许可证)。免费使用。