@@ -19,28 +19,30 @@ var (
19
19
20
20
// LoadFromDir reads yaml-formatted task templates
21
21
// from a folder and upserts them in database
22
- func LoadFromDir (dbp zesty.DBProvider , dir string ) error {
23
- files , err := os .ReadDir (dir )
24
- if err != nil {
25
- return fmt .Errorf ("failed to open template directory %s: %s" , dir , err )
26
- }
27
- for _ , file := range files {
28
- if file .IsDir () || ! strings .HasSuffix (file .Name (), ".yaml" ) {
29
- continue
30
- }
31
- tmpl , err := os .ReadFile (path .Join (dir , file .Name ()))
22
+ func LoadFromDir (dbp zesty.DBProvider , directories ... string ) error {
23
+ for _ , dir := range directories {
24
+ files , err := os .ReadDir (dir )
32
25
if err != nil {
33
- return fmt .Errorf ("failed to read template '%s': %s" , file .Name (), err )
34
- }
35
- var tt TaskTemplate
36
- if err := yaml .Unmarshal (tmpl , & tt ); err != nil {
37
- return fmt .Errorf ("failed to unmarshal template '%s': '%s'" , file .Name (), err )
26
+ return fmt .Errorf ("failed to open template directory %s: %s" , dir , err )
38
27
}
28
+ for _ , file := range files {
29
+ if file .IsDir () || ! strings .HasSuffix (file .Name (), ".yaml" ) {
30
+ continue
31
+ }
32
+ tmpl , err := os .ReadFile (path .Join (dir , file .Name ()))
33
+ if err != nil {
34
+ return fmt .Errorf ("failed to read template '%s': %s" , file .Name (), err )
35
+ }
36
+ var tt TaskTemplate
37
+ if err := yaml .Unmarshal (tmpl , & tt ); err != nil {
38
+ return fmt .Errorf ("failed to unmarshal template '%s': '%s'" , file .Name (), err )
39
+ }
39
40
40
- tt .Normalize ()
41
+ tt .Normalize ()
41
42
42
- discoveredTemplates = append (discoveredTemplates , tt )
43
- templateimport .AddTemplate (tt .Name )
43
+ discoveredTemplates = append (discoveredTemplates , tt )
44
+ templateimport .AddTemplate (tt .Name )
45
+ }
44
46
}
45
47
46
48
for _ , tt := range discoveredTemplates {
@@ -89,12 +91,12 @@ func LoadFromDir(dbp zesty.DBProvider, dir string) error {
89
91
}
90
92
}
91
93
if ! found {
92
- if err = tt .Delete (dbp ); err == nil {
94
+ if err : = tt .Delete (dbp ); err == nil {
93
95
logrus .Infof ("Deleted task template %q" , tt .Name )
94
96
continue
95
97
}
96
98
// unable to delete TaskTemplate, probably some old Tasks still in database, archiving it
97
- tt , err = LoadFromID (dbp , tt .ID )
99
+ tt , err : = LoadFromID (dbp , tt .ID )
98
100
if err != nil {
99
101
return fmt .Errorf ("unable to load template %q for archiving: %s" , tt .Name , err )
100
102
}
0 commit comments