Skip to content

Andersson007/community.postgresql

 
 

Repository files navigation

PostgreSQL collection for Ansible

Build Status Codecov Discuss on Matrix at #postgresql:ansible.com

This collection is a part of the Ansible package.

NOTE: This collection is only for interacting with an existing database installation! If you are looking for a collection to install PostgreSQL you need to use another collection/role, for example, galaxyproject.postgresql.

Our mission

At the community.postgresql Ansible collection project, our mission is to produce and maintain simple, flexible, and powerful open-source software tailored to automating PostgreSQL-related tasks.

We welcome members from all skill levels to participate actively in our open, inclusive, and vibrant community. Whether you are an expert or just beginning your journey with Ansible and PostgreSQL, you are encouraged to contribute, share insights, and collaborate with fellow enthusiasts.

We strive to make managing PostgreSQL deployments as effortless and efficient as possible with automation, enabling users to focus on their core objectives.

Code of Conduct

We follow the Ansible Code of Conduct in all our interactions within this project.

If you encounter abusive behavior violating the Ansible Code of Conduct, please refer to the policy violations section of the Code of Conduct for information on how to raise a complaint.

Communication

For more information about communication see the Ansible communication guide.

Contributing to this collection

The content of this collection is made by people just like you; a community of individuals collaborating on making the world better through developing automation software.

We are actively accepting new contributors and all types of contributions are very welcome.

You don't know how to start? Refer to our contribution guide!

We use the following guidelines:

Collection maintenance

The current maintainers (contributors with write or higher access) are listed in the MAINTAINERS file. If you have questions or need help, feel free to mention them in the proposals.

To learn how to maintain / become a maintainer of this collection, refer to the Maintainer guidelines.

It is necessary for maintainers of this collection to be subscribed to:

They also should be subscribed to Ansible's The Bullhorn newsletter.

Governance

We, the PostgreSQL working group, use the forum posts tagged with postgresql for general announcements and discussions.

The process of decision making in this collection is based on discussing and finding consensus among participants.

Every voice is important and every idea is valuable. If you have something on your mind, create an issue or dedicated forum discussion and let's discuss it!

External requirements

The PostgreSQL modules rely on the Psycopg PostgreSQL database adapter. Both versions Psycopg2 and Psycopg3 are supported. The minimum supported and tested versions of Psycopg are 2.5.1 and 3.1.8 respectively.

Releases Support Timeline

We maintain each major release version (1.x.y, 2.x.y, ...) for two years after the next major version is released.

Here is the table for the support timeline:

  • 1.x.y: released 2020-11-17, EOL
  • 2.x.y: released 2022-02-10, EOL
  • 3.x.y: released 2023-06-09, current
  • 4.x.y: to be released; not earlier than after Ansible 10 release (~May 2024)

PostgreSQL server version support

The collection supports PostgreSQL server versions officially supported by the PostgreSQL Global Development Group. EOL versions are NOT taken into account during development. Even if they are present in our test matrix now, they can be removed at any moment.

Tested with ansible-core

Tested with the following ansible-core releases:

  • 2.15
  • 2.16
  • 2.17
  • current development version

Ansible-core versions before 2.12.0 are not supported. Our AZP CI includes testing with the following docker images / PostgreSQL versions:

Docker image Psycopg version PostgreSQL version
RHEL 8 2.7.5 10
Fedora 37 2.9.6 14
Fedora 39 2.9.6 15
Ubuntu 22.04 3.1.9 16
Fedora 40 2.9.9 16
Ubuntu 24.04 3.2.2 17

Included content

Using this collection

Installing the Collection from Ansible Galaxy

Before using the PostgreSQL collection, you need to install it with the Ansible Galaxy command-line tool:

ansible-galaxy collection install community.postgresql

You can include it in a requirements.yml file and install it via ansible-galaxy collection install -r requirements.yml, using the format:

---
collections:
  - name: community.postgresql

You can also download the tarball from Ansible Galaxy and install the collection manually wherever you need.

Note that if you install the collection from Ansible Galaxy with the command-line tool or tarball, it will not be upgraded automatically when you upgrade the Ansible package. To upgrade the collection to the latest available version, run the following command:

ansible-galaxy collection install community.postgresql --upgrade

You can also install a specific version of the collection, for example, if you need to downgrade when something is broken in the latest version (please report an issue in this repository). Use the following syntax:

ansible-galaxy collection install community.postgresql:==X.Y.Z

See Ansible Using collections for more details.

Release notes

See the changelog.

More information

Licensing

GNU General Public License v3.0 or later.

See LICENSE to see the full text.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 97.9%
  • Shell 2.1%