Pass a parameter to a SQL Script included with includeAll?

I’ve got a setup that consists of a master-changelog.xml, and a number of SQL files under changelogs/.

The contents of master-changelog.xml looks something like:

<?xml version="1.0" encoding="UTF-8"?>



What I want to be able to do is pass in a sensitive value to one of those SQL files, eg changelogs/020-create-users.sql. I’ve tried adding a line, user.password: some value added at runtime, but I can’t seem to propagate this to my create-users.sql file. Is this a possibility?

I have a test-case setup for this.

I have the following in a formatted sql file, in the include all path:

--liquibase formatted sql

--changeset author:grant_test_employee_privs
GRANT SELECT ON test_employee TO ${schema_id}_read_only;

When I execute Liquibase I provide the values for the variables:

JAVA_OPTS="-Dschema_id=BOB" liquibase ... update