@@ -30,6 +30,10 @@ class GradleRIO implements Plugin<Project> {
3030 classname : ' org.apache.tools.ant.taskdefs.optional.ssh.Scp' ,
3131 classpath : sshAntTask. asPath)
3232
33+ project. ant. taskdef(name : ' sshexec' ,
34+ classname : ' org.apache.tools.ant.taskdefs.optional.ssh.SSHExec' ,
35+ classpath : sshAntTask. asPath)
36+
3337 def wpiTask = project. task(' wpi' ) << {
3438 println " Downloading WPILib..."
3539 String pluginDest = System . getProperty(" user.home" ) + " /wpilib/java/plugin/current/"
@@ -50,33 +54,47 @@ class GradleRIO implements Plugin<Project> {
5054 }
5155
5256 def deployTask = project. task(' deploy' ) << {
53- String roboRIO = rioHost(project)
54- println " Attempting to send new code to RoboRIO..."
55-
56- ant. scp(file : " build/libs/${ project.name} " ,
57- todir :" lvuser@${ roboRIO} :FRCUserProgram.jar" ,
58- password :" " ,
59- port :22 ,
60- trust :true )
61-
62- println " Deploy Successful!"
57+ deploy(rioHost(project))
6358 }
6459 deployTask. dependsOn ' build'
6560
6661 def deployIP = project. task(' deployIP' ) << {
67- println " Attempting to send new code to RoboRIO using absolute IP... "
68- String ip = rioIP(project)
69- println " ${ project.name } "
62+ deploy(rioIP(project))
63+ }
64+ deployIP . dependsOn ' build '
7065
71- ant. scp(file : " build/libs/${ project.name} .jar" ,
72- todir :" lvuser@${ ip} :FRCUserProgram.jar" ,
73- password :" " ,
74- port :22 ,
75- trust :true )
66+ def cleanRemote = project. task(' cleanRIO' ) << {
67+ clean(rioHost(project))
68+ }
7669
77- println " Deploy Successful!"
70+ def cleanRemoteIP = project. task(' cleanIP' ) << {
71+ clean(rioIP(project))
7872 }
79- deployIP. dependsOn ' build'
73+ }
74+
75+ void deploy (String host ) {
76+ println " Attempting to send new code to RoboRIO..."
77+ println " ${ project.name} "
78+
79+ ant. scp(file : " build/libs/${ project.name} .jar" ,
80+ todir :" lvuser@${ host} :FRCUserProgram.jar" ,
81+ password :" " ,
82+ port :22 ,
83+ trust :true )
84+
85+ println " Deploy Successful!"
86+ }
87+
88+ void clean (String host ) {
89+ println " Attempting to clean RoboRIO code..."
90+ ant. sshexec(host : " ${ host} " ,
91+ username :" lvuser" ,
92+ port :22 ,
93+ trust :true ,
94+ password :" " ,
95+ command :" rm -f FRCUserProgram.jar"
96+ )
97+ println " Clean Successful!"
8098 }
8199
82100 void download (String dest , String from , String name ) {
0 commit comments