讨论如何将 fsfans.club 网站构建迁移到 omnisrv
submitted by
edited
hayden 留言希望 fsfans.club 网站的构建可以迁移到使用 omnisrv: https://codeberg.org/fsfans-cn/www/pulls/4#issuecomment-7760978
这不是我自己能做决定的事情,有一些细节需要大家讨论。
现状
目前 fsfans.club 使用 Dummy SSG 在 Codeberg Actions 自动构建,并将结果推送至 pages 分支。
omnisrv 是我自己开发的文档服务器,它最大的特色是文档使用模板静态映射,但用户可自由选择动态服务器、静态网站生成器、9P 服务器方案。
已经将 fsfans.club 的网站布局复刻至 omnisrv,效果良好: https://codeberg.org/fsfans-cn/www/pulls/4
问题
1. 网站构建方案
Dummy SSG 是 PHP 方案,在各环境直接安装 PHP 的二进制包即可开始构建;而 omnisrv 是 Go 程序,需要编译后使用。
- 在 Actions 下编译 Go 程序需要下载 Go 工具链,同时也需要很多的服务器资源,对服务提供方 (Codeberg) 不太友好;
- 直接下载编译好的 omnisrv 二进制,则需要大家信任二进制的提供者。(你们相信我的,对吧😉)
最近我建成了自己的构建床,像 omnisrv 等软件会利用 Webhooks 随最新的 commit 编译最新版,并放在这里: https://dl.unseen-site.fun/omnisrv/nightly/
目前有 sha256sum 确认发布文件的完整性。后续我会增加使用 Minisign 签名。
理想情况是使用可信任的、预构建的 omnisrv。也可提出其他建议。
2. 网站构建环境
编辑:已确定继续使用 Actions 构建网站。
结语
由于我还在处理论文等事宜,暂不在 fsfans 群聊活动。大家可以在群聊先行探讨,并在这里发表意见。
FSFans' PieFed
要不就用 Actions 吧,这样还方便一些。因为原 Dummy SSG 的作者也不太活跃,我觉得换成 omniserv 应该会不错。
我想我可以自己开个测试仓库专门调试 deploy.yaml 然后 force push 一顿🤣
最新的 Pull Request 已经完成了 omnisrv-ssg 版的
publish.sh,也去掉了那个actions/checkout。虽然现在就能 Merge 了,但还是先放上几天吧,我再看看 omnisrv 的设计是否还需要大改,以及怎么修改 Readme。
Just now got how to clone repos in Actions without the Node.js
actions/checkoutworkflow:Which even works for private repos.
You may also want more command-line arguments like
--depthor--filter.There are
FORGEJO_*too;GITHUB_*are for compat.You can also see other environment variables by running
envin a test action.