Current section

Files

Jump to
project lib mix tasks project gen gigalixir_libcluster.ex
Raw

lib/mix/tasks/project/gen/gigalixir_libcluster.ex

defmodule Mix.Tasks.Project.Gen.GigalixirLibcluster do
@shortdoc "Generates Gigalixir Libcluster configuration"
@moduledoc "Generates Gigalixir Libcluster configuration."
use Igniter.Mix.Task
@impl Igniter.Mix.Task
def igniter(igniter) do
edit_config_prod(igniter)
end
defp edit_config_prod(igniter) do
opts =
{:code,
quote(
do: [
gigalixir: [
strategy: Cluster.Strategy.Kubernetes,
config: [
kubernetes_selector: System.get_env("LIBCLUSTER_KUBERNETES_SELECTOR"),
kubernetes_node_basename: System.get_env("LIBCLUSTER_KUBERNETES_NODE_BASENAME")
]
]
]
)}
Igniter.Project.Config.configure(igniter, "prod.exs", :libcluster, [:topologies], opts)
end
end