I have some changeSets that are defined as runOnChange=“true” where the referenced scripts contain parameter values to be substituted by runtime values (properties). If the changeSet has already been deployed and the runtime property value then changes, the changeSet is not being re-executed. It would appear that the md5sum calculation is being done before property substitution and therefore changes to runtime values are not being detected? Is this expected behaviour?
As a workaround, I have modified all the changeSets that contain property values to be runAlways=“true”, although my preference would be for Liquibase to detect the change based on the latest runtime property values supplied.