This is an automated email from the ASF dual-hosted git repository.
hsluoyz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/casbin-gateway.git
The following commit(s) were added to refs/heads/master by this push:
new e0c1c0c fix: support opendata repos
e0c1c0c is described below
commit e0c1c0c628830b40311f853a10dbf82a201657c0
Author: Yang Luo <[email protected]>
AuthorDate: Mon May 4 23:07:22 2026 +0800
fix: support opendata repos
---
run/run.go | 7 +++++--
run/util.go | 19 +++++++++++++++++++
2 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/run/run.go b/run/run.go
index 4c7806e..9fd9b7c 100644
--- a/run/run.go
+++ b/run/run.go
@@ -31,7 +31,10 @@ func isFrontendBaseDirEnabledRepo(siteName string) bool {
if strings.HasPrefix(siteName, "casdoor_") && siteName != "casdoor_my" {
return true
}
- return strings.HasPrefix(siteName, "casibase_") &&
!strings.HasSuffix(siteName, "keli") && !strings.HasSuffix(siteName, "med2")
+ if strings.HasPrefix(siteName, "casibase_") &&
!strings.HasSuffix(siteName, "keli") && !strings.HasSuffix(siteName, "med2") {
+ return true
+ }
+ return strings.HasPrefix(siteName, "opendata_") && siteName !=
"opendata_my"
}
func wrapRepoError(function string, path string, err error) (int, error) {
@@ -166,7 +169,7 @@ func CreateRepo(siteName string, needStart bool, diff
string, providerName strin
if affected {
if !needStart {
- if !strings.HasPrefix(siteName, "casdoor") &&
!strings.HasPrefix(siteName, "casibase") {
+ if !strings.HasPrefix(siteName, "casdoor") &&
!strings.HasPrefix(siteName, "casibase") && !strings.HasPrefix(siteName,
"opendata") {
err = stopProcess(siteName)
if err != nil {
return
wrapRepoError("stopProcess", path, err)
diff --git a/run/util.go b/run/util.go
index dbe0c0f..40e8689 100644
--- a/run/util.go
+++ b/run/util.go
@@ -56,6 +56,8 @@ func getRepoUrl(name string) string {
return "https://github.com/casdoor/casdoor"
} else if name == "casibase" {
return "https://github.com/casibase/casibase"
+ } else if name == "opendata" {
+ return "https://github.com/hsluoyz/opendata"
} else {
return fmt.Sprintf("https://github.com/casbin/%s", name)
}
@@ -102,6 +104,23 @@ func updateAppConfFile(name string, i int, orgName string)
{
content = strings.ReplaceAll(content, "casdoorApplication =
\"app-casibase\"", fmt.Sprintf("casdoorApplication = \"%s\"",
fmt.Sprintf("app-%s", shortName)))
content = strings.ReplaceAll(content, "isLocalIpDb = false",
"isLocalIpDb = true")
content = strings.ReplaceAll(content, "providerDbName = \"\"",
"providerDbName = \"casibase_casbin\"")
+ } else if strings.HasPrefix(name, "opendata_customer_") {
+ shortName := strings.ReplaceAll(name, "opendata_customer_",
"od")
+ if orgName != "" {
+ shortName = orgName
+ }
+
+ content = strings.ReplaceAll(content, "httpport = 14000",
fmt.Sprintf("httpport = %d", 50000+i))
+ content = strings.ReplaceAll(content, "root",
beego.AppConfig.String("dbUser"))
+ content = strings.ReplaceAll(content, "123456",
beego.AppConfig.String("dbPass"))
+ content = strings.ReplaceAll(content, "localhost:3306",
fmt.Sprintf("%s:3306", beego.AppConfig.String("dbHost")))
+ content = strings.ReplaceAll(content, "dbName = opendata",
fmt.Sprintf("dbName = %s", name))
+ content = strings.ReplaceAll(content, "redisEndpoint =",
fmt.Sprintf("redisEndpoint = \"%s\"", beego.AppConfig.String("redisEndpoint")))
+ content = strings.ReplaceAll(content, "casdoorEndpoint =
https://door.casdoor.com", fmt.Sprintf("casdoorEndpoint = %s",
strings.ReplaceAll(beego.AppConfig.String("casdoorEndpoint"), "my.", "od.")))
+ content = strings.ReplaceAll(content, "clientId =
af6b5aa958822fb9dc33", fmt.Sprintf("clientId = %s",
beego.AppConfig.String("clientIdPrefix")+shortName))
+ content = strings.ReplaceAll(content, "clientSecret =
8bc3010c1c951c8d876b1f311a901ff8deeb93bc", fmt.Sprintf("clientSecret = %s",
beego.AppConfig.String("clientSecretPrefix")+shortName))
+ content = strings.ReplaceAll(content, "casdoorOrganization =
\"casbin\"", fmt.Sprintf("casdoorOrganization = \"%s\"", shortName))
+ content = strings.ReplaceAll(content, "casdoorApplication =
\"app-opendata\"", fmt.Sprintf("casdoorApplication = \"%s\"",
fmt.Sprintf("app-%s", shortName)))
} else {
content = strings.ReplaceAll(content, "httpport = 8000",
fmt.Sprintf("httpport = %d", 30000+i))
content = strings.ReplaceAll(content, "123456",
beego.AppConfig.String("dbPass"))
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]