12

Is there any C# API for Flyway?

I want to include Flyway with a .Net application and not force none Java developers to install Flyway or Maven or Java. Rather have them use tools they are familiar with like Nuget for example.

Misha Zaslavsky
  • 8,414
  • 11
  • 70
  • 116
Melissa
  • 812
  • 2
  • 10
  • 24

5 Answers5

25

There is a .NET equivalent now ! It's called Evolve. I wrote it because after discovering Flyway on a Java project, I could not do without it in .NET anymore.

Evolve has a GitHub repository and a NuGet package available for .NET and .NET Core projects. It supports MSBuild and dotnet build command.

Hope you'll like it !

  • 1
    Sounds interesting, however ideally I am looking to use Flyway's C# so all projects can be "standardized" of sorts. Why did you start a new thing, can you not join Flyway's open source and add to that project? – Melissa Jun 04 '17 at 18:05
  • Evolve is great @Philippe - we have been using Flyway for many years and now use Evolve alongside for our dotnet code. I've even been using it happily on AWS ECS containers running Alpine Linux - very impressed with that. – Oly Dungey Aug 21 '19 at 15:01
2

A matured database migration tool for .Net is Fluent Migrator https://github.com/fluentmigrator/fluentmigrator

Pandiarajan
  • 410
  • 5
  • 14
  • Thanks, but I want to use the same DB migration tool cross platform. I am specifically looking for .Net integrations with Flyway and not other DB migration tools. – Melissa Nov 13 '18 at 03:23
1

There is a .NET wrapper around Flyway called Flyway.NET.

michal.jakubeczy
  • 8,221
  • 1
  • 59
  • 63
0

No there is not. You can download the CLI tool and then use .NET to call it as a potential solution for what you have in mind. Not sure how you would go about packaging that with nuget, but you should be able to write something to solve your specific problem

zerohero
  • 593
  • 4
  • 15
  • I was hoping that someone could help me with the packaging with nuget part of this. – Melissa Jan 22 '17 at 04:49
  • 1
    ok? so you already have a C# API for Flyway, but you just want to know how to package and publish it for nuget? That changes your original question quite dramatically, don't you agree? – zerohero Jan 23 '17 at 08:27
  • No - I don't have a C# API but the CLI could be used. No, I don't want the original question changed. – Melissa Jan 23 '17 at 18:42
  • Okay well, here is a tutorial for creating nuget packages then: https://blogs.msdn.microsoft.com/mvpawardprogram/2016/06/28/creating-nuget-packages/ – zerohero Jan 24 '17 at 07:00
0

In a very large project we where using Roundhouse for db versioning. It's an alternative to flyway that IMO deserves to be considered as it has a certain level of maturity.

I've seen that they have recently introduced support for .Net core but I haven't tested it.

guillem
  • 2,768
  • 2
  • 30
  • 44
  • Thanks, but I want to use the same DB migration tool cross platform. I am specifically looking for .Net integrations with Flyway and not other DB migration tools. – Melissa Nov 13 '18 at 03:24