首先,Fireactions加载配置文件以确定设置,并启动运行器 池。它会不断检查以确保有足够的运行器可用。
对于新的运行器,Fireactions会从 GitHub 请求令牌,然后使用 Firecracker 快速创建一个隔离的 microVM。作业完成后,Fireactions会销毁 microVM。与 GitHub 托管的运行器一样,作业之间不会保留任何状态。
Fireactions 根据传入的工作流事件自动扩展运行器的数量。您可以定义作业标签并自定义虚拟机资源以满足您的需求。
您可以在任何常规裸机服务器或支持嵌套虚拟化(虚拟机在其他虚拟机内运行)的虚拟机上运行 Fireactions 。例如,您可以使用Fireactions VPS 模板在 Hostinger VPS 托管上轻松设置应用程序。
我们的结果
Fireactions 已获得丰厚回报,所有使用 CI/CD 工作流的团队都感受到了其影响。
客观地说,仅在过去一个月,我们就记录了 Fireactions 上835,186 分钟的构建时间。这个数字包括所有 CI/CD 工作流程,从简单的测试到复杂的部署管道。
我们最初的关键目标是将作业排队时间减少至少 90%。而现在,我们已将排队时间减少到零。
根据裸机服务器及其资源的配置,Fireactions 构建所需的时间比 GitHub 托管的运行器少 20 倍,特别是对于资源密集型任务。
Fireactions 上 GitHub 运行器的平均启动 富人电话号码数据 时间为 20 秒。而在传统虚拟机上创建和启动运行器通常需要一分钟或更长时间。
回馈社区
在 Hostinger,我们使用许多开源工具,并希望回馈社区。因此,我们从一开始就将 Fireactions 开发为开源。
我们由两名工程师组成的核心开发团队花了大约三个月的时间,同时处理其他职责,开发出了一个强大的解决方案。
我们将所有 GitHub 工作流程迁移到 Fireactions,并在近一年内修复了问题。这包括三次重大重构,根据初始部署和扩展阶段遇到的反馈和挑战增强了性能、可扩展性和可维护性。
我们会根据用户反馈继续改进 Fireactions。我们也鼓励并重视对项目的各种贡献。
Fireactions 是我们最近推出的第二个开源项目。我们在 9 月份推出了人工智能助手Kodee,并分享了一个开源Kodee 演示存储库,其中包含有关如何设置类似系统的说明。