feat: allow production provider bootstrap
This commit is contained in:
@@ -59,6 +59,10 @@ func parseBool(value string) bool {
|
||||
}
|
||||
}
|
||||
|
||||
func allowUnconfiguredProviders(getenv postgres.Getenv) bool {
|
||||
return parseBool(getenv("ZHINIAN_ALLOW_UNCONFIGURED_PROVIDERS"))
|
||||
}
|
||||
|
||||
func applicationJobID() string {
|
||||
return applicationID("job")
|
||||
}
|
||||
@@ -186,7 +190,27 @@ func providerVideoTargets(getenv postgres.Getenv) map[string]jobs.ProviderTarget
|
||||
}
|
||||
}
|
||||
|
||||
func providerUnavailableMessages(getenv postgres.Getenv) map[string]string {
|
||||
missing := map[string]string{}
|
||||
if strings.TrimSpace(getenv("VOLCENGINE_ACCESS_KEY_ID")) == "" || strings.TrimSpace(getenv("VOLCENGINE_SECRET_ACCESS_KEY")) == "" {
|
||||
missing["volcengine-visual"] = "即梦服务商未配置,请先配置 VOLCENGINE_ACCESS_KEY_ID 和 VOLCENGINE_SECRET_ACCESS_KEY。"
|
||||
}
|
||||
if strings.TrimSpace(getenv("EVOLINK_API_KEY")) == "" {
|
||||
missing["evolink"] = "EvoLink 服务商未配置,请先配置 EVOLINK_API_KEY。"
|
||||
}
|
||||
if bailianAPIKey(getenv) == "" {
|
||||
missing["bailian"] = "百炼服务商未配置,请先配置 BAILIAN_API_KEY 或 DASHSCOPE_API_KEY。"
|
||||
}
|
||||
if strings.TrimSpace(getenv("SEEDANCE_API_KEY")) == "" {
|
||||
missing["seedance"] = "Seedance 服务商未配置,请先配置 SEEDANCE_API_KEY。"
|
||||
}
|
||||
return missing
|
||||
}
|
||||
|
||||
func validateProductionProviderConfiguration(getenv postgres.Getenv) error {
|
||||
if allowUnconfiguredProviders(getenv) {
|
||||
return nil
|
||||
}
|
||||
missing := make([]string, 0, 4)
|
||||
if strings.TrimSpace(getenv("VOLCENGINE_ACCESS_KEY_ID")) == "" || strings.TrimSpace(getenv("VOLCENGINE_SECRET_ACCESS_KEY")) == "" {
|
||||
missing = append(missing, "即梦 VOLCENGINE_ACCESS_KEY_ID/VOLCENGINE_SECRET_ACCESS_KEY")
|
||||
|
||||
Reference in New Issue
Block a user