Sambruk / EgilSCIM

The EGIL SCIM client
GNU Affero General Public License v3.0
4 stars 7 forks source link

Support for threshold value to prevent accidental removal #196

Closed joesiltberg closed 2 months ago

joesiltberg commented 11 months ago

Could perhaps be set per data type (or for all types?). Simply an absolute value? Support for relative thresholds?

Perhaps:

Student-threshold = 50

(meaning, if the number of students has decreased by 50 or more compared to what we have in the cache file, we'll terminate the sync with an error message)

Not sure if it needs to be configured by datatype. Even if it is set for all datatypes, perhaps the limit should apply per datatype? Or we could have one threshold for all datatypes and optionally one per datatype...

For syncs where the number of objects is reduced due to selections an absolute number might not be suitable...

In order to have settings that can be used for all different syncs it would perhaps be good if both absolute and relative values can be set, and abort the sync if either limit is exceeded.

There also needs to be a command line parameter for ignoring the thresholds, so the protection can be overridden at end of semester for instance (or when a selection is changed so a drastic reduce is expected).