summaryrefslogtreecommitdiff
path: root/upload.sc
diff options
context:
space:
mode:
authorLi Haoyi <haoyi.sg@gmail.com>2018-02-04 02:41:00 -0800
committerLi Haoyi <haoyi.sg@gmail.com>2018-02-04 02:41:00 -0800
commita5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9 (patch)
tree6dfa056e28e7bc4b0b637ec28df6eb16eced32cd /upload.sc
parentf7a46fe9fb756803e3fdd81f427a7fd42001e71e (diff)
downloadmill-a5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9.tar.gz
mill-a5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9.tar.bz2
mill-a5fb5d0ea8a0d7c1322ec95e7452c1a6160166a9.zip
wip auto publishing...
Diffstat (limited to 'upload.sc')
-rw-r--r--upload.sc52
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