All checks were successful
Gitea Actions Demo / Run-Python-Script (push) Successful in 4s
47 lines
781 B
Go
47 lines
781 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
|
|
"github.com/joho/godotenv"
|
|
"gopkg.in/yaml.v3"
|
|
)
|
|
|
|
func LoadEnv() {
|
|
if err := godotenv.Load(); err != nil {
|
|
fmt.Println("Warnung: .env Datei konnte nicht geladen werden.")
|
|
}
|
|
}
|
|
|
|
func LoadYAML() ([]Rewrite, error) {
|
|
file := os.Getenv("YAML_FILE")
|
|
f, err := os.Open(file)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer f.Close()
|
|
|
|
var data struct {
|
|
Rewrites []Rewrite `yaml:"rewrites"`
|
|
}
|
|
err = yaml.NewDecoder(f).Decode(&data)
|
|
return data.Rewrites, err
|
|
}
|
|
|
|
func SaveYAML(rewrites []Rewrite) error {
|
|
file := os.Getenv("YAML_FILE")
|
|
f, err := os.Create(file)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
defer f.Close()
|
|
|
|
data := map[string][]Rewrite{
|
|
"rewrites": rewrites,
|
|
}
|
|
enc := yaml.NewEncoder(f)
|
|
enc.SetIndent(2)
|
|
return enc.Encode(data)
|
|
}
|