From 03d7250cf6e367fd2507356f156ab38ef511d974 Mon Sep 17 00:00:00 2001 From: jamesread Date: Sat, 16 Oct 2021 07:38:47 +0100 Subject: [PATCH] go fmt --- internal/acl/acl.go | 44 +++++++++++++++++------------------ internal/config/config.go | 22 +++++++++--------- internal/executor/executor.go | 34 +++++++++++++-------------- internal/grpcapi/grpcApi.go | 27 +++++++++++---------- 4 files changed, 62 insertions(+), 65 deletions(-) diff --git a/internal/acl/acl.go b/internal/acl/acl.go index 4b03dd8..f01e909 100644 --- a/internal/acl/acl.go +++ b/internal/acl/acl.go @@ -1,29 +1,29 @@ package acl import ( + "context" config "github.com/jamesread/OliveTin/internal/config" log "github.com/sirupsen/logrus" - "context" ) type User struct { - Username string; + Username string } func IsAllowedExec(cfg *config.Config, user *User, action *config.ActionButton) bool { canExec := cfg.DefaultPermissions.Exec log.WithFields(log.Fields{ - "User": user.Username, - "Action": action.Title, - "CanExec": canExec, + "User": user.Username, + "Action": action.Title, + "CanExec": canExec, }).Debug("isAllowedExec Permission Default") for _, permissionEntry := range action.Permissions { if isUserInGroup(user, permissionEntry.Usergroup) { log.WithFields(log.Fields{ - "User": user.Username, - "Action": action.Title, + "User": user.Username, + "Action": action.Title, "CanExec": permissionEntry.Exec, }).Debug("isAllowedExec Permission Entry") @@ -32,30 +32,30 @@ func IsAllowedExec(cfg *config.Config, user *User, action *config.ActionButton) } log.WithFields(log.Fields{ - "User": user.Username, - "Action": action.Title, + "User": user.Username, + "Action": action.Title, "CanExec": canExec, }).Debug("isAllowedExec Final Result") - return canExec; + return canExec } func IsAllowedView(cfg *config.Config, user *User, action *config.ActionButton) bool { canView := cfg.DefaultPermissions.View log.WithFields(log.Fields{ - "User": user.Username, - "Action": action.Title, - "CanView": canView, + "User": user.Username, + "Action": action.Title, + "CanView": canView, }).Debug("isAllowedView Permission Default") for idx, permissionEntry := range action.Permissions { if isUserInGroup(user, permissionEntry.Usergroup) { log.WithFields(log.Fields{ - "User": user.Username, - "Action": action.Title, + "User": user.Username, + "Action": action.Title, "CanView": permissionEntry.View, - "Index": idx, + "Index": idx, }).Debug("isAllowedView Permission Entry") canView = permissionEntry.View @@ -63,22 +63,20 @@ func IsAllowedView(cfg *config.Config, user *User, action *config.ActionButton) } log.WithFields(log.Fields{ - "User": user.Username, - "Action": action.Title, + "User": user.Username, + "Action": action.Title, "CanView": canView, }).Debug("isAllowedView Final Result") - return canView; + return canView } - - func isUserInGroup(user *User, usergroup string) bool { - return true; + return true } func UserFromContext(ctx context.Context) *User { - return &User { + return &User{ Username: "Guest", } } diff --git a/internal/config/config.go b/internal/config/config.go index 95cd094..12e5afe 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -4,12 +4,12 @@ import () // ActionButton represents a button that is shown in the webui. type ActionButton struct { - ID string - Title string - Icon string - Shell string - CSS map[string]string `mapstructure:"omitempty"` - Timeout int + ID string + Title string + Icon string + Shell string + CSS map[string]string `mapstructure:"omitempty"` + Timeout int Permissions []PermissionsEntry } @@ -24,8 +24,8 @@ type Entity struct { type PermissionsEntry struct { Usergroup string - View bool - Exec bool + View bool + Exec bool } type DefaultPermissions struct { @@ -34,7 +34,7 @@ type DefaultPermissions struct { } type UserGroup struct { - Name string + Name string Members []string } @@ -51,8 +51,8 @@ type Config struct { ActionButtons []ActionButton `mapstructure:"actions"` Entities []Entity `mapstructure:"entities"` CheckForUpdates bool - Usergroups []UserGroup - DefaultPermissions DefaultPermissions + Usergroups []UserGroup + DefaultPermissions DefaultPermissions } // DefaultConfig gets a new Config structure with sensible default values. diff --git a/internal/executor/executor.go b/internal/executor/executor.go index bfb7911..e8b0b2c 100644 --- a/internal/executor/executor.go +++ b/internal/executor/executor.go @@ -2,9 +2,9 @@ package executor import ( pb "github.com/jamesread/OliveTin/gen/grpc" + acl "github.com/jamesread/OliveTin/internal/acl" config "github.com/jamesread/OliveTin/internal/config" log "github.com/sirupsen/logrus" - acl "github.com/jamesread/OliveTin/internal/acl" "context" "errors" @@ -13,12 +13,12 @@ import ( ) type InternalLogEntry struct { - Datetime string - Content string - Stdout string - Stderr string - TimedOut bool - ExitCode int32 + Datetime string + Content string + Stdout string + Stderr string + TimedOut bool + ExitCode int32 ActionTitle string } @@ -34,23 +34,23 @@ func (e *Executor) ExecAction(cfg *config.Config, user *acl.User, actualAction * res := execAction(cfg, actualAction) - e.Logs = append(e.Logs, *res); + e.Logs = append(e.Logs, *res) return &pb.StartActionResponse{ - LogEntry: &pb.LogEntry { + LogEntry: &pb.LogEntry{ ActionTitle: actualAction.Title, - TimedOut: res.TimedOut, - Stderr: res.Stderr, - Stdout: res.Stdout, - ExitCode: res.ExitCode, + TimedOut: res.TimedOut, + Stderr: res.Stderr, + Stdout: res.Stdout, + ExitCode: res.ExitCode, }, - }; + } } func execAction(cfg *config.Config, actualAction *config.ActionButton) *InternalLogEntry { - res := &InternalLogEntry { - Datetime: time.Now().Format("2006-01-02 15:04:05"), - TimedOut: false, + res := &InternalLogEntry{ + Datetime: time.Now().Format("2006-01-02 15:04:05"), + TimedOut: false, ActionTitle: actualAction.Title, } diff --git a/internal/grpcapi/grpcApi.go b/internal/grpcapi/grpcApi.go index d85a8f8..22b5096 100644 --- a/internal/grpcapi/grpcApi.go +++ b/internal/grpcapi/grpcApi.go @@ -9,14 +9,14 @@ import ( "google.golang.org/grpc" "net" + acl "github.com/jamesread/OliveTin/internal/acl" config "github.com/jamesread/OliveTin/internal/config" executor "github.com/jamesread/OliveTin/internal/executor" - acl "github.com/jamesread/OliveTin/internal/acl" ) var ( cfg *config.Config - ex = executor.Executor{} + ex = executor.Executor{} ) type oliveTinAPI struct { @@ -37,8 +37,7 @@ func (api *oliveTinAPI) StartAction(ctx ctx.Context, req *pb.StartActionRequest) user := acl.UserFromContext(ctx) if !acl.IsAllowedExec(cfg, user, actualAction) { - return &pb.StartActionResponse{ - }, nil + return &pb.StartActionResponse{}, nil } @@ -56,9 +55,9 @@ func (api *oliveTinAPI) GetButtons(ctx ctx.Context, req *pb.GetButtonsRequest) ( } btn := pb.ActionButton{ - Id: fmt.Sprintf("%x", md5.Sum([]byte(action.Title))), - Title: action.Title, - Icon: lookupHTMLIcon(action.Icon), + Id: fmt.Sprintf("%x", md5.Sum([]byte(action.Title))), + Title: action.Title, + Icon: lookupHTMLIcon(action.Icon), CanExec: acl.IsAllowedExec(cfg, user, &action), } @@ -75,18 +74,18 @@ func (api *oliveTinAPI) GetButtons(ctx ctx.Context, req *pb.GetButtonsRequest) ( } func (api *oliveTinAPI) GetLogs(ctx ctx.Context, req *pb.GetLogsRequest) (*pb.GetLogsResponse, error) { - ret := &pb.GetLogsResponse{}; - + ret := &pb.GetLogsResponse{} + // TODO Limit to 10 entries or something to prevent browser lag. for _, logEntry := range ex.Logs { ret.Logs = append(ret.Logs, &pb.LogEntry{ ActionTitle: logEntry.ActionTitle, - Datetime: logEntry.Datetime, - Stdout: logEntry.Stdout, - Stderr: logEntry.Stderr, - TimedOut: logEntry.TimedOut, - ExitCode: logEntry.ExitCode, + Datetime: logEntry.Datetime, + Stdout: logEntry.Stdout, + Stderr: logEntry.Stderr, + TimedOut: logEntry.TimedOut, + ExitCode: logEntry.ExitCode, }) }