resolve
content with every ${name} replaced by its configured value.
With placeholders empty nothing is scanned and the content comes back as it was, ${ included.
Parameters
origin
What to call this file in a refusal - the path it was found at.
Throws
INVALID_MIGRATION for a ${name} no value was configured for. Refused rather than left standing: outside a string literal the server would have refused it anyway, and inside one - INSERT INTO settings VALUES ('${tenant}') - it would be stored exactly as written and nothing would ever say so.