Operand

_

gram: op

> ./lib/deploy.ex

defmodule Deploy do
def drops do
{_, drops} = Cachex.fetch(:ops, "do/drops", fn key ->
IO.puts "Pull droplets."
drops = Doex.Client.list_droplets()
{:commit, drops}
end, expire: 1 * 60 * 60 * 1000)
drops
|> Enum.map(fn %{
"disk_info" => [ %{"size" => %{"amount" => a, "unit" => u} } ],
"created_at" => since,
"memory" => mem,
"name" => name,
"networks" => %{ "v4" => nets },
} ->
%{ name: name, size: "#{a} #{u}", since: since, memory: "#{mem / 1024} gib", nets: (nets
|> Enum.filter(& &1["type"] == "public")
|> Enum.map(& &1["ip_address"])
)}
end)
end
end