Skip to content

Commit

Permalink
fix lint
Browse files Browse the repository at this point in the history
Signed-off-by: Thomas Labarussias <issif+github@gadz.org>
  • Loading branch information
Issif committed Jun 14, 2023
1 parent 2c119ab commit e8097c2
Show file tree
Hide file tree
Showing 8 changed files with 32 additions and 37 deletions.
14 changes: 9 additions & 5 deletions actionners/kubernetes/exec/exec.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,14 @@ import (
"bytes"
"context"

v1 "k8s.io/api/core/v1"
"k8s.io/client-go/tools/remotecommand"
"k8s.io/kubectl/pkg/scheme"

"github.com/Issif/falco-talon/internal/events"
kubernetes "github.com/Issif/falco-talon/internal/kubernetes/client"
"github.com/Issif/falco-talon/internal/rules"
"github.com/Issif/falco-talon/utils"
v1 "k8s.io/api/core/v1"
"k8s.io/client-go/tools/remotecommand"
"k8s.io/kubectl/pkg/scheme"
)

var Exec = func(rule *rules.Rule, event *events.Event) (utils.LogLine, error) {
Expand Down Expand Up @@ -82,10 +83,13 @@ var Exec = func(rule *rules.Rule, event *events.Event) (utils.LogLine, error) {

var CheckParameters = func(rule *rules.Rule) error {
parameters := rule.GetParameters()
if err := utils.CheckParameters(parameters, "shell", utils.StringStr); err != nil {
var err error
err = utils.CheckParameters(parameters, "shell", utils.StringStr)
if err != nil {
return err
}
if err := utils.CheckParameters(parameters, "command", utils.StringStr); err != nil {
err = utils.CheckParameters(parameters, "command", utils.StringStr)
if err != nil {
return err
}
return nil
Expand Down
1 change: 1 addition & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0=
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=
Expand Down
5 changes: 0 additions & 5 deletions internal/rules/rules.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,6 @@ import (
// allow to set rule by file or CRD
// watch CRD and update rules

const (
trueStr string = "true"
falseStr string = "false"
)

type Rule struct {
Notifiers []string `yaml:"notifiers"`
Action Action `yaml:"action"`
Expand Down
14 changes: 6 additions & 8 deletions notifiers/k8sevents/k8sevents.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@ import (

textTemplate "text/template"

"github.com/Issif/falco-talon/internal/events"
kubernetes "github.com/Issif/falco-talon/internal/kubernetes/client"
"github.com/Issif/falco-talon/internal/rules"
"github.com/Issif/falco-talon/utils"
)

Expand All @@ -39,7 +37,7 @@ Output:
{{- end }}
`

var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) error {
var Notify = func(log utils.LogLine) error {
var err error
var message string
ttmpl := textTemplate.New("message")
Expand Down Expand Up @@ -69,10 +67,10 @@ var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) erro
},
InvolvedObject: corev1.ObjectReference{
Kind: "Pod",
Namespace: event.GetNamespaceName(),
Name: event.GetPodName(),
Namespace: log.Namespace,
Name: log.Pod,
},
Reason: "falco-talon:" + rule.GetAction() + ":" + log.Status,
Reason: "falco-talon:" + log.Action + ":" + log.Status,
Message: strings.ReplaceAll(message, `'`, `"`),
Source: corev1.EventSource{
Component: "falco-talon",
Expand All @@ -81,10 +79,10 @@ var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) erro
EventTime: metav1.NowMicro(),
ReportingController: "falcosecurity.org/falco-talon",
ReportingInstance: "falco-talon",
Action: "falco-talon:" + rule.GetAction(),
Action: "falco-talon:" + log.Action,
}
k8sclient := kubernetes.GetClient()
_, err = k8sclient.CoreV1().Events(event.GetNamespaceName()).Create(context.TODO(), k8sevent, metav1.CreateOptions{})
_, err = k8sclient.CoreV1().Events(log.Namespace).Create(context.TODO(), k8sevent, metav1.CreateOptions{})
if err != nil {
return err
}
Expand Down
4 changes: 2 additions & 2 deletions notifiers/notifiers.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import (

type Notifier struct {
Init func(fields map[string]interface{}) error
Notification func(rule *rules.Rule, event *events.Event, log utils.LogLine) error
Notification func(log utils.LogLine) error
Name string
initialized bool
}
Expand Down Expand Up @@ -105,7 +105,7 @@ func Notify(rule *rules.Rule, event *events.Event, log utils.LogLine) {

for i := range enabledNotifiers {
if n := GetNotifiers().GetNotifier(i); n != nil {
if err := n.Notification(rule, event, log); err != nil {
if err := n.Notification(log); err != nil {
utils.PrintLog("error", config.LogFormat, utils.LogLine{Notifier: i, Status: "failure", Error: err.Error(), Rule: rule.GetName(), Action: rule.GetAction(), TraceID: event.TraceID, Message: "notification"})
} else {
utils.PrintLog("info", config.LogFormat, utils.LogLine{Notifier: i, Status: "success", Rule: rule.GetName(), Action: rule.GetAction(), TraceID: event.TraceID, Message: "notification"})
Expand Down
10 changes: 4 additions & 6 deletions notifiers/slack/slack.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ import (
"errors"
"fmt"

"github.com/Issif/falco-talon/internal/events"
"github.com/Issif/falco-talon/internal/rules"
"github.com/Issif/falco-talon/notifiers/http"
"github.com/Issif/falco-talon/utils"
)
Expand Down Expand Up @@ -55,7 +53,7 @@ var Init = func(fields map[string]interface{}) error {
return nil
}

var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) error {
var Notify = func(log utils.LogLine) error {
if slackconfig.WebhookURL == "" {
return errors.New("wrong config")
}
Expand All @@ -64,14 +62,14 @@ var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) erro
if err != nil {
return err
}
err = client.Post(NewPayload(rule, event, log))
err = client.Post(NewPayload(log))
if err != nil {
return err
}
return nil
}

func NewPayload(rule *rules.Rule, event *events.Event, log utils.LogLine) Payload {
func NewPayload(log utils.LogLine) Payload {
var attachments []Attachment
var attachment Attachment

Expand Down Expand Up @@ -127,7 +125,7 @@ func NewPayload(rule *rules.Rule, event *events.Event, log utils.LogLine) Payloa
fields = append(fields, field)
}
field.Title = "Event"
field.Value = "`" + event.Output + "`"
field.Value = "`" + log.Event + "`"
field.Short = false
fields = append(fields, field)
field.Title = "Message"
Expand Down
17 changes: 9 additions & 8 deletions notifiers/smtp/smtp.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ import (
sasl "github.com/emersion/go-sasl"
smtp "github.com/emersion/go-smtp"

"github.com/Issif/falco-talon/internal/events"
"github.com/Issif/falco-talon/internal/rules"
"github.com/Issif/falco-talon/utils"
)

Expand Down Expand Up @@ -49,12 +47,12 @@ var Init = func(fields map[string]interface{}) error {
return nil
}

var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) error {
var Notify = func(log utils.LogLine) error {
if smtpconfig.HostPort == "" {
return errors.New("wrong config")
}

payload, err := NewPayload(rule, event, log)
payload, err := NewPayload(log)
if err != nil {
return err
}
Expand All @@ -65,7 +63,7 @@ var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) erro
return nil
}

func NewPayload(rule *rules.Rule, event *events.Event, log utils.LogLine) (Payload, error) {
func NewPayload(log utils.LogLine) (Payload, error) {
var statusPrefix string
if log.Status == "failure" {
statusPrefix = "un"
Expand Down Expand Up @@ -133,14 +131,17 @@ func Send(payload Payload) error {
ServerName: strings.Split(smtpconfig.HostPort, ":")[0],
MinVersion: tls.VersionTLS12,
}
if err := smtpClient.StartTLS(tlsCfg); err != nil {
if err = smtpClient.StartTLS(tlsCfg); err != nil {
return err
}
}
if err := smtpClient.Auth(auth); err != nil {

err = smtpClient.Auth(auth)
if err != nil {
return err
}
if err := smtpClient.SendMail(smtpconfig.From, to, strings.NewReader(body)); err != nil {
err = smtpClient.SendMail(smtpconfig.From, to, strings.NewReader(body))
if err != nil {
return err
}
return nil
Expand Down
4 changes: 1 addition & 3 deletions notifiers/webhook/webhook.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ package webhook
import (
"errors"

"github.com/Issif/falco-talon/internal/events"
"github.com/Issif/falco-talon/internal/rules"
"github.com/Issif/falco-talon/notifiers/http"
"github.com/Issif/falco-talon/utils"
)
Expand All @@ -21,7 +19,7 @@ var Init = func(fields map[string]interface{}) error {
return nil
}

var Notify = func(rule *rules.Rule, event *events.Event, log utils.LogLine) error {
var Notify = func(log utils.LogLine) error {
if webhookConfig.URL == "" {
return errors.New("wrong config")
}
Expand Down

0 comments on commit e8097c2

Please sign in to comment.