Packages
mandrag
0.1.0
1.0.0-pre.0
0.8.1
0.8.0
0.7.3
0.7.2
0.7.1
0.7.0
0.6.10
0.6.9
0.6.8
0.6.7
0.6.6
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.1
0.5.0
0.4.1
0.4.0
0.3.3
0.3.2
0.3.1
0.3.0
0.2.4
0.2.1
retired
0.2.0
retired
0.1.1
0.1.0
0.0.21
0.0.20
0.0.19
0.0.18
0.0.17
0.0.16
0.0.15
0.0.14
0.0.13
0.0.12
0.0.11
0.0.10
0.0.9
0.0.7
0.0.6
0.0.5
0.0.4
0.0.3
0.0.2
0.0.1
Build and Deploy Elixir releases to Kubernetes via Helm
Current section
Files
Jump to
Current section
Files
lib/mix/tasks/mandrag.upgrade.hot.ex
defmodule Mix.Tasks.Mandrag.Upgrade.Hot do
use Mix.Task
import Mandrag
def run(_) do
message "Performing hot upgrade. Updating #{name} to #{version}."
upgrade(location)
run_command("upgrade '#{version}'")
end
defp upgrade(:local) do
ssh "mkdir #{name}/releases/#{version}"
scp "rel/#{name}/releases/#{version}/#{name}.tar.gz", "#{name}/releases/#{version}/#{name}.tar.gz"
end
defp upgrade(:remote) do
ssh "mkdir #{name}/run/releases/#{version}"
ssh "cp #{name}/rel/#{name}/releases/#{version}/#{name}.tar.gz #{name}/run/releases/#{version}/"
scp "config/prod.secret.exs", "#{name}/config/prod.secret.exs"
end
end