summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@dashbit.co>2021-12-30 15:02:16 +0100
committerJosé Valim <jose.valim@dashbit.co>2021-12-30 15:02:16 +0100
commitea632b6c56fb376f8f275adf37ab20a2fbc38283 (patch)
tree69f0ce4bbd4d7f8cd37fa82ac58dc08c67beb9f0
parentbe1107884972ac433d7b8ddf943d99b7143725a4 (diff)
downloadelixir-ea632b6c56fb376f8f275adf37ab20a2fbc38283.tar.gz
Add mail.exs script
-rw-r--r--.github/workflows/mail.exs21
-rw-r--r--RELEASE.md8
2 files changed, 26 insertions, 3 deletions
diff --git a/.github/workflows/mail.exs b/.github/workflows/mail.exs
new file mode 100644
index 000000000..b78d447c7
--- /dev/null
+++ b/.github/workflows/mail.exs
@@ -0,0 +1,21 @@
+# #!/usr/bin/env elixir
+[tag] = System.argv()
+Mix.install([:req, :jason])
+
+%{status: 200, body: body} =
+ Req.get!("https://api.github.com/repos/elixir-lang/elixir/releases/tags/#{tag}")
+
+names_and_checksums =
+ for asset <- body["assets"],
+ name = asset["name"],
+ name =~ ~r/.sha\d+sum$/,
+ do: {name, Req.get!(asset["browser_download_url"]).body}
+
+IO.puts("https://github.com/elixir-lang/elixir/releases/tag/#{tag}")
+IO.puts("")
+
+for {name, checksum} <- Enum.sort(names_and_checksums) do
+ root = Path.rootname(name)
+ "." <> type = Path.extname(name)
+ IO.puts(" * #{root} - #{type} - #{checksum}")
+end
diff --git a/RELEASE.md b/RELEASE.md
index 653fc9aa0..184881e46 100644
--- a/RELEASE.md
+++ b/RELEASE.md
@@ -12,11 +12,13 @@
5. Commit changes above with title "Release vVERSION", generate a new tag, and push it
-6. Wait until GitHub Actions publish artifacts to the given tag and CI is green
+6. Wait until GitHub Actions publish artifacts to the given tag and the CI is green
-7. Add the release to `elixir.csv` with the minimum supported OTP version (all releases), update `erlang.csv` to the latest supported OTP version, and `_data/elixir-versions.yml` (except for RCs) files in `elixir-lang/elixir-lang.github.com`
+7. Copy the relevant bits from /CHANGELOG.md to the GitHub release and publish it
-8. Send an e-mail to elixir-lang-ann@googlegroups.com with title "Elixir vVERSION released". Use `.github/workflows/mail.exs` to generate the body of the email
+8. Add the release to `elixir.csv` with the minimum supported OTP version (all releases), update `erlang.csv` to the latest supported OTP version, and `_data/elixir-versions.yml` (except for RCs) files in `elixir-lang/elixir-lang.github.com`
+
+9. Send an e-mail to elixir-lang-ann@googlegroups.com with title "Elixir vVERSION released". Use `.github/workflows/mail.exs TAG` to generate the body of the email
## Creating a new vMAJOR.MINOR branch