No description
  • Python 41.9%
  • Jinja 26%
  • Shell 21%
  • Just 11.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Slavi Pantaleev 130e5d9a0e Name an existing database in the readiness check
Without --dbname, pg_isready asks for a database named after the user,
so Postgres logged `FATAL: database "root" does not exist` on every start.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 00:40:56 +02:00
.github Update molecule.yml: safeguard for running multiple scenarios 2026-09-02 11:44:36 -04:00
bin Add state-based autotagging 2026-08-22 18:00:57 +03:00
defaults Skip the fixed start-up waits while the readiness check is enabled 2026-10-04 16:59:41 +03:00
docs Update configuring-postgres.md: fix headings level 2026-10-13 11:05:22 -07:00
library Prepare managed databases via docker exec instead of docker run 2026-10-26 08:05:41 +02:00
meta Standardize the meta namespace to mash 2026-08-24 18:44:42 +03:00
molecule Update pre-commit repositories and hooks 2026-10-29 06:42:23 -08:00
tasks Make the base and bin paths owned by root 2026-10-30 09:38:23 +02:00
templates Name an existing database in the readiness check 2026-11-02 00:40:56 +02:00
vars Rework version detection and make it possible to restrict the versions that are allowed to be installed 2025-10-20 15:57:32 +03:00
.gitignore Prepare managed databases via a module which reports changes 2026-10-26 07:36:53 +02:00
.pre-commit-config.yaml Update pre-commit repositories and hooks 2026-10-29 06:42:23 -08:00
.python-version Add Molecule testing framework 2026-08-02 01:33:25 -04:00
justfile justfile: git hooks resolve prek through the mise shim 2026-08-25 16:20:49 +03:00
LICENSE Add license 2023-03-16 14:54:34 +02:00
mise.toml mise: drop the settings block - yes is ignored in project configs 2026-08-16 09:23:23 +03:00
README.md Update README.md: fix link to the documentation 2026-10-13 11:09:32 -07:00

Postgres Ansible role

This is an Ansible role which installs Postgres to run as a Docker container wrapped in a systemd service.

This role implicitly depends on:

Check defaults/main.yml for the full list of supported options. Refer to this page for details about setting up the service with this role.

💡 For an Ansible playbook which integrates this role and makes it easier to use, see the Mother-of-All-Self-Hosting Ansible playbook.

Development

pre-commit

You can optionally install a Git pre-commit hook (via mise + prek) that runs formatting and linting checks before each commit. See .pre-commit-config.yaml for which hooks are to be executed.

To install the hook, run the just command below:

just prek-install-git-pre-commit-hook

Molecule

This role supports Molecule, an Ansible testing framework designed for developing and testing Ansible collections, playbooks, and roles.

Refer to this page for details about how to utilize it.

Releases

Tags are created on the GitHub workflow by .github/workflows/autotag.yml, which asks bin/compute-next-tag.sh what the commit on main should be released as. The answer comes from the version pinned in defaults/main.yml and from the tags that already exist, so a commit that only touches documentation or CI is not released at all, and any change to the role itself is — without waiting for a dependency bump to carry it along.

bin/test-compute-next-tag.sh exercises that script against throwaway repositories, and runs as a prek hook.