lrk.flyway

Ansible角色:Flyway命令行工具(lrk.flyway

构建状态
银河
Ansible
Ansible
Ansible

这是一个Ansible角色,用于安装Flyway命令行工具。

支持的操作系统

此角色已在以下操作系统上测试:

  • EL - 7
  • Ubuntu - Bionic / Xenial
  • Debian - Buster / Stretch / Jessie

要求

此角色没有任何特定要求,但Flyway需要Java运行。

角色变量

可用变量及其默认值列在下面(请参见defaults/main.yml

---

  # Flyway版本
  flyway_version: 6.0.1

  # Flyway版本
  # 如果版本在5.2.0之前,此值将被忽略
  flyway_edition: community

  # Flyway根安装路径
  flyway_install_root: /opt/flyway

  # 下载Flyway的仓库(可选)
  # 默认: https://repo1.maven.org/maven2
  flyway_repo_url: None

  # 仓库用户名
  # 默认: None
  flyway_repo_username: None

  # 仓库密码
  # 默认: None
  flyway_repo_password: None

  # 是否删除默认驱动程序?
  flyway_remove_default_drivers: false

  # 配置通过maven下载的额外驱动程序
  # 默认: 空
  flyway_additional_mvn_drivers: []

  # Flyway配置

  # 用于连接数据库的JDBC URL
  flyway_url: null

  # JDBC驱动程序的完全限定类名(默认根据flyway.url自动检测)
  flyway_driver: null

  # 用于连接数据库的用户。如果未指定,Flyway会提示输入。
  flyway_user: null

  # 用于连接数据库的密码。如果未指定,Flyway会提示输入。
  flyway_password: null

  # 连接数据库时重试的最大次数
  flyway_connect_retries: 0

  # 初始化新数据库连接后立即运行的SQL语句
  flyway_init_sql: null

  # 由Flyway管理的架构的逗号分隔列表
  flyway_schemas: []

  # Flyway的架构历史表的名称(默认:flyway_schema_history)
  flyway_table: 'flyway_schema_history'

  # 创建Flyway使用的架构历史表的表空间
  flyway_tablespace: null

  # 递归扫描迁移的目录的逗号分隔列表
  flyway_locations: []

  # 用于解析迁移的自定义MigrationResolver的逗号分隔列表
  flyway_resolvers: []

  # 是否跳过默认内建解析器,仅使用自定义解析器
  flyway_skip_default_resolvers: false

  # JDBC驱动程序和基于Java的迁移的目录列表
  flyway_jar_dirs: []

  # 版本化SQL迁移的文件名前缀
  flyway_sql_migration_prefix: "V"

  # 撤消SQL迁移的文件名前缀
  flyway_undo_sql_migration_prefix: "U"

  # 可重复SQL迁移的文件名前缀
  flyway_repeatable_sql_migration_prefix: "R"

  # SQL迁移的文件名分隔符
  flyway_sql_migration_separator: "__"

  # SQL迁移的文件名后缀的逗号分隔列表
  flyway_sql_migration_suffixes: []

  # 是否在执行时串流SQL迁移
  flyway_stream: false

  # 是否在执行时批处理SQL语句
  flyway_batch: false

  # SQL迁移的编码(默认:UTF-8)
  flyway_encoding: "UTF-8"

  # 是否替换占位符
  flyway_placeholder_replacement: true

  # 替换SQL迁移中的占位符
  flyway_placeholders_user: null
  flyway_placeholders_my_other_placeholder: null

  # 每个占位符的前缀(默认: ${ )
  flyway_placeholder_prefix: "${"

  # 每个占位符的后缀(默认: } )
  flyway_placeholder_suffix: "}"

  # 目标版本,Flyway应考虑迁移
  flyway_target: null

  # 一旦运行迁移,是否自动调用validate
  flyway_validate_on_migrate: true

  # 发生验证错误时,是否自动调用clean
  flyway_clean_on_validation_error: false

  # 是否禁用clean
  flyway_clean_disabled: false

  # 执行基线时,对现有架构标记的版本(默认: 1)
  flyway_baseline_version: 1

  # 执行基线时标记的现有架构的描述(默认: << Flyway Baseline >>)
  flyway_baseline_description: "Flyway Baseline"

  # 是否在迁移时在没有架构历史表的情况下自动调用基线
  flyway_baseline_on_migrate: false

  # 允许迁移“超出顺序”运行
  flyway_out_of_order: false

  # 是否输出迁移查询结果的表
  flyway_output_query_results: true

  # 自定义代码和逻辑与Flyway生命周期通知结合
  flyway_callbacks: []

  # 忽略缺少的迁移
  flyway_ignore_missing_migrations: false

  # 忽略被忽略的迁移
  flyway_ignore_ignored_migrations: false

  # 忽略待处理的迁移
  flyway_ignore_pending_migrations: false

  # 忽略未来的迁移
  flyway_ignore_future_migrations: true

  # 是否允许在同一迁移中混合事务和非事务语句
  flyway_mixed: false

  # 处理所有待处理迁移是否在同一事务中应用
  flyway_group: false

  # 记录在架构历史表中应用迁移的用户名
  flyway_installed_by: null

  # 内建错误处理器的规则
  flyway_error_overrides: null

  # 进行迁移的干运行SQL语句的输出文件
  flyway_dry_run_output: null

  # 是否激活对Oracle SQL*Plus命令的支持
  flyway_oracle_sqlplus: false

  # 是否在遇到Oracle SQL*Plus语句时发出警告
  flyway_oracle_sqlplus_warn: false

  # 您的Flyway许可证密钥(FL01...)。 
  flyway_license_key: null

依赖

示例剧本

    - hosts: servers
      roles:
         - lrk.flyway

许可证

Apache许可证版本2.0

参考资料

作者信息

此角色由Lrk创建。

关于项目

An Ansible Role that install Flyway Command-line Tool.

安装
ansible-galaxy install lrk.flyway
许可证
apache-2.0
下载
13.9k
拥有者