Sometimes one actual release can consist of multiple versions in Jira. In this case as well, ARN covers the ground for you. It finally boils down to how you write your JQL.
Normally, ARN supports [versionId] & [versionName] variables. But when you need to generate release notes from multiple versions they are not sufficient. For such templates, you can use version variables as - [versionId1], [versionId2], [versionId3]…. & [versionName1], [versionName2], [versionName3]……so on.
This is how to form your JQLs in ARN templates -
project=[projectId] and issueType=story and fixVersion in ("[versionId1]","[versionId2]","[versionId3]")
project=[projectId] and issueType=bug and fixVersion > "[versionId1]" and fixVersion < "[versionId2]"
Now depending on the versions you pick and their sequence, release notes will be generated.
For example, in the following case - V8-Cloud-July will be passed to variable versionId1 & V6-Cloud-July will be passed to variable versionId2.
Only way to provide multiple versions to a rule is when executing the rule manually or via the webhook.
In case of version release - only released version will be passed to the templates
In case of scheduled N days before release - only 'about to release' version will be passed to the templates
In case of scheduled at interval - no version will be passed to the templates
If the number of versions provided to the template are more or less than version variables in the template, generated results may not match your expectations.
If you want to use ARN without relying on 'versions', simply use the JQLs without any version variables & then make use of triggers that are independent of Jira versions - such as Manual, Scheduled at interval.