Skip to content

Commit

Permalink
feat: add docs-links-check ci and fix dead links
Browse files Browse the repository at this point in the history
  • Loading branch information
Selflocking committed Jun 21, 2023
1 parent 2422327 commit 3b4193f
Show file tree
Hide file tree
Showing 45 changed files with 191 additions and 175 deletions.
35 changes: 35 additions & 0 deletions .github/workflows/docs-links-check-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Check links for modified docs

on:
pull_request:
paths:
- 'docs/**'

jobs:
docs-links-check:
runs-on: ubuntu-latest
steps:
- name: Checkout 🛎️
uses: actions/checkout@master

- name: Check links for mdx files 🔎
uses: gaurav-nelson/github-action-markdown-link-check@v1
with:
use-quiet-mode: 'yes' # only show errors in output.
# use-verbose-mode: 'yes' # show detailed HTTP status for checked links.
# refer to https://github.com/tcort/markdown-link-check#config-file-format
config-file: '.github/workflows/docs.links.check.config.json'
check-modified-files-only: 'yes'
folder-path: 'docs/' # only check the docs/ folder
file-extension: '.mdx'

- name: Check links for markdown files 🔎
uses: gaurav-nelson/github-action-markdown-link-check@v1
with:
use-quiet-mode: 'yes' # only show errors in output.
# use-verbose-mode: 'yes' # show detailed HTTP status for checked links.
# refer to https://github.com/tcort/markdown-link-check#config-file-format
config-file: '.github/workflows/docs.links.check.config.json'
check-modified-files-only: 'yes'
folder-path: 'docs/' # only check the docs/ folder
file-extension: '.md'
23 changes: 23 additions & 0 deletions .github/workflows/docs-links-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Docs Links Check

on:
workflow_dispatch:
schedule:
- cron: "0 12 * * 6" # runs every saturday at 12:00 UTC

jobs:
docs-links-check:
runs-on: ubuntu-latest
steps:
- name: Checkout 🛎️
uses: actions/checkout@master

- name: Check Links 🔎
uses: gaurav-nelson/github-action-markdown-link-check@v1
with:
use-quiet-mode: 'yes' # only show errors in output.
# use-verbose-mode: 'yes' # show detailed HTTP status for checked links.
folder-path: 'docs/' # only check the docs/ folder
# refer to https://github.com/tcort/markdown-link-check#config-file-format
config-file: '.github/workflows/docs.links.check.config.json'
file-extension: '.md*' # .md or .mdx
13 changes: 13 additions & 0 deletions .github/workflows/docs.links.check.config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"ignorePatterns": [
{
"pattern": "^[^h]"
},
{
"pattern": "^https://codeigniter.com/"
},
{
"pattern": "^https://www.thinkphp.cn/"
}
]
}
3 changes: 1 addition & 2 deletions docs/Adapters.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,6 @@ A complete list of Casbin adapters is provided as below. Any 3rd-party contribut
| [File Adapter (built-in)](/docs/adapters#file-adapter-built-in) | File | Casbin || For [.CSV (Comma-Separated Values)](https://en.wikipedia.org/wiki/Comma-separated_values) files |
| [EF Adapter](https://github.com/casbin-net/EF-Adapter) | ORM | Casbin || MySQL, PostgreSQL, SQLite, Microsoft SQL Server, Oracle, DB2, etc. are supported by [Entity Framework 6](https://docs.microsoft.com/en-us/ef/ef6/) |
| [EFCore Adapter](https://github.com/casbin-net/EFCore-Adapter) | ORM | Casbin || MySQL, PostgreSQL, SQLite, Microsoft SQL Server, Oracle, DB2, etc. are supported by [Entity Framework Core](https://docs.microsoft.com/en-us/ef/core/) |
| [EFCore Adapter (.NET Core 5)](https://github.com/g4dvali/CasbinRBACAdapter) | ORM | [@g4dvali](https://github.com/g4dvali) || MySQL, PostgreSQL, SQLite, Microsoft SQL Server, Oracle, DB2, etc. are supported by [Entity Framework Core](https://docs.microsoft.com/en-us/ef/core/) |
| [Linq2DB Adapter](https://github.com/Tirael/Linq2DB-Adapter) | ORM | [@Tirael](https://github.com/Tirael) || [MySQL, PostgreSQL, SQLite, Microsoft SQL Server, Oracle, Access, Firebird, Sybase, etc.](https://github.com/linq2db/linq2db/blob/master/Tests/Base/TestProvName.cs) are supported by [linq2db](https://github.com/linq2db/linq2db) |
| [Azure Cosmos DB Adapter](https://github.com/sagarkhandelwal/Casbin-Using-Cosmos) | Cloud | [@sagarkhandelwal](https://github.com/sagarkhandelwal) || For [Microsoft Azure Cosmos DB](https://docs.microsoft.com/en-us/azure/cosmos-db/introduction) |

Expand Down Expand Up @@ -210,7 +209,7 @@ A complete list of Casbin adapters is provided as below. Any 3rd-party contribut
|------------------------------------------------------------------------------|------|------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------------------------|
| [File Adapter (built-in)](/docs/adapters#file-adapter-built-in) | File | Casbin || For [.CSV (Comma-Separated Values)](https://en.wikipedia.org/wiki/Comma-separated_values) files |
| [Filtered File Adapter (built-in)](/docs/policy-subset-loading) | File | Casbin || For [.CSV (Comma-Separated Values)](https://en.wikipedia.org/wiki/Comma-separated_values) files with policy subset loading support |
| [LuaSQL Adapter](https://github.com/casbin-lua/luasql-adapter) | ORM | Casbin || MySQL, PostgreSQL, SQLite3 are supported by [LuaSQL](https://keplerproject.github.io/luasql/) |
| [LuaSQL Adapter](https://github.com/casbin-lua/luasql-adapter) | ORM | Casbin || MySQL, PostgreSQL, SQLite3 are supported by [LuaSQL](http://lunarmodules.github.io/luasql/) |
| [4DaysORM Adapter](https://github.com/casbin-lua/4daysorm-adapter) | ORM | Casbin || MySQL, SQLite3 are supported by [4DaysORM](https://github.com/itdxer/4DaysORM) |
| [OpenResty Adapter](https://github.com/tom2nonames/lua-resty-casbin-adapter) | ORM | [@tom2nonames](https://github.com/tom2nonames) || MySQL, PostgreSQL are supported by it |

Expand Down
6 changes: 3 additions & 3 deletions docs/AdminPortal.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ There are also 3rd-party admin portal projects that use Casbin as authorization
| Project | Author | Frontend | Backend | Description |
|---------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------|----------------------|----------|------------------------------------------------------------------|
| [Casdoor](https://casdoor.org) | Casbin | React + Ant Design | Beego | Based on Beego + XORM + React |
| [go-admin-team/go-admin](https://github.com/go-admin-team/go-admin) | [@go-admin-team](https://github.com/go-admi-team) | Vue + Element UI | Gin | go-admin Based on Gin + Casbin + GORM |
| [go-admin-team/go-admin](https://github.com/go-admin-team/go-admin) | [@go-admin-team](https://github.com/go-admin-team) | Vue + Element UI | Gin | go-admin Based on Gin + Casbin + GORM |
| [gin-vue-admin](https://github.com/piexlmax/gin-vue-admin) | [@piexlmax](https://github.com/piexlmax) | Vue + Element UI | Gin | Based on Gin + GORM + Vue |
| [gin-admin](https://github.com/LyricTian/gin-admin) | [@LyricTian](https://github.com/LyricTian) | React + Ant Design | Gin | RBAC scaffolding based on Gin + GORM + Casbin + Ant Design React |
| [go-admin](https://github.com/hequan2017/go-admin) | [@hequan2017](https://github.com/hequan2017) | None | Gin | Go RESTful API gateway based on Gin + GORM + JWT + RBAC (Casbin) |
Expand All @@ -41,7 +41,7 @@ There are also 3rd-party admin portal projects that use Casbin as authorization

| Project | Author | Frontend | Backend | Description |
|----------------------------------------------------------------|------------------------------------------|----------|------------|-------------------------------------------------------------|
| [spring-boot-web](https://github.com/BazookaW/spring-boot-web) | [@BazookaW](https://github.com/BazookaW) | None | SpringBoot | Admin portal based on SpringBoot 2.0 + MyBatisPlus + Casbin |
| [spring-boot-web](https://github.com/wangchengming666/spring-boot-web) | [@BazookaW](https://github.com/wangchengming666) | None | SpringBoot | Admin portal based on SpringBoot 2.0 + MyBatisPlus + Casbin |

```mdx-code-block
</TabItem>
Expand All @@ -60,7 +60,7 @@ There are also 3rd-party admin portal projects that use Casbin as authorization

| Project | Author | Frontend | Backend | Description |
|---------------------------------------------------------------------------------------------------|--------------------------------------------------------|-----------|---------|-------------------------------------|
| [fastapi-mysql-generator](https://github.com/CoderCharm/fastapi-mysql-generator) | [@CoderCharm](https://github.com/CoderCharm) | None | FastAPI | FastAPI + MySQL + JWT + Casbin |
| [fastapi-mysql-generator](https://github.com/wxy2077/fastapi-mysql-generator) | [@CoderCharm](https://github.com/wxy2077) | None | FastAPI | FastAPI + MySQL + JWT + Casbin |
| [FastAPI-MySQL-Tortoise-Casbin](https://github.com/xingxingzaixian/FastAPI-MySQL-Tortoise-Casbin) | [@xingxingzaixian](https://github.com/xingxingzaixian) | None | FastAPI | FastAPI + MySQL + Tortoise + Casbin |
| [openstack-policy-editor](https://github.com/casbin/openstack-policy-editor) | Casbin | Bootstrap | Django | The Web UI for Casbin |

Expand Down
11 changes: 5 additions & 6 deletions docs/Adopters.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,18 @@ authors: [nodece]

| Name | Description | Model | Policy |
|-----------------------------------------------------------------|---------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------|
| [VMware Harbor](https://github.com/goharbor/harbor) | VMware's open source trusted cloud native registry project that stores, signs, and scans content. | [Code](https://github.com/goharbor/harbor/blob/master/src/pkg/permission/evaluator/rbac/casbin.go#L24-L44) | [Beego ORM](https://github.com/goharbor/harbor/blob/master/src/replication/dao/policy.go#L24-L26) |
| [VMware Harbor](https://github.com/goharbor/harbor) | VMware's open source trusted cloud native registry project that stores, signs, and scans content. | [Code](https://github.com/goharbor/harbor/blob/main/src/pkg/permission/evaluator/rbac/casbin.go) | [Beego ORM](https://github.com/goharbor/harbor/blob/main/src/common/rbac/project/rbac_role.go) |
| [Intel RMD](https://github.com/intel/rmd) | Intel's resource management daemon. | [.conf](https://github.com/intel/rmd/blob/master/etc/rmd/acl/url/model.conf) | [.csv](https://github.com/intel/rmd/blob/master/etc/rmd/acl/url/policy.csv) |
| [VMware Dispatch](https://github.com/vmware/dispatch) | A framework for deploying and managing serverless style applications. | [Code](https://github.com/vmware/dispatch/blob/master/pkg/identity-manager/handlers.go#L46-L55) | [Code](https://github.com/vmware/dispatch/blob/master/pkg/identity-manager/handlers_test.go#L35-L45) |
| [Skydive](https://github.com/skydive-project/skydive) | An open source real-time network topology and protocols analyzer. | [Code](https://github.com/skydive-project/skydive/blob/master/config/config.go#L136-L140) | [.csv](https://github.com/skydive-project/skydive/blob/master/rbac/policy.csv) |
| [Zenpress](https://github.com/insionng/zenpress) | A CMS system written in Golang. | [.conf](https://github.com/insionng/zenpress/blob/master/content/config/rbac_model.conf) | [Gorm](https://github.com/insionng/zenpress/blob/master/model/user.go#L53-L77) |
| [Argo CD](https://github.com/argoproj/argo-cd) | GitOps continuous delivery for Kubernetes. | [.conf](https://github.com/argoproj/argo-cd/blob/master/util/rbac/model.conf) | [.csv](https://github.com/argoproj/argo-cd/blob/master/util/rbac/builtin-policy.csv) |
| [Muxi Cloud](https://github.com/muxiyun/Mae) | PaaS of Muxi Cloud, an easier way to manage Kubernetes cluster. | [.conf](https://github.com/muxiyun/Mae/blob/master/conf/casbinmodel.conf) | [Code](https://github.com/muxiyun/Mae/blob/master/pkg/casbin/initPolicy.go#L21-L95) |
| [Argo CD](https://github.com/argoproj/argo-cd) | GitOps continuous delivery for Kubernetes. | [.conf](https://github.com/argoproj/argo-cd/blob/master/assets/model.conf) | [.csv](https://github.com/argoproj/argo-cd/blob/master/assets/builtin-policy.csv) |
| [Muxi Cloud](https://github.com/muxiyun/Mae-old) | PaaS of Muxi Cloud, an easier way to manage Kubernetes cluster. | [.conf](https://github.com/muxiyun/Mae-old/blob/master/conf/casbinmodel.conf) | [Code](https://github.com/muxiyun/Mae-old/blob/master/pkg/casbin/initPolicy.go#L21-L95) |
| [EngineerCMS](https://github.com/3xxx/EngineerCMS) | A CMS to manage knowledge for engineers. | [.conf](https://github.com/3xxx/EngineerCMS/blob/master/conf/rbac_model.conf) | [SQLite](https://github.com/3xxx/EngineerCMS/blob/master/database/engineer.db) |
| [Cyber Auth API](https://github.com/CyberlifeCN/cyber-auth-api) | A Golang authentication API project. | [.conf](https://github.com/CyberlifeCN/cyber-auth-api/blob/master/conf/authz_model.conf) | [.csv](https://github.com/CyberlifeCN/cyber-auth-api/blob/master/conf/authz_policy.csv) |
| [IRIS Community](https://github.com/irisnet/iris-community) | Website for IRIS Community Activities. | [.conf](https://github.com/irisnet/iris-community/blob/master/authz/authz_model.conf) | [.csv](https://github.com/irisnet/iris-community/blob/master/authz/authz_policy.csv) |
| [Metadata DB](https://github.com/Bnei-Baruch/mdb) | BB archive metadata database. | [.conf](https://github.com/Bnei-Baruch/mdb/blob/master/data/permissions_model.conf) | [.csv](https://github.com/Bnei-Baruch/mdb/blob/master/data/permissions_policy.csv) |
| [Metadata DB](https://github.com/Bnei-Baruch/mdb) | BB archive metadata database. | [.conf](https://github.com/Bnei-Baruch/mdb/blob/master/permissions/permissions_model.conf) | [.csv](https://github.com/Bnei-Baruch/mdb/blob/master/permissions/permissions_policy.csv) |
| [Qilin API](https://github.com/ProtocolONE/qilin.api) | ProtocolONE's licenses managemen tool for game content. | [Code](https://github.com/ProtocolONE/rbac/blob/master/model.go) | [.csv](https://github.com/ProtocolONE/rbac/tree/master/conf) |
| [Devtron Labs](https://github.com/devtron-labs/devtron) | Software Delivery Workflow For Kubernetes. | [.conf](https://github.com/devtron-labs/devtron/blob/main/auth_model.conf) | [Xorm](https://github.com/devtron-labs/devtron/blob/main/internal/casbin/Adapter.go) |
| [Devtron Labs](https://github.com/devtron-labs/devtron) | Software Delivery Workflow For Kubernetes. | [.conf](https://github.com/devtron-labs/devtron/blob/main/auth_model.conf) | [Xorm](https://github.com/devtron-labs/devtron/blob/main/pkg/user/casbin/Adapter.go) |

```mdx-code-block
</TabItem>
Expand Down
Loading

0 comments on commit 3b4193f

Please sign in to comment.