This PR allows dashes in service names, while still sanitizing them before they are used as database names. If the datastore is pre-existing, the datatabase name is assumed to be the same as the service name, and returned appropriately.
This pull request switches testing to use an actual docker daemon, vs mocking everything out.
It may also catch actual breaking issues in our tests, which is great!
We previously allowed a wide range of service names. As the service name is sometimes used to name databases, the name was actually more restricted than any character, resulting in services that wouldn't start. Going forward, only alphanumeric and underscore characters are allowed.
This only impacts service creation. Any services with invalid names should be migrated to a new service, with the data exported and imported as normal.
Closesdokku/dokku-redis#99Closesdokku/dokku-mysql#47Closesdokku/dokku-mongo#86Closesdokku/dokku-redis#81