mirror of
https://github.com/ash-project/ash.git
synced 2024-09-19 21:13:10 +12:00
chore: require name for ash.codegen
This commit is contained in:
parent
19d18c5fcc
commit
26160e446b
2 changed files with 33 additions and 3 deletions
|
@ -1,9 +1,6 @@
|
||||||
defmodule Ash.Resource.Transformers.CreateJoinRelationship do
|
defmodule Ash.Resource.Transformers.CreateJoinRelationship do
|
||||||
@moduledoc """
|
@moduledoc """
|
||||||
Creates an automatically named `has_many` relationship for each many_to_many.
|
Creates an automatically named `has_many` relationship for each many_to_many.
|
||||||
|
|
||||||
This will likely not be around for long, as our logic around many to many relationships
|
|
||||||
will update soon.
|
|
||||||
"""
|
"""
|
||||||
use Spark.Dsl.Transformer
|
use Spark.Dsl.Transformer
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,39 @@ defmodule Mix.Tasks.Ash.Codegen do
|
||||||
|
|
||||||
@shortdoc "Runs all codegen tasks for any extension on any resource/api in your application."
|
@shortdoc "Runs all codegen tasks for any extension on any resource/api in your application."
|
||||||
def run(argv) do
|
def run(argv) do
|
||||||
|
{name, argv} =
|
||||||
|
case argv do
|
||||||
|
["-" <> _ | _] ->
|
||||||
|
{nil, argv}
|
||||||
|
|
||||||
|
[first | rest] ->
|
||||||
|
{first, rest}
|
||||||
|
|
||||||
|
[] ->
|
||||||
|
{nil, []}
|
||||||
|
end
|
||||||
|
|
||||||
|
{opts, _} =
|
||||||
|
OptionParser.parse!(argv,
|
||||||
|
strict: [
|
||||||
|
name: :string,
|
||||||
|
no_format: :boolean,
|
||||||
|
dry_run: :boolean,
|
||||||
|
check: :boolean,
|
||||||
|
drop_columns: :boolean
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
if !opts[:name] && !opts[:dry_run] && !opts[:check] do
|
||||||
|
raise ArgumentError, """
|
||||||
|
Name must be provided when running `ash.codegen`, unless `--dry-run` or `--check` is also provided.
|
||||||
|
|
||||||
|
Please provide a name. for example:
|
||||||
|
|
||||||
|
mix ash.codegen add_feature_for_reticulating_splines #{Enum.join(argv, " ")}
|
||||||
|
"""
|
||||||
|
end
|
||||||
|
|
||||||
argv
|
argv
|
||||||
|> Ash.Mix.Tasks.Helpers.extensions!()
|
|> Ash.Mix.Tasks.Helpers.extensions!()
|
||||||
|> Enum.map(fn extension ->
|
|> Enum.map(fn extension ->
|
||||||
|
|
Loading…
Reference in a new issue