Core's serializer should only validate when policy='immediate' (the default)
For a plugin to support on-demand it needs to take extra steps. Core should not allow a user by default to expect to use policy != 'immediate' if a plugin hasn't done the work to enable it. Currently values of policy 'on_demand' or policy 'streamed' are also allowed.
1. Have core's Remote serializer (the Master one) fail validation if policy != 'immediate'.
2. Add docs on how plugins can adjust this validation in their Remote detail serializer to enable either policy='streamed' and/or policy='on_deamand'
We need to advertise to users that they can expect this here: https://docs.pulpproject.org/en/3.0/nightly/workflows/lazy-downloading.html
We need to document to plugin writers what they should do here: https://docs.pulpproject.org/en/pulpcore-plugin/nightly/reference/lazy-support.html#lazy-support
Core's Remote only validates 'immediate'
The core's default mode policy='immediate' is the only one that is
guaranteed by all plugins to implement. Users of plugins that haven't
enabled additional modes should receive an error when then create a
Now users using policy != 'immediate' will receive an error.
This is reported against pulp_ansible, but I believe the place to fix this is in core. The core serializer should require the plugin-provided serializer to adjust the allowed values for the 'policy' attribute at Remote creation time. If the plugin doesn't adjust the 'policy' attribute only 'immediate' would be allowed. I believe this will fix this for all plugins.
@daviddavis what do you think?
- Project changed from Ansible Plugin to Pulp
- Subject changed from Collection - Sync does not fail when using lazy policies to Core's serializer should only validate when policy='immediate' (the default)
- Description updated (diff)
Moving to core and rewriting based on open-floor discussion from June 21st.
- Status changed from POST to MODIFIED
Applied in changeset plugin_template|b9ffe957bcec14b975fe1102a00570359cdef64a.
Applied in changeset pulp_file:ab7e195814ed315605508fe8fb9c8184d0c4360b.
Please register to edit this issue