Current section
Files
Jump to
Current section
Files
lib/mix/tasks/fernet_release.ex
defmodule Mix.Tasks.Fernet.Release do
@moduledoc """
Release the latest version of FernetEx
mix fernet.release
"""
use Mix.Task
alias Mix.Project
@shortdoc "Update readme, tag, and release to hex"
def run(_args) do
version = Keyword.get(Project.config(), :version)
if Mix.shell().yes?("Release fernetex #{version}") do
Mix.shell().info("Releasing #{version}")
readme = EEx.eval_file("README.md.eex", version: version)
:ok = File.write!("README.md", readme)
0 = Mix.shell().cmd("git commit -am 'Release #{version}'")
0 = Mix.shell().cmd("git tag #{version}")
0 = Mix.shell().cmd("git push --all")
0 = Mix.shell().cmd("git push --tags")
Mix.Task.run("hex.publish")
end
end
end