-
Notifications
You must be signed in to change notification settings - Fork 0
/
cleanAndVersion.yaml
58 lines (50 loc) · 1.66 KB
/
cleanAndVersion.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Author: Nuno Aguiar
help:
text : GitHub step to delete extra build files and capture the version.
expects:
- name : path
desc : The build output
mandatory: true
todo:
- Clean up and get version
ojob:
opacks :
- openaf: 20230704
catch : printErrnl("[" + job.name + "] "); if (isDef(exception.javaException)) exception.javaException.printStackTrace(); else printErr(exception)
logToConsole: true # to change when finished
jobs:
# -------------------------------
- name : Clean up and get version
check:
in:
path: isString
exec : |
var remove = [], version = "", mem = {}
io.listFiles(args.path).files.forEach(f => {
// Determining version
try {
if (f.filename.indexOf("jemalloc") > 0) {
var _v = $sh("strings " + f.filepath + " | grep 'JEMALLOC_VERSION \"'").get(0).stdout
version = _v.match(/((\d\.?)+)/)[0]
} else {
var _version = f.filename.match(/((\d\.?)+)/)[0]
if (_version.length > version.length) version = _version
}
} catch(e) {
}
var ar = f.filepath.match(/^(.+)\.so(.*)$/)
if (isUnDef(mem[ar[1]])) mem[ar[1]] = ar[0]
if (mem[ar[1]].length < ar[0].length) {
remove.push(mem[ar[1]])
mem[ar[1]] = ar[0]
} else {
if (mem[ar[1]] != ar[0]) remove.push(ar[0])
}
})
remove.forEach(f => {
tlog("Deleting {{this}}...", f)
io.rm(f)
})
log("Adding version=" + version + " in '" + getEnv("GITHUB_ENV") + "'...")
io.writeFileString(getEnv("GITHUB_ENV"), "version=" + version + "\n", __, true)
//print("::set-output name=version::version=" + version)