21 lines
1.1 KiB
Go
21 lines
1.1 KiB
Go
package builtin
|
||
|
||
import "github.com/vladimir/goherence/internal/module"
|
||
|
||
// RegisterAll добавляет все builtin-модули первой версии в реестр.
|
||
// Единственное место, которое нужно трогать при добавлении нового модуля —
|
||
// сам модуль остаётся в отдельном файле по одному на модуль (см. shell.go,
|
||
// copy.go, apt.go и т.д.), а не сваливается всё в один monolith-modules.go.
|
||
func RegisterAll(reg *module.Registry, hostVars map[string]interface{}) {
|
||
reg.RegisterBuiltin(&ShellModule{})
|
||
reg.RegisterBuiltin(&CommandModule{})
|
||
reg.RegisterBuiltin(&CopyModule{})
|
||
reg.RegisterBuiltin(&TemplateModule{Vars: hostVars})
|
||
reg.RegisterBuiltin(&AptModule{})
|
||
reg.RegisterBuiltin(&PackageRPMModule{})
|
||
reg.RegisterBuiltin(&FileModule{})
|
||
reg.RegisterBuiltin(&SystemdModule{})
|
||
|
||
osFamily, _ := hostVars["os_family"].(string) // пусто, если факты не собирались — см. package.go
|
||
reg.RegisterBuiltin(&PackageModule{OSFamily: osFamily})
|
||
}
|