lib/mix/south.ex
defmodule Mix.Tasks.Xmeta.South do
use Mix.Task
def run(arg \\ []) do
Mix.shell.cmd("mix run -e Xmeta.South.Migrations.run", arg)
end
end
defmodule Mix.Tasks.Xmeta.Migrate do
use Mix.Task
@impl true
def run(args, migrator \\ &Ecto.Migrator.run/4) do
check = Xmeta.South.Migrations.can_check?()
res = Mix.Tasks.Ecto.Migrate.run(args, migrator)
if res == :ok and check == false do
Xmeta.South.Migrations.init_migrations_file()
end
end
end