Change DATABASE_ADAPTER to DATABASE_SCHEME
This commit is contained in:
10
README.md
10
README.md
@@ -133,17 +133,17 @@ dokku mysql:destroy lolipop
|
|||||||
## Changing database adapter
|
## Changing database adapter
|
||||||
|
|
||||||
It's possible to change the protocol for DATABASE_URL by setting
|
It's possible to change the protocol for DATABASE_URL by setting
|
||||||
the environment variable DATABASE_ADAPTER on the app:
|
the environment variable DATABASE_SCHEME on the app:
|
||||||
|
|
||||||
```
|
```
|
||||||
dokku config:set playground DATABASE_ADAPTER=mysql2
|
dokku config:set playground DATABASE_SCHEME=mysql2
|
||||||
dokku mysql:link lolipop playground
|
dokku mysql:link lolipop playground
|
||||||
```
|
```
|
||||||
|
|
||||||
Will cause DATABASE_URL to be set as
|
Will cause DATABASE_URL to be set as
|
||||||
mysql2://mysql:SOME_PASSWORD@dokku-mysql-lolipop:3306/lolipop
|
mysql2://mysql:SOME_PASSWORD@dokku-mysql-lolipop:3306/lolipop
|
||||||
|
|
||||||
CAUTION: Changing DATABASE_ADAPTER after linking will cause dokku to believe
|
CAUTION: Changing DATABASE_SCHEME after linking will cause dokku to believe
|
||||||
the service is not linked when attempting to use `dokku mysql:unlink` or
|
the service is not linked when attempting to use `dokku mysql:unlink` or
|
||||||
`dokku mysql:promote`.
|
`dokku mysql:promote`.
|
||||||
You should be able to fix this by
|
You should be able to fix this by
|
||||||
@@ -152,7 +152,7 @@ You should be able to fix this by
|
|||||||
|
|
||||||
OR
|
OR
|
||||||
|
|
||||||
- Set DATABASE_ADAPTER back to its original setting
|
- Set DATABASE_SCHEME back to its original setting
|
||||||
- Unlink the service
|
- Unlink the service
|
||||||
- Change DATABASE_ADAPTER to the desired setting
|
- Change DATABASE_SCHEME to the desired setting
|
||||||
- Relink the service
|
- Relink the service
|
||||||
|
|||||||
@@ -357,6 +357,6 @@ service_linked_apps() {
|
|||||||
|
|
||||||
update_plugin_scheme_for_app() {
|
update_plugin_scheme_for_app() {
|
||||||
local APP=$1
|
local APP=$1
|
||||||
local DATABASE_ADAPTER=$(config_get $APP DATABASE_ADAPTER)
|
local DATABASE_SCHEME=$(config_get $APP DATABASE_SCHEME)
|
||||||
PLUGIN_SCHEME=${DATABASE_ADAPTER:-$PLUGIN_SCHEME}
|
PLUGIN_SCHEME=${DATABASE_SCHEME:-$PLUGIN_SCHEME}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,8 +60,8 @@ teardown() {
|
|||||||
dokku "$PLUGIN_COMMAND_PREFIX:unlink" l my_app
|
dokku "$PLUGIN_COMMAND_PREFIX:unlink" l my_app
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "($PLUGIN_COMMAND_PREFIX:link) uses apps DATABASE_ADAPTER variable" {
|
@test "($PLUGIN_COMMAND_PREFIX:link) uses apps DATABASE_SCHEME variable" {
|
||||||
dokku config:set my_app DATABASE_ADAPTER=mysql2
|
dokku config:set my_app DATABASE_SCHEME=mysql2
|
||||||
dokku "$PLUGIN_COMMAND_PREFIX:link" l my_app
|
dokku "$PLUGIN_COMMAND_PREFIX:link" l my_app
|
||||||
url=$(dokku config:get my_app DATABASE_URL)
|
url=$(dokku config:get my_app DATABASE_URL)
|
||||||
password="$(cat "$PLUGIN_DATA_ROOT/l/PASSWORD")"
|
password="$(cat "$PLUGIN_DATA_ROOT/l/PASSWORD")"
|
||||||
|
|||||||
@@ -54,9 +54,9 @@ teardown() {
|
|||||||
assert_contains "${lines[*]}" "DOKKU_MYSQL_"
|
assert_contains "${lines[*]}" "DOKKU_MYSQL_"
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "($PLUGIN_COMMAND_PREFIX:promote) uses DATABASE_ADAPTER variable" {
|
@test "($PLUGIN_COMMAND_PREFIX:promote) uses DATABASE_SCHEME variable" {
|
||||||
password="$(cat "$PLUGIN_DATA_ROOT/l/PASSWORD")"
|
password="$(cat "$PLUGIN_DATA_ROOT/l/PASSWORD")"
|
||||||
dokku config:set my_app "DATABASE_ADAPTER=mysql2" "DATABASE_URL=mysql://u:p@host:3306/db" "DOKKU_MYSQL_BLUE_URL=mysql2://mysql:$password@dokku-mysql-l:3306/l"
|
dokku config:set my_app "DATABASE_SCHEME=mysql2" "DATABASE_URL=mysql://u:p@host:3306/db" "DOKKU_MYSQL_BLUE_URL=mysql2://mysql:$password@dokku-mysql-l:3306/l"
|
||||||
dokku "$PLUGIN_COMMAND_PREFIX:promote" l my_app
|
dokku "$PLUGIN_COMMAND_PREFIX:promote" l my_app
|
||||||
url=$(dokku config:get my_app DATABASE_URL)
|
url=$(dokku config:get my_app DATABASE_URL)
|
||||||
assert_contains "$url" "mysql2://mysql:$password@dokku-mysql-l:3306/l"
|
assert_contains "$url" "mysql2://mysql:$password@dokku-mysql-l:3306/l"
|
||||||
|
|||||||
Reference in New Issue
Block a user