【问题标题】:GitLab pages: can a static site be generated from a project wiki?GitLab 页面:可以从项目 wiki 生成静态站点吗?
【发布时间】:2019-06-23 01:37:33
【问题描述】:

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

我还知道我可以将静态站点生成器连接到 webhook 事件以通知 wiki 更改。我正在尝试确定这个明显的(对我而言)用例是否可以通过 GitLab 的页面功能(它具有更简单的设置)被预期和实现,或者我是否真的需要求助于 webhook。

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

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

【问题讨论】:

    标签: gitlab gitlab-ci static-site


    【解决方案1】:

    我认为这个功能还不可用,尽管它肯定会非常有用。

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

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

    这将设置存储库镜像,启用从您的 wiki 存储库自动拉取更新到新的常规 GitLab 项目存储库。然后,您可以使用常规 GitLab CI 和 GitLab 页面功能从 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 界面。

    【讨论】:

    • 谢谢 - 我不确定这是否更简单。我需要仔细阅读这些页面。
    • 我现在制作了一个示例项目,从项目的 wiki 创建了一个静态文档页面。整个过程出奇地好。
    • @ThomasKainrad 感谢您提供这些示例,我成功地在本地提供了它,但是我有一个问题。就我而言,我仅为 wiki 创建了一个 repo。我可以通过只在主仓库中添加 docs 文件夹、mkdocs 配置文件和 .gitlab-ci.yml 来生成静态网站吗?还是我必须先将文件推送到 wiki 以更新网站。我在这个存储库镜像的事情上苦苦挣扎。
    猜你喜欢
    • 1970-01-01
    • 2012-05-26
    • 2023-04-11
    • 1970-01-01
    • 2012-07-08
    • 1970-01-01
    • 2011-02-20
    • 2021-09-29
    • 2017-11-11
    相关资源
    最近更新 更多