30 lines
810 B
Elixir
30 lines
810 B
Elixir
defmodule Mix.Tasks.Esbuild.UpdateVersion do
|
|
@shortdoc "Update the configured esbuild versino to latest."
|
|
@moduledoc """
|
|
Update the configured esbuild versino to latest.
|
|
"""
|
|
|
|
use Mix.Task
|
|
|
|
alias Mix.Tasks.Esbuild.Release
|
|
|
|
@impl Mix.Task
|
|
def run(_args) do
|
|
current_version = Release.fetch_current_version()
|
|
latest_version = Release.fetch_latest_version!()
|
|
|
|
if current_version === latest_version do
|
|
Mix.Shell.IO.info("esbuild configuration is up to date (#{current_version})")
|
|
else
|
|
Mix.Shell.IO.info(
|
|
"Updating esbuild configuration from #{current_version} to #{latest_version}"
|
|
)
|
|
|
|
config_file =
|
|
Path.expand("config/config.exs", File.cwd!())
|
|
|
|
Release.update_config_file!(config_file, current_version, latest_version)
|
|
end
|
|
end
|
|
end
|