When we worked on the message format for the notification sent by bodhi to inform the CI system that an update is ready to be tested (ie, these messages: https://apps.fedoraproject.org/datagrepper/id?id=2019-60247a51-fa32-4353-b819-c7c5dc3a3f53&is_raw=true&size=extra-large ) we agreed that we would provide the task_id field containing the identifier of the task that build the package in koji.
task_id
That field is marked as Integer and mandatory in bodhi's messages schema.
Integer
However, this is breaking bodhi as it fails to send notifications about module builds which, built outside of koji, do not have a task associated with them (for example: https://koji.fedoraproject.org/koji/buildinfo?buildID=1420808 )
This is leading to a question: How is this being handled internally? (Is it?) And two options: - Do not send notification about bodhi updates for modules ready to be tested - Allow the task_id field to be either an integer or None
None
We much prefer the second option to the first one, but that means the pipeline may need to be adjusted for it.
Thoughts?
For modules builds we have different messages and we did not yet define them in the standard, but we are using them:
https://url.corp.redhat.com/4bbddff
And also greenwave supports module artifact (but is is called redhat-module downstream)
I guess we need to define them asap.
You're linking me to a test.complete message, while I'm talking about something that is more like a build.complete one.
test.complete
build.complete
Ok, so from the discussion we've just had on IRC, here is the plan:
This will allow us to unbreak bodhi right now and give us time to figure out the schema, topic and content we want in the notifications about module updates (as well as time to answer questions such as: can there be more than one module updated in one update?)
can there be more than one module updated in one update?
@cverna replied to this one: Yes, cf: https://bodhi.fedoraproject.org/updates/FEDORA-MODULAR-2019-2b5b58da12
Ah ok, so I guess we need to ask for supporting of this sooner then later ....
Drop these messages for module updates for now
Reformulated:
ie: do not send them for flatpacks, containers, modules...
From a follow-up discussion on IRC, we will also let bodhi send notifications where task_id is None.
The gist of it is that even RPM builds can be imported into koji (just like we do for module builds), releng has done it a few times in the past and even though it's an exceptional measure there is nothing telling us it will never happen again. If we keep task_id required and import an RPM build in the future, bodhi will crash as it does today and things are stuck. If we allow task_id to be None, the CI pipeline will crash and the update will be gated. Considering this would be exceptional circumstances, this would be something we can waive through (not ideal but also very exceptional).
Supporting group of modules is still not supported by greenwave.
internal backref https://issues.redhat.com/browse/RHELWF-381