diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2018-02-04 02:41:00 -0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2018-02-04 02:41:00 -0800 |
commit | a5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9 (patch) | |
tree | 6dfa056e28e7bc4b0b637ec28df6eb16eced32cd /upload.sc | |
parent | f7a46fe9fb756803e3fdd81f427a7fd42001e71e (diff) | |
download | mill-a5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9.tar.gz mill-a5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9.tar.bz2 mill-a5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9.zip |
wip auto publishing...
Diffstat (limited to 'upload.sc')
-rw-r--r-- | upload.sc | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/upload.sc b/upload.sc new file mode 100644 index 00000000..6013c8d9 --- /dev/null +++ b/upload.sc @@ -0,0 +1,52 @@ +#!/usr/bin/env amm +import ammonite.ops._ +import scalaj.http._ + +@main +def shorten(longUrl: String) = { + println("shorten longUrl " + longUrl) + val shortUrl = Http("https://git.io") + .postForm(Seq("url" -> longUrl)) + .asString + .headers("Location") + .head + println("shorten shortUrl " + shortUrl) + shortUrl +} +@main +def apply(uploadedFile: Path, + tagName: String, + uploadName: String, + authKey: String): String = { + val body = Http("https://api.github.com/repos/lihaoyi/mill/releases/tags/" + tagName) + .header("Authorization", "token " + authKey) + .asString.body + + val parsed = upickle.json.read(body) + + println(body) + + val snapshotReleaseId = parsed("id").num.toInt + + + val uploadUrl = + s"https://uploads.github.com/repos/lihaoyi/mill/releases/" + + s"$snapshotReleaseId/assets?name=$uploadName" + + val res = Http(uploadUrl) + .header("Content-Type", "application/octet-stream") + .header("Authorization", "token " + authKey) + .timeout(connTimeoutMs = 5000, readTimeoutMs = 60000) + .postData(read.bytes! uploadedFile) + .asString + + println(res.body) + val longUrl = upickle.json.read(res.body)("browser_download_url").str.toString + + println("Long Url " + longUrl) + + val shortUrl = shorten(longUrl) + + println("Short Url " + shortUrl) + shortUrl +}
\ No newline at end of file |