diff --git a/.goreleaser.yml b/.goreleaser.yml index c6e41fc..5b0a223 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -25,4 +25,5 @@ builds: # Format is `{goos}_{goarch}` with optionally a suffix with `_{goarm}` or `_{gomips}`. # This overrides `goos`, `goarch`, `goarm`, `gomips` and `ignores`. targets: - - linux_amd64 \ No newline at end of file + - linux_amd64 + - linux_arm64 diff --git a/procmon_linux.go b/procmon_linux.go index 9f87550..1cd711c 100644 --- a/procmon_linux.go +++ b/procmon_linux.go @@ -5,6 +5,7 @@ package main import ( "fmt" + "runtime" "io/ioutil" "os" @@ -55,7 +56,13 @@ func (p *ProcessMonitor) MonitorProcesses(errc chan error) { if len(workingDirectory) == 0 { workingDirectory = "/home/runner" } - r, _ := flags.Parse(fmt.Sprintf("-a exit,always -F dir=%s -F perm=wa -S open -S openat -S rename -S renameat -k %s", workingDirectory, fileMonitorTag)) + + auditRule := fmt.Sprintf("-a exit,always -F dir=%s -F perm=wa -S open -S openat -S rename -S renameat -k %s", workingDirectory, fileMonitorTag) + if runtime.GOARCH == "arm64" { + auditRule = fmt.Sprintf("-a exit,always -F dir=%s -F perm=wa -S openat -S renameat -k %s", workingDirectory, fileMonitorTag) + } + + r, _ := flags.Parse(auditRule) actualBytes, _ := rule.Build(r) diff --git a/releasers/int.yml b/releasers/int.yml index 125acde..97ec794 100644 --- a/releasers/int.yml +++ b/releasers/int.yml @@ -25,4 +25,5 @@ builds: # Format is `{goos}_{goarch}` with optionally a suffix with `_{goarm}` or `_{gomips}`. # This overrides `goos`, `goarch`, `goarm`, `gomips` and `ignores`. targets: - - linux_amd64 \ No newline at end of file + - linux_amd64 + - linux_arm64 \ No newline at end of file