rtshome.pgsql

pgsql

Proporciona cuatro nuevos módulos de Ansible para PostgreSQL:

  • postgresql_table: asegurar que una tabla esté presente (o ausente) en la base de datos
  • postgresql_row: asegurar que una fila esté presente (o ausente) en una tabla
  • postgresql_query: ejecutar una consulta arbitraria en la base de datos y devolver los resultados
  • postgresql_command: ejecutar un comando arbitrario en la base de datos

Para más documentación, consulta la wiki del proyecto: https://github.com/rtshome/ansible_pgsql/wiki

Requisitos

Requiere que psycopg2 esté instalado según los módulos de PostgreSQL de Ansible: http://docs.ansible.com/ansible/latest/list_of_database_modules.html#postgresql

Variables del rol

No se definen variables por el módulo

Dependencias

Ejemplo de Playbook

Un ejemplo de playbook que:

  • crea la tabla config en la base de datos acme
  • asegura que una fila esté presente en la tabla config
  • realiza una consulta SELECT en config y almacena los resultados en la variable query
  • ejecuta un comando que elimina todos los registros en la tabla logs
    - hosts: servers
      tasks:
        - postgresql_table:
            database: acme
            name: config
            state: present
            columns:
              - {
                name: key,
                type: text,
                null: False
              }
              - {
                name: value,
                type: text,
                null: False
              }
            primary_key:
              - key
        
        - postgresql_row:
            database: acme
            table: config
            row:
              key: env
              value: production

        - postgresql_query:
            database: acme
            query: SELECT * FROM config WHERE env = %(env)s
            parameters:
              env: production 
          register: query

        - postgresql_command:
            database: acme
            command: "TRUNCATE logs"
      roles:
         - rtshome.pgsql

Licencia

BSD

Información del autor

Denis Gasparin denis@gasparin.net http://www.gasparin.net

Acerca del proyecto

Add four modules to interact with PostgreSQL DBMS: postgresql_table, postgresql_row, postgresql_query, postgresql_command.

Instalar
ansible-galaxy install rtshome.pgsql
Licencia
bsd-2-clause
Descargas
76.4k
Propietario