postgresql_db - Add or remove PostgreSQL databases from a remote host.

Author:Lorin Hochstein

Synopsis

Add or remove PostgreSQL databases from a remote host.

Options

parameter required default choices comments
encoding no
    Encoding of the database
    lc_collate no
      Collation order (LC_COLLATE) to use in the database. Must match collation order of template database unless template0 is used as template.
      lc_ctype no
        Character classification (LC_CTYPE) to use in the database (e.g. lower, upper, ...) Must match LC_CTYPE of template database unless template0 is used as template.
        login_host no localhost
          Host running the database
          login_password no
            The password used to authenticate with
            login_user no
              The username used to authenticate with
              name yes
                name of the database to add or remove
                owner no
                  Name of the role to set as owner of the database
                  port no 5432
                    Database port to connect to.
                    state no present
                    • present
                    • absent
                    The database state
                    template no
                      Template used to create the database

                      Note

                      Requires psycopg2

                      Examples


                      # Create a new database with name "acme"
                      - postgresql_db: name=acme
                      
                      # Create a new database with name "acme" and specific encoding and locale
                      # settings. If a template different from "template0" is specified, encoding
                      # and locale settings must match those of the template.
                      - postgresql_db: name=acme
                                       encoding='UTF-8'
                                       lc_collate='de_DE.UTF-8'
                                       lc_ctype='de_DE.UTF-8'
                                       template='template0'

                      Note

                      The default authentication assumes that you are either logging in as or sudo’ing to the postgres account on the host.

                      Note

                      This module uses psycopg2, a Python PostgreSQL database adapter. You must ensure that psycopg2 is installed on the host before using this module. If the remote host is the PostgreSQL server (which is the default case), then PostgreSQL must also be installed on the remote host. For Ubuntu-based systems, install the postgresql, libpq-dev, and python-psycopg2 packages on the remote host before using this module.