-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Publish generic signals to event bus #6
Conversation
Commit message notes: - Addresses #5 - Large amounts copied from license manager prototype work, including https://github.com/openedx/license-manager/blob/38b38b0979bb5f643595337a9c189f619a7d483b/license_manager/apps/subscriptions/event_bus_utils.py#L56
- openedx/edx-cookiecutters#199 -- requirements - openedx/edx-cookiecutters#216 -- tox
`make test-all` passes now. (`requests` was missing from test.txt, but `pytest` was passing for me because something else brings it into dev.txt.) Improve test-all target. This should be upstreamed to the cookiecutter. Also ignore pii_report output dir.
…aversal ...but also reduce coverage target to something reasonable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some docstring issues, reminder to call poll(), and request to remove extraneous package updates
serializer_schema: An Avro schema (nested dictionaries) | ||
field_path: List of strings matching the 'name' of subfields | ||
|
||
TODO: Move to openedx_events.event_bus.avro.serializer? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not a blocker, but we should clarify with @robrap how we want to handle TODOs like this
Forgot! We should also add settings files (devstack.py and production.py at least) so we can actually set the correct host/url. The edx-django-utils/plugins documentation has more information on how to create settings for plugins (even if this is more library than plugin) |
Why do we need settings files? Won't that come from the Django settings of the IDA? I was just thinking of hardcoding in some devstack-appropriate defaults e.g. |
Add note about desire to cache producers. Something for a later PR.
): | ||
ep.send_to_event_bus(signal, 'user_stuff', 'user.id', event_data) | ||
|
||
#. Make or refresh a copy of this repo where it can be seen from inside devstack: ``rsync -sax -delete ./ ../src/event-bus-kafka/`` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[not blocking] Should we update this to point to...whatever documentation we have around how to use edx-platform plugins in general?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I couldn't find anything, but I didn't look super hard. But I think it would be worth investigating instead if we can call a test cluster more directly, not requiring the test to be run inside of devstack.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some nits, but nothing blocking. Thank you!!!
Implement
send_to_event_bus
, accepting signal, data, topic, and key information.https://github.com/openedx/license-manager/blob/38b38b0979bb5f643595337a9c189f619a7d483b/license_manager/apps/subscriptions/event_bus_utils.py#L56
Also:
Small improvements that should be upstreamed to the cookiecutter:
Merge checklist: