From 5cd2fe935cfb1c338d5c8cfe5ce80a30fe9b35a7 Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Tue, 17 Nov 2020 17:44:14 -0500 Subject: [PATCH] Generate an audit entry when quota is bumped --- pkg/controller/realmadmin/settings.go | 8 ++++++++ pkg/database/audit_entry.go | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/pkg/controller/realmadmin/settings.go b/pkg/controller/realmadmin/settings.go index 25fcf85f0..67eea6e6e 100644 --- a/pkg/controller/realmadmin/settings.go +++ b/pkg/controller/realmadmin/settings.go @@ -16,6 +16,7 @@ package realmadmin import ( "context" + "fmt" "net/http" "time" @@ -345,6 +346,13 @@ func (c *Controller) HandleSettings() http.Handler { return } + msg := fmt.Sprintf("added %d quota capacity", burst) + audit := database.BuildAuditEntry(currentUser, msg, realm, realm.ID) + if err := c.db.SaveAuditEntry(audit); err != nil { + controller.InternalError(w, r, c.h, err) + return + } + flash.Alert("Successfully added %d to realm quota!", burst) } diff --git a/pkg/database/audit_entry.go b/pkg/database/audit_entry.go index 22340d4fa..a2985ae3e 100644 --- a/pkg/database/audit_entry.go +++ b/pkg/database/audit_entry.go @@ -63,6 +63,11 @@ type AuditEntry struct { CreatedAt time.Time } +// SaveAuditEntry saves the audit entry. +func (db *Database) SaveAuditEntry(a *AuditEntry) error { + return db.db.Save(a).Error +} + // PurgeAuditEntries will delete audit entries which were created longer than // maxAge ago. func (db *Database) PurgeAuditEntries(maxAge time.Duration) (int64, error) {