{"repo":"pgxn/docker-pgxn-tools","free":true,"listed":false,"github":"https://github.com/pgxn/docker-pgxn-tools","clone":"git clone https://github.com/pgxn/docker-pgxn-tools.git","description":"Test image for PostgreSQL & PGXN extensions","language":"Shell","stars":33,"topics":["postgresql","pgxn","docker","cicd"],"license":null,"category":"deployment-docker-iac","readme_excerpt":"PGXN Extension Build and Test Tools Docker Image ================================================ This project provides a simple Docker image to enable the automated testing of PGXN extensions against multiple versions of PostgreSQL, as well as publishing releases to PGXN. The image contains these utilities: [ pgxn ][cli]: The PGXN command-line client [ pg prove ]: Runs and harnessing pgTAP tests [ pg-start ] Installs a major version of PostgreSQL and starts a cluster [ pg-build-test ]: Builds and tests a [PGXS] extension in the current directory [ pgrx-build-test ]: Builds and tests a [pgrx] extension in the current directory [ pgxn-bundle ]: Validates the PGXN META.json file and bundles up a release [ pgxn-release ]: Release to PGXN The image is based on the Debian Bookworm Slim image, and uses the [PostgreSQL Apt] repository to install PostgreSQL, supporting versions [back to 8.2], as well as the latest prerelease version. Running a Container ------------------- To run pgxn-tools in Docker, use the standard Docker CLI, like so: This example mounts the current directory inside the container. Once inside, it starts Postgres 16 then builds and runs the tests for the extension in that directory. Unprivileged User NOTE: GitHub workflow container jobs must be run as root. The options for unprivileged users in this section will not work in that context. See Unprivileged User Workflow for details. By default the container runs as root . To run as an unprivileged user, pass the AS ","default_branch":null,"files":null,"tree":[],"storefront":"/r/pgxn","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pgxn/docker-pgxn-tools/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}