From 07727753b96d209406783e5e539725bcdafebdc7 Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Mon, 7 Mar 2022 11:08:26 +0100 Subject: [feature] Clean up/uncache remote media (#407) * Add whereNotEmptyAndNotNull * Add GetRemoteOlderThanDays * Add GetRemoteOlderThanDays * Add PruneRemote to Manager interface * Start implementing PruneRemote * add new attachment + status to tests * fix up and test GetRemoteOlderThan * fix bad import * PruneRemote: return number pruned * add Cached column to mediaattachment * update + test pruneRemote * update mediaTest * use Cached column * upstep bun to latest version * embed structs in mediaAttachment * migrate mediaAttachment to new format * don't default cached to true * select only remote media * update db dependencies * step bun back to last working version * update pruneRemote to use Cached field * fix storage path of test attachments * add recache logic to manager * fix trimmed aspect ratio * test prune and recache * return errwithcode * tidy up different paths for emoji vs attachment * fix incorrect thumbnail type being stored * expose TransportController to media processor * implement tee-ing recached content * add thoughts of dog to test fedi attachments * test get remote files * add comment on PruneRemote * add postData cleanup to recache * test thumbnail fetching * add incredible diagram * go mod tidy * buffer pipes for recache streaming * test for client stops reading after 1kb * add media-remote-cache-days to config * add cron package * wrap logrus so it's available to cron * start and stop cron jobs gracefully --- internal/media/media_test.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'internal/media/media_test.go') diff --git a/internal/media/media_test.go b/internal/media/media_test.go index f3e73ed79..ee0fd8eea 100644 --- a/internal/media/media_test.go +++ b/internal/media/media_test.go @@ -22,6 +22,7 @@ import ( "codeberg.org/gruf/go-store/kv" "github.com/stretchr/testify/suite" "github.com/superseriousbusiness/gotosocial/internal/db" + gtsmodel "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/media" "github.com/superseriousbusiness/gotosocial/testrig" ) @@ -29,9 +30,10 @@ import ( type MediaStandardTestSuite struct { suite.Suite - db db.DB - storage *kv.KVStore - manager media.Manager + db db.DB + storage *kv.KVStore + manager media.Manager + testAttachments map[string]*gtsmodel.MediaAttachment } func (suite *MediaStandardTestSuite) SetupSuite() { @@ -45,6 +47,7 @@ func (suite *MediaStandardTestSuite) SetupSuite() { func (suite *MediaStandardTestSuite) SetupTest() { testrig.StandardStorageSetup(suite.storage, "../../testrig/media") testrig.StandardDBSetup(suite.db, nil) + suite.testAttachments = testrig.NewTestAttachments() suite.manager = testrig.NewTestMediaManager(suite.db, suite.storage) } -- cgit v1.2.3