GitLab 页面:可以从项目 wiki 生成静态站点吗?

wu-*_*lee 3 static-site gitlab gitlab-ci

所以我知道可以使用 GitLab 页面从项目的存储库生成静态网站。然而,我想做的是从项目的wiki,这是一个单独的存储库。

我也知道我可以将静态站点生成器挂接到 webhook 事件以通知 wiki 更改。我试图弄清楚这个明显的(对我来说)用例是否可以通过 GitLab 的页面功能来实现,它具有更简单的设置,或者我是否真的需要求助于 webhooks。

据我所知,事实并非如此,我确实如此,但可能有些方法在我能找到的任何地方都没有得到很好的描述。

最后:我想这样做的原因是,GitLab 的 wiki 似乎有一个定制的 UI,使它的工作更像是一个 wiki,而不是存储库的 UI。我希望这将使它对我预见使用它的潜在非技术用户更有用/更少敌意。

Tho*_*rad 5

我认为此功能尚不可用,尽管它肯定会非常有用。

您可以尝试以下解决方法:

将您的项目 wiki 的存储库设置为外部存储库。
https://docs.gitlab.com/ee/ci/ci_cd_for_external_repos/

这将设置存储库镜像,启用从您的 wiki 存储库自动拉取更新到新的常规 GitLab 项目存储库。然后,您可以使用常规的 GitLab CI 和 GitLab Pages 功能从 wiki 生成静态站点。

有关存储库镜像的更多信息:https : //docs.gitlab.com/ee/workflow/repository_mirroring.html


示例项目(编辑)

我现在为此做了一个基本的(开源)示例,它实际上运行良好,您可以浏览其源代码并查看https://gitlab.com/tkainrad/wiki2docs上的 wiki 。
生成的站点位于https://tkainrad.gitlab.io/wiki2docs

您甚至可能会发现在您的 Wiki 和实际活动站点之间设置一个层很有用。

这种变通方法与 GitLab Pages 一起提供了很多可能性,并且可以完全免费托管 wiki 或文档站点,同时为非技术贡献者维护一个简单的 EDIT 界面。