lrk.flyway
Ansibleロール: Flywayコマンドラインツール (lrk.flyway)
このAnsibleロールは、Flywayコマンドラインツールをインストールします。
サポートされるOS
このロールは以下のOSでテストされています:
- 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設定については、https://flywaydb.org/documentation/configfilesを参照
# データベースへの接続に使用するJDBC URL
flyway_url: null
# JDBCドライバの完全修飾クラス名(デフォルトでflyway.urlに基づいて自動検出されます)
flyway_driver: null
# データベースに接続するために使用するユーザー。指定しない場合、Flywayが入力を求めます。
flyway_user: null
# データベースに接続するために使用するパスワード。指定しない場合、Flywayが入力を求めます。
flyway_password: null
# データベースへの接続を試みる最大回数。各試行が失敗した後、Flywayは1秒待って再試行します。
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
# マイグレーションをスキャンするための場所のカンマ区切りリスト。(デフォルト: filesystem:<<INSTALL-DIR>>/sql)
flyway_locations: []
# カスタムMigrationResolverの完全修飾クラス名のカンマ区切りリスト。
flyway_resolvers: []
# trueに設定すると、デフォルトの組み込みリゾルバ(jdbc、spring-jdbc、sql)がスキップされ、カスタムリゾルバのみが使用されます。(デフォルト: false)
flyway_skip_default_resolvers: false
# SQLマイグレーションのエンコーディング(デフォルト: UTF-8)
flyway_encoding: "UTF-8"
# プレースホルダーを置き換えるべきか。(デフォルト: true)
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
# migrateを実行する際に、自動的にvalidateを呼び出すべきか。(デフォルト: true)
flyway_validate_on_migrate: true
# validateエラーが発生したときに自動的にcleanを呼び出すべきか。(デフォルト: false)
flyway_clean_on_validation_error: false
# すでに存在するスキーマに対してbaselineを実行する際にタグを付けるバージョン。(デフォルト: 1)
flyway_baseline_version: 1
# baselineを実行する際にタグを付ける説明。(デフォルト: << Flyway Baseline >>)
flyway_baseline_description: "Flyway Baseline"
# マイグレーションが適用される順番を混ぜられるか。(デフォルト: false)
flyway_out_of_order: false
# マイグレーション実行時にクエリの結果を含むテーブルを出力するか。(デフォルト: true)
flyway_output_query_results: true
# Flywayライセンスキー(FL01...)。まだFlyway ProまたはEnterprise Editionの顧客ではありませんか?
flyway_license_key: null
依存関係
なし
例のプレイブック
- hosts: servers
roles:
- lrk.flyway
ライセンス
Apacheライセンスバージョン2.0
参考文献
著者情報
このロールはLrkによって作成されました。