Compare commits
2 Commits
5f8e4f00ea
...
90d5a23fcc
Author | SHA1 | Date | |
---|---|---|---|
90d5a23fcc | |||
7104441727 |
@ -6,6 +6,8 @@ import (
|
|||||||
"gopkg.in/yaml.v3"
|
"gopkg.in/yaml.v3"
|
||||||
"os"
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
|
"path"
|
||||||
|
"path/filepath"
|
||||||
"slices"
|
"slices"
|
||||||
"strings"
|
"strings"
|
||||||
"syscall"
|
"syscall"
|
||||||
@ -96,26 +98,30 @@ func (hook *BPMHook) Execute(packageChanges map[string]string, verbose bool, roo
|
|||||||
|
|
||||||
// Get modified files slice
|
// Get modified files slice
|
||||||
modifiedFiles := make([]*PackageFileEntry, 0)
|
modifiedFiles := make([]*PackageFileEntry, 0)
|
||||||
for pkg, _ := range packageChanges {
|
for pkg := range packageChanges {
|
||||||
modifiedFiles = append(modifiedFiles, GetPackageFiles(pkg, rootDir)...)
|
modifiedFiles = append(modifiedFiles, GetPackageFiles(pkg, rootDir)...)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if any targets are met
|
// Check if any targets are met
|
||||||
targetMet := false
|
targetMet := false
|
||||||
for _, t1 := range hook.Targets {
|
for _, target := range hook.Targets {
|
||||||
if targetMet {
|
if targetMet {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
if hook.TargetType == "package" {
|
if hook.TargetType == "package" {
|
||||||
for t2, operation := range packageChanges {
|
for change, operation := range packageChanges {
|
||||||
if t1 == t2 && slices.Contains(hook.TriggerOperations, operation) {
|
if target == change && slices.Contains(hook.TriggerOperations, operation) {
|
||||||
targetMet = true
|
targetMet = true
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for _, t2 := range modifiedFiles {
|
glob, err := filepath.Glob(path.Join(rootDir, target))
|
||||||
if strings.HasPrefix(t2.Path, t1) {
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
for _, change := range modifiedFiles {
|
||||||
|
if slices.Contains(glob, path.Join(rootDir, change.Path)) {
|
||||||
targetMet = true
|
targetMet = true
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user