- defp get_option(options, opt, prompt, def \\ nil, defname \\ nil) do
- Keyword.get(options, opt) ||
- case Mix.shell().prompt("#{prompt} [#{defname || def}]") do
- "\n" ->
- case def do
- nil -> get_option(options, opt, prompt, def)
- def -> def
- end
+ static_dir = Pleroma.Config.get([:instance, :static_dir], "instance/static/")
+
+ unless File.exists?(static_dir) do
+ File.mkdir_p!(static_dir)
+ end
+
+ robots_txt_path = Path.join(static_dir, "robots.txt")
+
+ if File.exists?(robots_txt_path) do
+ File.cp!(robots_txt_path, "#{robots_txt_path}.bak")
+ Common.shell_info("Backing up existing robots.txt to #{robots_txt_path}.bak")
+ end