aboutsummaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorPeter Eisentraut <peter@eisentraut.org>2025-01-24 11:37:20 +0100
committerPeter Eisentraut <peter@eisentraut.org>2025-01-24 12:39:47 +0100
commitaeb8ea361a0a321a0e1cbc79a4cd3ec0b1191bf2 (patch)
tree64d994d2c2bdae615ac2fbc1fc382758be25964f /doc/src
parent02ed3c2bdcefab453b548bc9c7e0e8874a502790 (diff)
downloadpostgresql-aeb8ea361a0a321a0e1cbc79a4cd3ec0b1191bf2.tar.gz
postgresql-aeb8ea361a0a321a0e1cbc79a4cd3ec0b1191bf2.zip
Convert sepgsql tests to TAP
Add a TAP test for sepgsql. This automates the previously required manual setup before the test. The actual tests are still run by pg_regress, as before, but now called from within the TAP Perl script. The previous manual test script (test_sepgsql) is left in place, since its purpose is (also) to test whether a running instance was properly initialized for sepgsql. But it has been changed to call pg_regress directly and no longer require make. Reviewed-by: Andreas Karlsson <andreas@proxel.se> Discussion: https://www.postgresql.org/message-id/flat/651a5baf-5c45-4a5a-a202-0c8453a4ebf8@eisentraut.org
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/regress.sgml11
-rw-r--r--doc/src/sgml/sepgsql.sgml17
2 files changed, 24 insertions, 4 deletions
diff --git a/doc/src/sgml/regress.sgml b/doc/src/sgml/regress.sgml
index f4cef9e80f7..7c474559bdf 100644
--- a/doc/src/sgml/regress.sgml
+++ b/doc/src/sgml/regress.sgml
@@ -285,6 +285,17 @@ make check-world PG_TEST_EXTRA='kerberos ldap ssl load_balance libpq_encryption'
</varlistentry>
<varlistentry>
+ <term><literal>sepgsql</literal></term>
+ <listitem>
+ <para>
+ Runs the test suite under <filename>contrib/sepgsql</filename>. This
+ requires an SELinux environment that is set up in a specific way; see
+ <xref linkend="sepgsql-regression"/>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term><literal>ssl</literal></term>
<listitem>
<para>
diff --git a/doc/src/sgml/sepgsql.sgml b/doc/src/sgml/sepgsql.sgml
index ca038d71042..03ed7d1c90d 100644
--- a/doc/src/sgml/sepgsql.sgml
+++ b/doc/src/sgml/sepgsql.sgml
@@ -152,13 +152,22 @@ $ for DBNAME in template0 template1 postgres; do
<title>Regression Tests</title>
<para>
+ The <filename>sepgsql</filename> test suite is run if
+ <literal>PG_TEST_EXTRA</literal> contains <literal>sepgsql</literal> (see
+ <xref linkend="regress-additional"/>). This method is suitable during
+ development of <productname>PostgreSQL</productname>. Alternatively, there
+ is a way to run the tests to checks whether a database instance has been
+ set up properly for <literal>sepgsql</literal>.
+ </para>
+
+ <para>
Due to the nature of <productname>SELinux</productname>, running the
regression tests for <filename>sepgsql</filename> requires several extra
configuration steps, some of which must be done as root.
- The regression tests will not be run by an ordinary
- <literal>make check</literal> or <literal>make installcheck</literal> command; you must
- set up the configuration and then invoke the test script manually.
- The tests must be run in the <filename>contrib/sepgsql</filename> directory
+ </para>
+
+ <para>
+ The manual tests must be run in the <filename>contrib/sepgsql</filename> directory
of a configured PostgreSQL build tree. Although they require a build tree,
the tests are designed to be executed against an installed server,
that is they are comparable to <literal>make installcheck</literal> not