问题
I have a task in phing where before tests I drop the database if exists and create it. This is run on Jenkins. I want to do it with createdb like this:
<exec command="createdb my_database" />
The thing is that the createdb is asking me to authenticate and adding -Umy_user parameter is not a problem - the issue is that I cannot specify a password in the createdb command. And I don't want to create a role for the system user ("jenkins" in this case). Is there a solution for that ?
回答1:
createdb
will use the PGPASSWORD environment variable if it's set, that's one simple way of providing a password in non-interactive runs.
Another option would be to set up a .pgpass file in the home directory of the unix user launching the createdb
.
来源:https://stackoverflow.com/questions/13351078/how-to-provide-a-password-for-postgresqls-createdb-non-interactively