Commit 008aef61 authored by Stephane Nicoll's avatar Stephane Nicoll

Document @LiquibaseDataSource feature

Closes gh-8214
parent 21e86653
/* /*
* Copyright 2012-2016 the original author or authors. * Copyright 2012-2017 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
...@@ -76,11 +76,12 @@ public class LiquibaseAutoConfiguration { ...@@ -76,11 +76,12 @@ public class LiquibaseAutoConfiguration {
private final DataSource liquibaseDataSource; private final DataSource liquibaseDataSource;
public LiquibaseConfiguration(LiquibaseProperties properties, public LiquibaseConfiguration(LiquibaseProperties properties,
ResourceLoader resourceLoader, DataSource dataSource, ResourceLoader resourceLoader,
ObjectProvider<DataSource> dataSourceProvider,
@LiquibaseDataSource ObjectProvider<DataSource> liquibaseDataSourceProvider) { @LiquibaseDataSource ObjectProvider<DataSource> liquibaseDataSourceProvider) {
this.properties = properties; this.properties = properties;
this.resourceLoader = resourceLoader; this.resourceLoader = resourceLoader;
this.dataSource = dataSource; this.dataSource = dataSourceProvider.getIfUnique();
this.liquibaseDataSource = liquibaseDataSourceProvider.getIfAvailable(); this.liquibaseDataSource = liquibaseDataSourceProvider.getIfAvailable();
} }
......
...@@ -2210,6 +2210,12 @@ The master change log is by default read from `db/changelog/db.changelog-master. ...@@ -2210,6 +2210,12 @@ The master change log is by default read from `db/changelog/db.changelog-master.
can be set using `liquibase.change-log`. In addition to YAML, Liquibase also supports can be set using `liquibase.change-log`. In addition to YAML, Liquibase also supports
JSON, XML, and SQL change log formats. JSON, XML, and SQL change log formats.
By default Liquibase will autowire the (`@Primary`) `DataSource` in your context and use
that for migrations. If you like to use a different `DataSource` you can create one and
mark its `@Bean` as `@LiquibaseDataSource` - if you do that remember to create another one
and mark it as `@Primary` if you want two data sources. Or you can use Liquibase's native
`DataSource` by setting `liquibase.[url,user,password]` in external properties.
See See
{sc-spring-boot-autoconfigure}/liquibase/LiquibaseProperties.{sc-ext}[`LiquibaseProperties`] {sc-spring-boot-autoconfigure}/liquibase/LiquibaseProperties.{sc-ext}[`LiquibaseProperties`]
for details of available settings like contexts, default schema etc. for details of available settings like contexts, default schema etc.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment