-
Notifications
You must be signed in to change notification settings - Fork 144
Description
Expected Behavior
I expect to be able to set a username via the COUCHDB_USER environment variable with a length of 1 character.
Current Behavior
Previous versions of the docker image did not have any validation on service start. The current versions fails if the specified COUCHDB_USER is a single character.
You'll see the following message on container start with a single-character username:
*************************************************************
ERROR: CouchDB 3.0+ will no longer run in "Admin Party"
mode. You *MUST* specify an admin user and
password, either via your own .ini file mapped
into the container at /opt/couchdb/etc/local.ini
or inside /opt/couchdb/etc/local.d, or with
"-e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password"
to set it via "docker run".
*************************************************************
I believe the cause is the \w+ in the regex check here
Possible Solution
I think changing the \w+ to \w* will allow the previous behavior.
Steps to Reproduce (for bugs)
docker run -e COUCHDB_USER=l -e COUCHDB_PASSWORD=password -d couchdbHere is an example of downstream usage of the image where it just constantly restarts the container (though the error message isn't surfaced as I don't surface that in the tests):
https://github.com/dokku/dokku-couchdb/runs/3578023307?check_suite_focus=true
Context
This breaks my tests, which I try to sync between all datastore plugins. Fixing it just means increasing the username length, but its annoying since now I can't easily copy the files over as tests change.
That said, its not a super-critical bug, just an annoying one.
Your Environment
- Version used: 3.1.1
- Browser Name and version: Safari Version 14.1.2 (16611.3.10.1.3)
- Operating System and version (desktop or mobile): macOS Big Sur 11.5
- Link to your project: https://github.com/dokku/dokku-couchdb