Files
fission-console/console/internal/runtime/entrypoint.go
T

31 lines
1.3 KiB
Go

package runtime
// DefaultEntrypoint возвращает точку входа по умолчанию для языка lang.
//
// Формат entrypoint зависит от среды выполнения Fission:
// - python: "module.function" → Fission импортирует модуль и вызывает функцию
// - nodejs: "main" → имя экспортированной default-функции в main.js
// - php: "main.php::handler" → имя файла + "::" + имя функции
// - ruby: "handler" → имя метода в загруженном файле
// - perl: "handler" → имя функции в загруженном файле
// - go: "Handler" → экспортированная Go-функция (с большой буквы)
func DefaultEntrypoint(lang string) string {
switch lang {
case "nodejs":
return "main"
case "php":
// Fission php-env: filename::functionName
return "main.php::handler"
case "ruby":
return "handler"
case "perl":
return "handler"
case "go":
// Go: экспортированная функция (заглавная) — go/plugin требует экспорт
return "Handler"
default:
// python и неизвестные языки: "main.main" = модуль main, функция main
return "main.main"
}
}