(install *model.AppInstall, allowedOrigins []string)
| 527 | } |
| 528 | |
| 529 | func syncOpenclawAllowedOriginEnv(install *model.AppInstall, allowedOrigins []string) error { |
| 530 | if install == nil { |
| 531 | return nil |
| 532 | } |
| 533 | envMap := make(map[string]interface{}) |
| 534 | if strings.TrimSpace(install.Env) != "" { |
| 535 | if err := json.Unmarshal([]byte(install.Env), &envMap); err != nil { |
| 536 | return err |
| 537 | } |
| 538 | } |
| 539 | if allowedOrigin := firstAllowedOrigin(allowedOrigins); allowedOrigin != "" { |
| 540 | envMap["ALLOWED_ORIGIN"] = allowedOrigin |
| 541 | } else { |
| 542 | delete(envMap, "ALLOWED_ORIGIN") |
| 543 | } |
| 544 | payload, err := json.Marshal(envMap) |
| 545 | if err != nil { |
| 546 | return err |
| 547 | } |
| 548 | install.Env = string(payload) |
| 549 | return nil |
| 550 | } |
| 551 | |
| 552 | func firstAllowedOrigin(allowedOrigins []string) string { |
| 553 | for _, origin := range allowedOrigins { |
no test coverage detected