summary refs log tree commit diff stats
path: root/ci
diff options
context:
space:
mode:
authorflywind <43030857+xflywind@users.noreply.github.com>2022-07-11 23:27:01 +0800
committerGitHub <noreply@github.com>2022-07-11 23:27:01 +0800
commitcf1c14936670ef0c175149f6fba4dffc1cf4ba43 (patch)
treec382725f9a1db388a03e7c36468a59121e72724a /ci
parentfb5fbf1e087563f0288b8ed684c8dcc1891730b0 (diff)
downloadNim-cf1c14936670ef0c175149f6fba4dffc1cf4ba43.tar.gz
tracking the memory usage of orc-booting compiler for each commit (#19941)
* yaml

* pub

* redo

* let's comment

* now action

* newly

* code name

* build

* ready

* remove submodule

* build

* modify name

* fix

* rephrase

* trigger when PR is merged
Diffstat (limited to 'ci')
-rw-r--r--ci/action.nim28
1 files changed, 28 insertions, 0 deletions
diff --git a/ci/action.nim b/ci/action.nim
new file mode 100644
index 000000000..8c3260096
--- /dev/null
+++ b/ci/action.nim
@@ -0,0 +1,28 @@
+import std/[strutils, os, osproc, parseutils, strformat]
+
+
+proc main() =
+  var msg = ""
+  const cmd = "./koch boot --gc:orc -d:release"
+
+  let (output, exitCode) = execCmdEx(cmd)
+
+  doAssert exitCode == 0, output
+
+  var start = rfind(output, "Hint: gc")
+  if start < 0:
+    start = rfind(output, "Hint: mm")
+  doAssert parseUntil(output, msg, "; proj", start) > 0, output
+
+  let (commitHash, _) = execCmdEx("""git log --format="%H" -n 1""")
+
+  let welcomeMessage = fmt"""Thanks for your hard work on this PR!
+The lines below are statistics of the Nim compiler built from {commitHash}
+
+{msg}
+"""
+  createDir "ci/nimcache"
+  writeFile "ci/nimcache/results.txt", welcomeMessage
+
+when isMainModule:
+  main()
\ No newline at end of file