comodojo / dispatcher.servicebundle.gitdoc
与dispatcher.plugin.gitdoc一起使用的服务,用于通过comodojo/dispatcher.framework生成文档。
Requires
- comodojo/dispatcher.plugin.gitdoc: dev-master
- comodojo/dispatcher.template.bootstrap: 1.0.*
- comodojo/httprequest: 1.0.*
- comodojo/zip: 1.0.*
- dompdf/dompdf: 0.6.*
- erusev/parsedown: 1.1.*
This package is auto-updated.
Last update: 2022-02-01 12:37:58 UTC
README
Gitdoc是用于发布comodojo::docs网站的comodojo/dispatcher框架服务+插件包。
此插件旨在管理不同项目的文档,这些文档作为markdown文件存储在多个GitHub仓库中。
构建和展示过程通过GitHub推送/标签事件触发;在每个(支持的)事件消息中,将从GitHub下载整个文档归档并解析为静态html。
安装
-
使用composer安装comodojo/dispatcher。
-
需要comodojo/dispatcher.servicebundle.gitdoc包
commposer require comodojo/dispatcher.servicebundle.gitdoc dev-master
-
确保dispatcher项目中的
downloads
和docs
文件夹可由apache用户读写,并将以下两行添加到dispatcher-config.php
define('DISPATCHER_DOWNLOAD_FOLDER', DISPATCHER_REAL_PATH."downloads/"); define('DISPATCHER_DOC_FOLDER', DISPATCHER_REAL_PATH."docs/");
-
在
config
目录下创建gitdoc.json
文件;文件内容应遵循此模式{ "sitename": "Foo docs", "description": "Foo Documentation", "showHeader": true, "showFooter": true, "links": { "External link": "http://www.example.org" }, "projects": [ { "name": "bar", "description": "the bar project", "docId": "bar", "hash": "myReallySecureGitHubWebhookHash" } ] }
- showHeader和showFooter是布尔值:如果为true,则显示标题和页脚信息部分
- links对象中的每个链接都会添加一个外部href到顶部/右侧菜单项
- project对象中的每个项目都会声明一个新的文档部分
- name:docsite名称
- description
- docId(参见下一节了解如何使用它)
- hash(可选):秘密hook散列
-
在GitHub仓库上设置WebHook
- 有效载荷URL:
http://your.documentation.site/receiver/[docId - as in previous section]/
- 内容类型:
application/x-www-form-urlencoded
- 秘密:
hash
参数,如前所述 - 事件:选择创建、删除、推送
- 有效载荷URL:
您的docsite现在已准备好接收更新。
仓库摘要
仓库应包含markdown文件,每个章节一个,还有一个如下的summary.json
文件
{
"title": "Foo docs",
"subtitle": "My fantastic project",
"chapters": {
"First chapter": "first.md",
"Second chapter": "second.md",
"Foo chapter": "foo.md",
"Conclusions": "foo.conclusions.md"
}
}
在chapters
对象中,键将成为直接添加到html中的章节名称。
h1 (#) 和 h2 (##) 标题将被链接到左侧侧边栏滚动spy。
用法
只需导航到http://your.documentation.site/docId/
即可显示您的文档。
Dispatcher将自动注入路由,每个至少收到1次更新的项目一个。
由于这种行为,强烈建议不要将其他规则/服务添加到用于发布文档的dispatcher实例中。