amarao.flyway

flyway

Instala y configura la herramienta de línea de comandos de Flyway desde http://flywaydb.org/getstarted/download.html. Instala archivos en /opt/flyway y crea un enlace simbólico desde /usr/bin/flyway al binario en /opt/flyway.

Cambio: ahora el rol usa SSL por defecto. Establece flyway_use_ssl: false para volver a HTTP.

Requisitos

Ansible 1.4+. Necesitarás Java en el host para usar Flyway, pero este rol funcionará incluso sin Java.

Variables del Rol

Todas las variables son opcionales.

  • fly_version: (por defecto: "4.2.0")
  • flyway_download_url: (por defecto: "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/%s/flyway-commandline-%s.tar.gz")
  • flyway_root: (por defecto: /opt/flyway)
  • flyway_config:
    • database:
      • dbms: (Comprobado con Postgres y Oracle)
      • host: nombre o IP del servidor de base de datos
      • port: 5432
      • name: nombre de la base de datos
      • user: nombre de usuario
      • password: contraseña para el nombre de usuario
    • schemas: esquemas a gestionar
  • flyway_table: tabla Flyway (por defecto: schema_history)
  • flyway_locations: ruta a las migraciones SQL (con el prefijo 'filesystem:' si es necesario, ver ejemplos)
  • flyway_symlink_location: lugar para el enlace simbólico ejecutable (por defecto: /usr/bin)
  • flyway_use_ssl: Usar SSL o no para descargar el binario (por defecto: sí)
  • flyway_validate_ssl_cert: validar o no el certificado SSL del servidor al momento de la descarga (por defecto: sí)

Dependencias

Ninguna

Ejemplo de Playbook (Postgres)

- hosts: javadb
  roles:
     - flyway
  vars:
     - flyway_root: /opt/flyway
     - flyway_config:
        database: 
          host: localhost
          port: 5432
          dbms: postgresql
          name: ejemplo
          user: postgres
          password: postgres
        schemas: public, myschema
     - flyway_locations: filesystem:/opt/migrations/

Configuración comprobada con Postgres 9.2.

Ejemplo de Playbook (Oracle)

- hosts: oracledb
  roles:
     - { role: flyway }
  vars:
    - flyway_driver: oracle.jdbc.OracleDriver
    - flyway_config:
       database:
       dbms: oracle
       host: localhost
       port: 1521
       name: XE
       user: APP
       password: appsecret
       schemas: APP
    - flyway_locations: filesystem:/opt/migrations/full,filesystem:/opt/migrations/demo

Configuración comprobada con Oracle XE 11.

Nota: Para usar Flyway con Oracle, necesitas copiar el archivo jar del controlador a Flyway:

- name: Copiar controlador JDBC de Oracle a la carpeta de Flyway
  copy: src=./lib/ojdbc6-11.1.0.7.0.jar dest=/opt/flyway/flyway-{{ flyway_version }}/drivers
  sudo: yes

Licencia

BSD

Información del Autor

(c) George Shuklin 2015-2018, rastaman 2015

Acerca del proyecto

Install flyway command line tool from www.flywaydb.org

Instalar
ansible-galaxy install amarao.flyway
Licencia
Unknown
Descargas
29.7k
Propietario