Open
Description
Creating a release happens in two places: Once when a user explicitly creates one (the first one for that instance) and another when the queued releases handler is run.
This makes this logic difficult to maintain because updates and fixes have to be applied in two places.
Pull this logic out into a separate function that can be called from either code path.