-
- Downloads
Add an API to get stale dashboards and cards (#44711)
* Make an internal API for retrieving stale content
This introduces the `metabase.stale` module, which has one public
function (so far): `metabase.stale/find-candidates`. This takes a set of
`collection-ids`, a cutoff date, and pagination/sort info.
Next, we introduce an HTTP API endpoint that will figure out the appropriate
set of `collection-ids` for a given user/request, call this function,
and return the results in the shape we want.
Also: for e2e tests, we need a way to mark a card or dashboard as stale. I
think the easiest way to do this is to just create a testing endpoint
that we can call to update the `last_used_at` or `last_viewed_at` of the
card/dashboard to set it to ~7 months ago.
---------
Co-authored-by:
bryan <bryan.maass@gmail.com>
Showing
- .clj-kondo/config.edn 1 addition, 0 deletions.clj-kondo/config.edn
- enterprise/backend/src/metabase_enterprise/stale.clj 143 additions, 0 deletionsenterprise/backend/src/metabase_enterprise/stale.clj
- enterprise/backend/test/metabase_enterprise/api/session_test.clj 4 additions, 2 deletions...ise/backend/test/metabase_enterprise/api/session_test.clj
- enterprise/backend/test/metabase_enterprise/stale/api_test.clj 216 additions, 0 deletions...prise/backend/test/metabase_enterprise/stale/api_test.clj
- enterprise/backend/test/metabase_enterprise/stale_test.clj 388 additions, 0 deletionsenterprise/backend/test/metabase_enterprise/stale_test.clj
- snowplow/iglu-client-embedded/schemas/com.metabase/cleanup/jsonschema/1-0-0 44 additions, 0 deletions...nt-embedded/schemas/com.metabase/cleanup/jsonschema/1-0-0
- src/metabase/analytics/snowplow.clj 5 additions, 2 deletionssrc/metabase/analytics/snowplow.clj
- src/metabase/api/collection.clj 153 additions, 2 deletionssrc/metabase/api/collection.clj
- src/metabase/api/common.clj 16 additions, 0 deletionssrc/metabase/api/common.clj
- src/metabase/api/common/internal.clj 2 additions, 1 deletionsrc/metabase/api/common/internal.clj
- src/metabase/api/testing.clj 20 additions, 1 deletionsrc/metabase/api/testing.clj
- src/metabase/models/collection.clj 4 additions, 12 deletionssrc/metabase/models/collection.clj
- src/metabase/public_settings.clj 1 addition, 0 deletionssrc/metabase/public_settings.clj
- src/metabase/public_settings/premium_features.clj 4 additions, 0 deletionssrc/metabase/public_settings/premium_features.clj
- test/metabase/api/collection_test.clj 1 addition, 0 deletionstest/metabase/api/collection_test.clj
- test/metabase/api/common_test.clj 24 additions, 0 deletionstest/metabase/api/common_test.clj
- test/metabase/stale_test.clj 39 additions, 0 deletionstest/metabase/stale_test.clj
Loading
Please register or sign in to comment