GitLab页面:能否从项目维基生成静态站点?

8
我知道GitLab Pages可以从项目存储库生成静态网站。然而,我想从项目的wiki生成静态网站,它是一个单独的存储库。
我也知道我可以将静态网站生成器挂钩到通知wiki更改的Webhook事件上。我正在努力确定是否通过GitLab的页面功能预见和实现了这个对我来说显而易见的用例,该功能具有更简单的设置,或者我确实需要使用Webhooks。
据我所知,似乎没有,我需要使用Webhooks,但可能有一些方法,只是在任何我能找到的地方都没有很好地描述。
最后:我想这样做的原因是GitLab的维基似乎有一个UI,专门为其工作更像维基而不是存储库的UI。我希望这将使它对我预见到的可能非技术用户更有用/更少敌对。
1个回答

6
我认为这个功能目前还不可用,即使它肯定会非常有用。
您可以尝试以下解决方法:
将项目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
生成的网站位于https://tkainrad.gitlab.io/wiki2docs

您可能会发现,在您的维基和实际网站之间有一个层是有用的。

这种解决方法与GitLab Pages一起提供了许多可能性,并且可以实现完全免费的维基或文档网站托管,同时保持非技术贡献者易于编辑的接口。


1
谢谢 - 我不确定那是否更简单。我需要仔细阅读那些页面。 - wu-lee
1
我现在制作了一个示例项目,从项目的维基创建静态文档页面。整个过程非常出乎意料地顺利运行。 - Thomas Kainrad
@ThomasKainrad 谢谢您提供这些示例,我已经成功在本地上运行了它,但是我有一个问题。在我的情况下,我只为维基创建了一个仓库。我是否可以通过仅添加文档文件夹、mkdocs配置文件和主仓库中的.gitlab-ci.yml来生成静态网站?还是我必须先将文件推送到维基以更新网站。我在这个仓库镜像方面遇到了困难。 - Paul Endymion

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接