(Perl) script to set up an instance for regression tests

Started by Florian Weimerover 19 years ago3 messagesgeneral
Jump to latest
#1Florian Weimer
fweimer@bfk.de

For regression tests, I'd like to automatically set up a fresh
PostgreSQL instance. Has anybody automated the task (initdb, setting
a password, choosing a port at random, starting the server, and after
running the tests, stopping the server and deleting all the
directories)? I know, it's a straightforward Perl script, but perhaps
someone else has already written it. 8-)

And:

$ fakeroot /usr/lib/postgresql/8.1/bin/postgres -D . postgres
"root" execution of the PostgreSQL server is not permitted.
[...]

This is a major problem when autobuilding Debian packages. 8-(

--
Florian Weimer <fweimer@bfk.de>
BFK edv-consulting GmbH http://www.bfk.de/
Kriegsstraße 100 tel: +49-721-96201-1
D-76133 Karlsruhe fax: +49-721-96201-99

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Florian Weimer (#1)
Re: (Perl) script to set up an instance for regression tests

Florian Weimer <fweimer@bfk.de> writes:

For regression tests, I'd like to automatically set up a fresh
PostgreSQL instance. Has anybody automated the task (initdb, setting
a password, choosing a port at random, starting the server, and after
running the tests, stopping the server and deleting all the
directories)?

"make check"?

$ fakeroot /usr/lib/postgresql/8.1/bin/postgres -D . postgres
"root" execution of the PostgreSQL server is not permitted.
This is a major problem when autobuilding Debian packages. 8-(

Surely you don't build random packages as root.

regards, tom lane

#3Florian Weimer
fweimer@bfk.de
In reply to: Tom Lane (#2)
Re: (Perl) script to set up an instance for regression tests

* Tom Lane:

Florian Weimer <fweimer@bfk.de> writes:

For regression tests, I'd like to automatically set up a fresh
PostgreSQL instance. Has anybody automated the task (initdb, setting
a password, choosing a port at random, starting the server, and after
running the tests, stopping the server and deleting all the
directories)?

"make check"?

Ah, pg_regress.sh is indeed a good start. Silly me. Thanks.

$ fakeroot /usr/lib/postgresql/8.1/bin/postgres -D . postgres
"root" execution of the PostgreSQL server is not permitted.
This is a major problem when autobuilding Debian packages. 8-(

Surely you don't build random packages as root.

It's just fakeroot, a user-space emulation of UID=0, using pre-loaded
dynamic shared objects. Although "fakeroot id -u" returns "0", you
cannot actually execute any operations that require privileges you
haven't got.

--
Florian Weimer <fweimer@bfk.de>
BFK edv-consulting GmbH http://www.bfk.de/
Kriegsstraße 100 tel: +49-721-96201-1
D-76133 Karlsruhe fax: +49-721-96201-99