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
|
plugins {
id "nebula.ospackage" version "3.2.0"
}
ext {
sshKeyfile = new File(System.getProperty('user.home'), '.ssh/id_rsa')
sshKnownHosts = new File(System.getProperty('user.home'), '.ssh/known_hosts')
sshUser = 'yvesf'
sshHost = 'xapek.org'
sshTargetDir = 'public_html/public/debian/files'
sshRebuildCommand = 'public_html/public/debian/rebuild.sh'
}
allprojects {
configurations { sshAntTask }
repositories {
mavenCentral()
}
dependencies { sshAntTask 'org.apache.ant:ant-jsch:1.9.2' }
ant.taskdef(
name: 'scp',
classname: 'org.apache.tools.ant.taskdefs.optional.ssh.Scp',
classpath: configurations.sshAntTask.asPath)
ant.taskdef(
name: 'ssh',
classname: 'org.apache.tools.ant.taskdefs.optional.ssh.SSHExec',
classpath: configurations.sshAntTask.asPath)
}
task rebuildRepositoryIndex() << {
ant.ssh(host: sshHost,
username: sshUser,
keyfile: file(sshKeyfile),
knownhosts: file(sshKnownHosts),
command: sshRebuildCommand,
verbose: true)
}
subprojects {
group 'org.xapek.yvesf.debian'
version '1.0-SNAPSHOT'
apply plugin: 'nebula.ospackage'
def buildDeb = project.getTasks().getByName('buildDeb')
task upload() << {
ant.scp(file: new File(project.buildDir, "distributions/${buildDeb.assembleArchiveName()}"),
todir: "${sshUser}@${sshHost}:${sshTargetDir}",
keyfile: file(sshKeyfile),
knownhosts: file(sshKnownHosts),
verbose: true)
}
upload.dependsOn(buildDeb)
}
|