問題タブ [flyway]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 機能ブランチを操作するときに Flyway を使用する方法
最近、私たちが取り組んでいる各ストーリーにフィーチャー ブランチを使用するようになりました。これらは可能な限り独立しており、プロジェクト マネージャーがリリースを構成するストーリーを決定します。これは、ストーリーが最初に制作される正確な順序がわからないことを意味します。
Flyway でこれを処理する標準的な方法はありますか? 本番データベースへの変更がどのように線形になるかについて説明している FAQ を読みましたが、これは正しいです。ただし、チーム メンバーが機能ブランチで作業しているときに、移行に与えるバージョン番号をどのように決定するかはわかりません。また、リリース前に統合ブランチとマスターにマージするときに、移行ファイルの名前を手動で変更する必要があります。
oracle - flyway: sql*plus 特定のコマンドの実行
Flyway でSQL スクリプトを実行しようとすると、次の行にjava.sql.SQLSyntaxErrorException: ORA-00900が発生します: @@some_dir/run.sql。
もちろん、これは特定の sql*plus コマンドです。このコマンドを Flyway で実行する方法はありますか? そうでない場合、Ant でスクリプトを実行する方法と、 Flywayなしでバージョン管理を行う方法を教えてください。
maven-plugin - Flyway : SQL 初期化ファイルの作成に関心がありますか?
間違っている場合は訂正してください。ただし、Flyway が既存のデータベースを統合するための最初のステップは、DDL を含む SQL 初期化ファイルを作成し、本番環境から抽出した参照データを作成することのようです (こちらを参照)。しかし、Flyway の Maven プラグインでも Flyway の API でも使用されていないように見えるため、このようなファイルの目的がわかりません。そのため、Flyway が提供するツールを使用してデータベースを初期状態に復元する機会はありません。init ファイルを作成することに興味がある人はいますか?
maven - Maven FlywayプラグインがHsqldbデータベースの移行に失敗するのはなぜですか?
flywayとmavenプラグインを使用してHSQLDBデータベースを初期化および移行するのに問題があります。
pom.xmlに次のXMLブロックがあります。
このコマンドを実行すると:
このエラーメッセージが表示されます:
これはサポートされているプロセスではありませんか?hsqldbが参照されるスキーマを自動的に作成すると思ったので、混乱しました。
flyway - 戦争内からの移行中にFlywaySQLディレクトリが見つかりません
環境
- Jboss 6
- フライウェイ1.5
- スプリングコア2.5.6
戦争の構造
問題
JBossの起動時にロードされたMBean内でFlyway移行を実行しようとすると、次のスタックトレースが取得されます。
java.io.FileNotFoundException:URL [vfs:/C:/jboss-6.1.0.Final/server/ei/deploy/ei-web-1.0.1-SNAPSHOT.war/WEB-INF/classes/db/migrations/ ei /]はファイルシステムに存在しないため、絶対ファイルパスに解決できません:vfs:/C:/jboss-6.1.0.Final/server/ei/deploy/ei-web-1.0.1-SNAPSHOT。 war / WEB-INF / classes / db / migrations / ei /
手がかり
- フライウェイのベースディレクトリはdb/migrations/eiです
- フライウェイの初期バージョンは5.7.0です。
- スタンドアロンで起動した場合、移行は問題ありません
- 私見ですが、問題はクラスパスディレクトリのスキャンに失敗した結果です。
com.googlecode.flyway.core.migration.sql.SqlMigrationResolver(L.99)を参照してください
私の場合、resourcesは空の配列を返します。
maven-plugin - ファイルから読み取った CLOB / BLOB 値を挿入する - maven - mybatis
これは私の問題です。データベース (CLOB) でドキュメント テンプレートをホストするこのプロジェクトがあり、変更が加えられると、すべての環境へのすべての変更を昇格する必要があります。
テンプレート ファイルに変更が加えられると、mybatis 移行ツール、flyway などを使用して登録済みのすべてのデータベースに昇格され、継続的な統合ツールと統合できるようにするソリューションを探しています。
mybatis でも flyway (maven プラグイン) でも、このようなことが可能であるというドキュメントは見たことがありません。
私はそれが次のようなものだと考えています:
事前にコメントをありがとう
spring - SpringアプリケーションでFlyway1.6を使用して移行できません
Rooで生成されたSpringMVCアプリケーションをHibernateを使用してPostgreSQLに接続しています。Flyway1.6をBeanとしてSpringアプリケーションコンテキストに統合しようとしています。「何かが妨げている」移行の実行が妨げられ、Hibernateメタデータの検証が原因でコンテキストの初期化でエラーが発生します。Flyway 1.6 Mavenプラグイン(clean、init、migrate)を使用して移行を実行するのに問題はありません。
Flyway 1.5(以前のバージョン)の統合は問題なく機能します。
Flyway 1.6の統合移行を機能させるにはどうすればよいですか?どのような追加の構成を提供する必要がありますか?
環境:Ubuntu 11.10、Springsource Tool Suite 2.9.1(Eclipse 3.7.2)、OpenJDK 6b23、Tomcat 7.0.23、PostgreSQL 8.4.9 / 9.1、Spring 3.0 / 3.1、Hibernate 3.6.4.Final、PostgreSQL Native Driver 8.4 JDBC3 /4ビルド702。
pom.xml:
database.properties:
persistence.xml:
Springコンテキスト構成:
ログ:
google-app-engine - flywayを使用してGoogleCloudSQLに移行するには、どのjarファイルをコピーする必要がありますか?
flywayコマンドラインツールを使用して、データベース(MySQL)ダンプファイルGoogleCloudSQLを移行しようとしています。google_sql.jarをflyway-commandline-1.6/jars /にコピーし、flyway-commandline-1.6 / conf/flyway.propertiesで次のプロパティを設定しました。
ただし、これは機能せず、次のエラーが発生します。
誰かがフライウェイがGoogleCloudSQLで動作するために必要なjarファイルを特定するのを手伝ってもらえますか?
flyway - すべてのJDBCドライバーなしでFlywayを構築する方法
Weblogicサーバーで実行されているFlyWayに問題が見つかりました。
ソースリポジトリのクローンを作成し、単体テストと修正を追加しました。しかし、Mavenビルドに必要なすべてのJDBCドライバーがパブリックリポジトリで利用できないため、Weblogicで修正をテストできません。
これらの依存関係を回避する簡単な方法はありますか?
oracle - flyway: SQL ステートメントが失敗した場合でも移行を強制する
仕事中のアプリケーション用に flyway プロジェクトを作成しました。結局のところ、開発者の 1 人は、フライウェイのセットアップをテストする準備が整う前に、すでに TEST で SQL ステートメントの一部を実行していました。
私のSQLスクリプトにはいくつかのステートメントがあります:
ステートメント 2 で削除する必要がある列は、TEST インスタンスで既に手動で削除されています。私たちの PROD インスタンスにはドロップされていません。手動ではなく、移行によってドロップしたいと考えています。
明らかに、最初に TEST で試してみずに PROD で移行を実行しているわけではありません (これらの 3 つのクエリよりも多くのものがあります)。
しかし、私が問題を抱えている移行は最初の行であるため、続行できません。
強制的に通過させる方法はありますか?列が既に削除されていることは知っています。もう一度作成してから、移行で削除することができます。しかし、失敗する可能性のある他のクエリがある可能性があります (既に存在する可能性のあるシード データの作成など)。そして、私たちの展開を止めたくありません。
PROD から DB を再度複製し、新しい移行セットを準備している間、開発チームに開発を停止させる以外のアイデアはありますか?