Forgejo Actions 是基于存储在代码库的 .forgejo/workflows 目录中的文件提供持续集成服务的工具。请注意,Forgejo 不直接运行作业,而是依赖于 Forgejo Runner 来执行作业。Runner 需要单独安装。
设置默认 Actions URL在工作流中,如果 uses: 没有指定绝对 URL,那么会将 DEFAULT_ACTIONS_URL 的值添加到它之前。
[actions]ENABLED = trueDEFAULT_ACTIONS_URL = https://code.forgejo.org在 https://code.forgejo.org 上发布的 Actions 具备以下特点:
与 Forgejo Actions 兼容基于自由软件许可发布可在以下组织中找到:通用目的的 ActionsDocker Actions禁用自 Forgejo v1.21 起,默认启用 Actions。如果要禁用它,请将以下内容添加到 app.ini 文件中:
[actions]ENABLED = false存储日志和构件存储在 Forgejo 中。缓存由 Runner 本身存储,不会发送到 Forgejo。
作业日志每个作业运行的日志由 Forgejo 服务器存储,永不过期。这些文件的存储位置在 app.ini 的 storage.actions_log 部分中配置,详见存储文档。
构件日志作业上传的构件由 Forgejo 服务器存储,过期时间默认为 90 天,可以按以下方式进行配置:
[actions]ARTIFACT_RETENTION_DAYS = 90这些构件的存储位置在 app.ini 的 storage.artifacts 部分中配置,详见存储文档。
管理员/监控/定时任务管理的 Web 界面可用于监视 Forgejo Actions 的运行状态、查看日志和构件,以及执行定时任务。您可以在此界面上执行以下操作:
监视作业状态:查看正在运行的作业、已完成的作业以及失败的作业。您可以检查作业的日志以了解详细信息。查看日志:通过 Web 界面访问作业的日志。这对于故障排除和分析非常有用。构件管理:查看作业上传的构件。您可以下载构件或删除不再需要的构件。定时任务:设置定时任务,例如定期清理日志或构件。请注意,管理员界面需要适当的权限,因此只有授权的用户才能访问它。
执行工作流Forgejo runner依赖于应用程序容器(Docker、Podman等)或系统容器(LXC)来在隔离环境中执行工作流程。它们需要独立安装和配置。例如,对于Docker,可以查看Docker安装文档以获取更多信息;对于Podman,虽然Podman通常与Docker兼容,但默认情况下不会创建用于管理容器的套接字(因为通常不需要)。
注册Forgejo runner需要连接到Forgejo实例,并且必须在这样做之前注册。在线注册需要特殊类型的令牌,并且可以从“Create new runner”按钮处获得;离线注册则更适合使用基础设施即代码(Ansible、Kubernetes等)来部署和配置Forgejo和Forgejo runner。
配置可以显示runner的默认配置,并将其存储在config.yml文件中,然后修改并使用它而不是默认配置。例如,可以设置日志级别、任务并发执行数量、超时时间等参数。
如果您有其他问题或需要更多详细信息,请随时提问!