Skip to content

Improve sync settings in controlled containers #1398

@srosset81

Description

@srosset81

Context

At the moment we have a single excludeFromMirror setting that can be used in the ControlledContainerMixin that tells the SynchronizerService not to send ActivityPub activities when resources are created / updated / deleted. This name is not clear, and will become even less clear when we stop providing mirroring features.

Also we can't prevent the AggregatorService to automatically add resources that are sent via ActivityPub activities.

Also in Pod provider config, activities are only sent on create/update/delete, but not when permissions are changed. This brings confusion.

Finally, we can't choose the recipients.

Proposal

Rename excludeFromMirror to sync.postActivitiesOnResourcesChange

Add a new sync.postActivitiesOnPermissionsChange.

Add a new sync.acceptActivities setting and use it in the AggregatorService.

Add a new sync.selectRecipients setting, a function taking the resource as a parameter, as well as the list of users who can see the resource. The return value will be the users who will receive the activity.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions