Add mix alias to easily add copyright headers to files
This commit is contained in:
parent
cf367fdbd5
commit
3607dfefca
19
mix.exs
19
mix.exs
|
@ -229,7 +229,8 @@ defp aliases do
|
|||
"ecto.reset": ["ecto.drop", "ecto.setup"],
|
||||
test: ["ecto.create --quiet", "ecto.migrate", "test"],
|
||||
docs: ["pleroma.docs", "docs"],
|
||||
analyze: ["credo --strict --only=warnings,todo,fixme,consistency,readability"]
|
||||
analyze: ["credo --strict --only=warnings,todo,fixme,consistency,readability"],
|
||||
copyright: &add_copyright/1
|
||||
]
|
||||
end
|
||||
|
||||
|
@ -332,4 +333,20 @@ defp version(version) do
|
|||
|> Enum.filter(fn string -> string && string != "" end)
|
||||
|> Enum.join()
|
||||
end
|
||||
|
||||
defp add_copyright(_) do
|
||||
line1 = "# Pleroma: A lightweight social networking server\\n"
|
||||
|
||||
line2 =
|
||||
"# Copyright © 2017-#{NaiveDateTime.utc_now().year} Pleroma Authors <https://pleroma.social/>\\n"
|
||||
|
||||
line3 = "# SPDX-License-Identifier: AGPL-3.0-only\\n\\n"
|
||||
template = line1 <> line2 <> line3
|
||||
|
||||
find = "find lib test priv -type f \\( -name '*.ex' -or -name '*.exs' \\) -exec "
|
||||
grep = "grep -L '# Copyright' {} \\; |"
|
||||
xargs = "xargs -n1 sed -i '' '1s;^;#{template};'"
|
||||
|
||||
:os.cmd(String.to_charlist("#{find}#{grep}#{xargs}"))
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue