gitea-webhook-listener/kit/config/config.go

32 lines
562 B
Go
Executable File

package config
import (
"os"
"gopkg.in/yaml.v2"
)
type Config struct {
Secret string `yaml:"secret"`
Port int `yaml:"port"`
Scripts map[string]ConfigScript `yaml:"scripts"`
}
type ConfigScript struct {
BinaryPath string `yaml:"binary"`
ScriptPath string `yaml:"script"`
}
func LoadConfig(path string) (*Config, error) {
data, err := os.ReadFile(path)
if err != nil {
return nil, err
}
var config Config
if err := yaml.Unmarshal(data, &config); err != nil {
return nil, err
}
return &config, nil
}