-
Notifications
You must be signed in to change notification settings - Fork 0
/
deploy.gradle
70 lines (59 loc) · 2.36 KB
/
deploy.gradle
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
59
60
61
62
63
64
65
66
67
68
69
70
ssh.settings {
knownHosts = allowAnyHosts
}
task testConnection << {
ssh.run {
session(remotes.ev3dev) {
println "ls "
execute "ls "
}
}
}
task deploy << {
ssh.run {
session(remotes.ev3dev) {
put from: "./build/libs/" + "${rootProject.name}" + "-all-" + version + ".jar", into: "/home/robot/"
}
}
}
deploy.dependsOn clean, fatJar
task remoteRun << {
ssh.run {
session(remotes.ev3dev) {
println "java -Djava.library.path=/usr/lib/jni/ -server -jar /home/robot/" + "${rootProject.name}" + "-all-" + version + ".jar "
execute "java -Djava.library.path=/usr/lib/jni/ -server -jar /home/robot/" + "${rootProject.name}" + "-all-" + version + ".jar "
}
}
}
task remoteSudoRun << {
ssh.run {
session(remotes.ev3dev) {
println "echo -e \"maker\" | sudo -S java -Djava.library.path=/usr/lib/jni/ -server -jar /home/robot/" + "${rootProject.name}" + "-" + version + "-all" + ".jar"
execute "echo -e \"maker\" | sudo -S java -Djava.library.path=/usr/lib/jni/ -server -jar /home/robot/" + "${rootProject.name}" + "-" + version + "-all" + ".jar"
}
}
}
task remoteProfilingRun << {
ssh.run {
session(remotes.ev3dev) {
println "java -Djava.library.path=/usr/lib/jni/ -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=7091 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -server -jar /home/robot/" + "${rootProject.name}" + "-all-" + version + ".jar "
execute "java -Djava.library.path=/usr/lib/jni/ -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=7091 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -server -jar /home/robot/" + "${rootProject.name}" + "-all-" + version + ".jar "
}
}
}
task deployAndRun << {
}
deployAndRun.dependsOn deploy, remoteRun
task deployAndProfilingRun << {
}
deployAndProfilingRun.dependsOn deploy, remoteProfilingRun
apply from: 'config.gradle'
//Organize tasks in a Group
def groupName = "ev3dev-lang-java"
testConnection.group = groupName
deploy.group = groupName
remoteRun.group = groupName
remoteSudoRun.group = groupName
remoteProfilingRun.group = groupName
deployAndRun.group = groupName
deployAndProfilingRun.group = groupName