Commit 3ea881f03b348df8fd05fbaa9b189911d2cf3464

Authored by Andrii Shvaika
1 parent 676868b4

Stage 1 refactoring

Showing 26 changed files with 87 additions and 62 deletions
... ... @@ -358,7 +358,7 @@
358 358 </resource>
359 359 </resources>
360 360 <filters>
361   - <filter>src/main/filters/unix.properties</filter>
  361 + <filter>${main.dir}/packaging/filters/unix.properties</filter>
362 362 </filters>
363 363 </configuration>
364 364 </execution>
... ... @@ -387,7 +387,7 @@
387 387 </resource>
388 388 </resources>
389 389 <filters>
390   - <filter>src/main/filters/windows.properties</filter>
  390 + <filter>${main.dir}/packaging/filters/windows.properties</filter>
391 391 </filters>
392 392 </configuration>
393 393 </execution>
... ... @@ -401,12 +401,12 @@
401 401 <outputDirectory>${project.build.directory}/control</outputDirectory>
402 402 <resources>
403 403 <resource>
404   - <directory>src/main/scripts/control</directory>
  404 + <directory>${main.dir}/packaging/scripts/control</directory>
405 405 <filtering>true</filtering>
406 406 </resource>
407 407 </resources>
408 408 <filters>
409   - <filter>src/main/filters/unix.properties</filter>
  409 + <filter>${main.dir}/packaging/filters/unix.properties</filter>
410 410 </filters>
411 411 </configuration>
412 412 </execution>
... ... @@ -420,7 +420,7 @@
420 420 <outputDirectory>${project.build.directory}/bin/install</outputDirectory>
421 421 <resources>
422 422 <resource>
423   - <directory>src/main/scripts/install</directory>
  423 + <directory>${main.dir}/packaging/scripts/install</directory>
424 424 <includes>
425 425 <include>**/*.sh</include>
426 426 <include>**/*.xml</include>
... ... @@ -429,7 +429,7 @@
429 429 </resource>
430 430 </resources>
431 431 <filters>
432   - <filter>src/main/filters/unix.properties</filter>
  432 + <filter>${main.dir}/packaging/filters/unix.properties</filter>
433 433 </filters>
434 434 </configuration>
435 435 </execution>
... ... @@ -443,12 +443,12 @@
443 443 <outputDirectory>${pkg.win.dist}</outputDirectory>
444 444 <resources>
445 445 <resource>
446   - <directory>src/main/scripts/windows</directory>
  446 + <directory>${main.dir}/packaging/scripts/windows</directory>
447 447 <filtering>true</filtering>
448 448 </resource>
449 449 </resources>
450 450 <filters>
451   - <filter>src/main/filters/windows.properties</filter>
  451 + <filter>${main.dir}/packaging/filters/windows.properties</filter>
452 452 </filters>
453 453 </configuration>
454 454 </execution>
... ... @@ -462,7 +462,7 @@
462 462 <outputDirectory>${pkg.win.dist}/install</outputDirectory>
463 463 <resources>
464 464 <resource>
465   - <directory>src/main/scripts/install</directory>
  465 + <directory>${main.dir}/packaging/scripts/install</directory>
466 466 <includes>
467 467 <include>logback.xml</include>
468 468 </includes>
... ... @@ -470,7 +470,7 @@
470 470 </resource>
471 471 </resources>
472 472 <filters>
473   - <filter>src/main/filters/windows.properties</filter>
  473 + <filter>${main.dir}/packaging/filters/windows.properties</filter>
474 474 </filters>
475 475 </configuration>
476 476 </execution>
... ... @@ -567,19 +567,26 @@
567 567 <groupId>org.thingsboard</groupId>
568 568 <artifactId>gradle-maven-plugin</artifactId>
569 569 <configuration>
  570 + <gradleProjectDirectory>${main.dir}/packaging</gradleProjectDirectory>
570 571 <tasks>
571 572 <task>build</task>
572 573 <task>buildDeb</task>
573 574 <task>buildRpm</task>
  575 + <task>renameDeb</task>
  576 + <task>renameRpm</task>
574 577 </tasks>
575 578 <args>
576   - <arg>-PprojectBuildDir=${project.build.directory}</arg>
  579 + <arg>-PpackagingDir=${main.dir}/packaging</arg>
  580 + <arg>-PprojectBuildDir=${basedir}/target</arg>
577 581 <arg>-PprojectVersion=${project.version}</arg>
578 582 <arg>-PmainJar=${project.build.directory}/${project.build.finalName}-boot.${project.packaging}
579 583 </arg>
580 584 <arg>-PpkgName=${pkg.name}</arg>
  585 + <arg>-PpkgUser=${pkg.user}</arg>
581 586 <arg>-PpkgInstallFolder=${pkg.installFolder}</arg>
582 587 <arg>-PpkgLogFolder=${pkg.unixLogFolder}</arg>
  588 + <arg>--warning-mode</arg>
  589 + <arg>all</arg>
583 590 </args>
584 591 </configuration>
585 592 <executions>
... ... @@ -597,7 +604,7 @@
597 604 <configuration>
598 605 <finalName>${pkg.name}</finalName>
599 606 <descriptors>
600   - <descriptor>src/main/assembly/windows.xml</descriptor>
  607 + <descriptor>../packaging/assembly/windows.xml</descriptor>
601 608 </descriptors>
602 609 </configuration>
603 610 <executions>
... ...
... ... @@ -1461,7 +1461,7 @@
1461 1461 },
1462 1462 "enabled": {
1463 1463 "version": "1.0.2",
1464   - "resolved": "https://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz",
  1464 + "resolved": "http://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz",
1465 1465 "integrity": "sha1-ll9lE9LC0cX0ZStkouM5ZGf8L5M=",
1466 1466 "requires": {
1467 1467 "env-variable": "0.0.x"
... ... @@ -1740,7 +1740,7 @@
1740 1740 },
1741 1741 "fecha": {
1742 1742 "version": "2.3.3",
1743   - "resolved": "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz",
  1743 + "resolved": "http://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz",
1744 1744 "integrity": "sha512-lUGBnIamTAwk4znq5BcqsDaxSmZ9nDVJaij6NvRt/Tg4R69gERA+otPKbS86ROw9nxVMw2/mp1fnaiWqbs6Sdg=="
1745 1745 },
1746 1746 "file-stream-rotator": {
... ... @@ -1872,14 +1872,12 @@
1872 1872 "balanced-match": {
1873 1873 "version": "1.0.0",
1874 1874 "bundled": true,
1875   - "dev": true,
1876   - "optional": true
  1875 + "dev": true
1877 1876 },
1878 1877 "brace-expansion": {
1879 1878 "version": "1.1.11",
1880 1879 "bundled": true,
1881 1880 "dev": true,
1882   - "optional": true,
1883 1881 "requires": {
1884 1882 "balanced-match": "^1.0.0",
1885 1883 "concat-map": "0.0.1"
... ... @@ -1894,20 +1892,17 @@
1894 1892 "code-point-at": {
1895 1893 "version": "1.1.0",
1896 1894 "bundled": true,
1897   - "dev": true,
1898   - "optional": true
  1895 + "dev": true
1899 1896 },
1900 1897 "concat-map": {
1901 1898 "version": "0.0.1",
1902 1899 "bundled": true,
1903   - "dev": true,
1904   - "optional": true
  1900 + "dev": true
1905 1901 },
1906 1902 "console-control-strings": {
1907 1903 "version": "1.1.0",
1908 1904 "bundled": true,
1909   - "dev": true,
1910   - "optional": true
  1905 + "dev": true
1911 1906 },
1912 1907 "core-util-is": {
1913 1908 "version": "1.0.2",
... ... @@ -2024,8 +2019,7 @@
2024 2019 "inherits": {
2025 2020 "version": "2.0.3",
2026 2021 "bundled": true,
2027   - "dev": true,
2028   - "optional": true
  2022 + "dev": true
2029 2023 },
2030 2024 "ini": {
2031 2025 "version": "1.3.5",
... ... @@ -2037,7 +2031,6 @@
2037 2031 "version": "1.0.0",
2038 2032 "bundled": true,
2039 2033 "dev": true,
2040   - "optional": true,
2041 2034 "requires": {
2042 2035 "number-is-nan": "^1.0.0"
2043 2036 }
... ... @@ -2052,7 +2045,6 @@
2052 2045 "version": "3.0.4",
2053 2046 "bundled": true,
2054 2047 "dev": true,
2055   - "optional": true,
2056 2048 "requires": {
2057 2049 "brace-expansion": "^1.1.7"
2058 2050 }
... ... @@ -2164,8 +2156,7 @@
2164 2156 "number-is-nan": {
2165 2157 "version": "1.0.1",
2166 2158 "bundled": true,
2167   - "dev": true,
2168   - "optional": true
  2159 + "dev": true
2169 2160 },
2170 2161 "object-assign": {
2171 2162 "version": "4.1.1",
... ... @@ -2298,7 +2289,6 @@
2298 2289 "version": "1.0.2",
2299 2290 "bundled": true,
2300 2291 "dev": true,
2301   - "optional": true,
2302 2292 "requires": {
2303 2293 "code-point-at": "^1.0.0",
2304 2294 "is-fullwidth-code-point": "^1.0.0",
... ... @@ -2400,7 +2390,7 @@
2400 2390 },
2401 2391 "get-stream": {
2402 2392 "version": "3.0.0",
2403   - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
  2393 + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
2404 2394 "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
2405 2395 "dev": true
2406 2396 },
... ... @@ -2557,7 +2547,7 @@
2557 2547 },
2558 2548 "got": {
2559 2549 "version": "6.7.1",
2560   - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz",
  2550 + "resolved": "http://registry.npmjs.org/got/-/got-6.7.1.tgz",
2561 2551 "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=",
2562 2552 "dev": true,
2563 2553 "requires": {
... ... @@ -2889,7 +2879,7 @@
2889 2879 },
2890 2880 "is-obj": {
2891 2881 "version": "1.0.1",
2892   - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
  2882 + "resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
2893 2883 "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=",
2894 2884 "dev": true
2895 2885 },
... ... @@ -3251,7 +3241,7 @@
3251 3241 },
3252 3242 "minimist": {
3253 3243 "version": "1.2.0",
3254   - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
  3244 + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
3255 3245 "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
3256 3246 },
3257 3247 "mixin-deep": {
... ... @@ -3277,7 +3267,7 @@
3277 3267 },
3278 3268 "mkdirp": {
3279 3269 "version": "0.5.1",
3280   - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
  3270 + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
3281 3271 "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
3282 3272 "dev": true,
3283 3273 "requires": {
... ... @@ -3286,7 +3276,7 @@
3286 3276 "dependencies": {
3287 3277 "minimist": {
3288 3278 "version": "0.0.8",
3289   - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
  3279 + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
3290 3280 "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
3291 3281 "dev": true
3292 3282 }
... ... @@ -3550,7 +3540,7 @@
3550 3540 },
3551 3541 "path-is-absolute": {
3552 3542 "version": "1.0.1",
3553   - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
  3543 + "resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
3554 3544 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
3555 3545 "dev": true
3556 3546 },
... ... @@ -3989,7 +3979,7 @@
3989 3979 },
3990 3980 "safe-regex": {
3991 3981 "version": "1.1.0",
3992   - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
  3982 + "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
3993 3983 "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
3994 3984 "dev": true,
3995 3985 "requires": {
... ... @@ -4299,7 +4289,7 @@
4299 4289 },
4300 4290 "strip-eof": {
4301 4291 "version": "1.0.0",
4302   - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
  4292 + "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
4303 4293 "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
4304 4294 "dev": true
4305 4295 },
... ...
packaging/assembly/windows.xml renamed from application/src/main/assembly/windows.xml
packaging/build.gradle renamed from application/build.gradle
... ... @@ -17,7 +17,7 @@ import org.apache.tools.ant.filters.ReplaceTokens
17 17
18 18 buildscript {
19 19 ext {
20   - osPackageVersion = "3.8.0"
  20 + osPackageVersion = "8.3.0"
21 21 }
22 22 repositories {
23 23 jcenter()
... ... @@ -43,8 +43,8 @@ ospackage {
43 43
44 44 into pkgInstallFolder
45 45
46   - user pkgName
47   - permissionGroup pkgName
  46 + user pkgUser
  47 + permissionGroup pkgUser
48 48
49 49 // Copy the actual .jar file
50 50 from(mainJar) {
... ... @@ -57,22 +57,22 @@ ospackage {
57 57 }
58 58
59 59 // Copy the install files
60   - from("target/bin/install/install.sh") {
  60 + from("${buildDir}/bin/install/install.sh") {
61 61 fileMode 0775
62 62 into "bin/install"
63 63 }
64 64
65   - from("target/bin/install/upgrade.sh") {
  65 + from("${buildDir}/bin/install/upgrade.sh") {
66 66 fileMode 0775
67 67 into "bin/install"
68 68 }
69 69
70   - from("target/bin/install/logback.xml") {
  70 + from("${buildDir}/bin/install/logback.xml") {
71 71 into "bin/install"
72 72 }
73 73
74 74 // Copy the config files
75   - from("target/conf") {
  75 + from("${buildDir}/conf") {
76 76 exclude "${pkgName}.conf"
77 77 fileType CONFIG | NOREPLACE
78 78 fileMode 0754
... ... @@ -80,14 +80,14 @@ ospackage {
80 80 }
81 81
82 82 // Copy the data files
83   - from("target/data") {
  83 + from("${buildDir}/data") {
84 84 fileType CONFIG | NOREPLACE
85 85 fileMode 0754
86 86 into "data"
87 87 }
88 88
89 89 // Copy the extensions files
90   - from("target/extensions") {
  90 + from("${buildDir}/extensions") {
91 91 into "extensions"
92 92 }
93 93 }
... ... @@ -97,12 +97,12 @@ buildRpm {
97 97
98 98 arch = NOARCH
99 99
100   - version = projectVersion.replace('-', '')
101   - archiveName = "${pkgName}.rpm"
  100 + archiveVersion = projectVersion.replace('-', '')
  101 + archiveFileName = "${pkgName}.rpm"
102 102
103 103 requires("java-1.8.0")
104 104
105   - from("target/conf") {
  105 + from("${buildDir}/conf") {
106 106 include "${pkgName}.conf"
107 107 filter(ReplaceTokens, tokens: ['pkg.platform': 'rpm'])
108 108 fileType CONFIG | NOREPLACE
... ... @@ -115,17 +115,19 @@ buildRpm {
115 115 preUninstall file("${buildDir}/control/rpm/prerm")
116 116 postUninstall file("${buildDir}/control/rpm/postrm")
117 117
118   - user pkgName
119   - permissionGroup pkgName
  118 + user pkgUser
  119 + permissionGroup pkgUser
120 120
121 121 // Copy the system unit files
122   - from("${buildDir}/control/${pkgName}.service") {
  122 + from("${buildDir}/control/template.service") {
123 123 addParentDirs = false
124 124 fileMode 0644
125 125 into "/usr/lib/systemd/system"
  126 + rename { String filename ->
  127 + "${pkgName}.service"
  128 + }
126 129 }
127 130
128   - directory(pkgLogFolder, 0755)
129 131 link("${pkgInstallFolder}/bin/${pkgName}.yml", "${pkgInstallFolder}/conf/${pkgName}.yml")
130 132 link("/etc/${pkgName}/conf", "${pkgInstallFolder}/conf")
131 133 }
... ... @@ -135,11 +137,11 @@ buildDeb {
135 137
136 138 arch = "all"
137 139
138   - archiveName = "${pkgName}.deb"
  140 + archiveFileName = "${pkgName}.deb"
139 141
140 142 requires("openjdk-8-jre").or("java8-runtime").or("oracle-java8-installer").or("openjdk-8-jre-headless")
141 143
142   - from("target/conf") {
  144 + from("${buildDir}/conf") {
143 145 include "${pkgName}.conf"
144 146 filter(ReplaceTokens, tokens: ['pkg.platform': 'deb'])
145 147 fileType CONFIG | NOREPLACE
... ... @@ -157,18 +159,40 @@ buildDeb {
157 159 preUninstall file("${buildDir}/control/deb/prerm")
158 160 postUninstall file("${buildDir}/control/deb/postrm")
159 161
160   - user pkgName
161   - permissionGroup pkgName
  162 + user pkgUser
  163 + permissionGroup pkgUser
162 164
163 165 // Copy the system unit files
164   - from("${buildDir}/control/${pkgName}.service") {
  166 + from("${buildDir}/control/template.service") {
165 167 addParentDirs = false
166 168 fileMode 0644
167 169 into "/lib/systemd/system"
  170 + rename { String filename ->
  171 + "${pkgName}.service"
  172 + }
168 173 }
169 174
170   - directory(pkgLogFolder, 0755)
171 175 link("/etc/init.d/${pkgName}", "${pkgInstallFolder}/bin/${pkgName}.jar")
172 176 link("${pkgInstallFolder}/bin/${pkgName}.yml", "${pkgInstallFolder}/conf/${pkgName}.yml")
173 177 link("/etc/${pkgName}/conf", "${pkgInstallFolder}/conf")
174 178 }
  179 +
  180 +task renameDeb(type: Copy) {
  181 + from("${buildDir}/") {
  182 + include '*.deb'
  183 + destinationDir file("${buildDir}/")
  184 + rename { String filename ->
  185 + "${pkgName}.deb"
  186 + }
  187 + }
  188 +}
  189 +
  190 +task renameRpm(type: Copy) {
  191 + from("${buildDir}/") {
  192 + include '*.rpm'
  193 + destinationDir file("${buildDir}/")
  194 + rename { String filename ->
  195 + "${pkgName}.rpm"
  196 + }
  197 + }
  198 +}
... ...
packaging/filters/unix.properties renamed from application/src/main/filters/unix.properties
packaging/filters/windows.properties renamed from application/src/main/filters/windows.properties
packaging/scripts/control/deb/postinst renamed from application/src/main/scripts/control/deb/postinst
... ... @@ -2,6 +2,7 @@
2 2
3 3 set -e
4 4
  5 +mkdir -m 0755 -p ${pkg.logFolder}
5 6 chown -R ${pkg.user}: ${pkg.logFolder}
6 7 chown -R ${pkg.user}: ${pkg.installFolder}
7 8 systemctl --no-reload enable ${pkg.name}.service >/dev/null 2>&1 || :
... ...
packaging/scripts/control/deb/postrm renamed from application/src/main/scripts/control/deb/postrm
packaging/scripts/control/deb/preinst renamed from application/src/main/scripts/control/deb/preinst
packaging/scripts/control/deb/prerm renamed from application/src/main/scripts/control/deb/prerm
packaging/scripts/control/rpm/postinst renamed from application/src/main/scripts/control/rpm/postinst
1 1 #!/bin/sh
2 2
  3 +mkdir -m 0755 -p ${pkg.logFolder}
3 4 chown -R ${pkg.user}: ${pkg.logFolder}
4 5 chown -R ${pkg.user}: ${pkg.installFolder}
5 6
... ...
packaging/scripts/control/rpm/postrm renamed from application/src/main/scripts/control/rpm/postrm
packaging/scripts/control/rpm/preinst renamed from application/src/main/scripts/control/rpm/preinst
packaging/scripts/control/rpm/prerm renamed from application/src/main/scripts/control/rpm/prerm
packaging/scripts/control/template.service renamed from application/src/main/scripts/control/thingsboard.service
packaging/scripts/install/install.sh renamed from application/src/main/scripts/install/install.sh
packaging/scripts/install/install_dev_db.sh renamed from application/src/main/scripts/install/install_dev_db.sh
packaging/scripts/install/logback.xml renamed from application/src/main/scripts/install/logback.xml
packaging/scripts/install/upgrade.sh renamed from application/src/main/scripts/install/upgrade.sh
packaging/scripts/install/upgrade_dev_db.sh renamed from application/src/main/scripts/install/upgrade_dev_db.sh
packaging/scripts/windows/install.bat renamed from application/src/main/scripts/windows/install.bat
packaging/scripts/windows/install_dev_db.bat renamed from application/src/main/scripts/windows/install_dev_db.bat
packaging/scripts/windows/service.xml renamed from application/src/main/scripts/windows/service.xml
packaging/scripts/windows/uninstall.bat renamed from application/src/main/scripts/windows/uninstall.bat
packaging/scripts/windows/upgrade.bat renamed from application/src/main/scripts/windows/upgrade.bat
... ... @@ -182,7 +182,7 @@
182 182 <plugin>
183 183 <groupId>org.thingsboard</groupId>
184 184 <artifactId>gradle-maven-plugin</artifactId>
185   - <version>1.0.9</version>
  185 + <version>1.0.10</version>
186 186 </plugin>
187 187 <plugin>
188 188 <groupId>org.apache.maven.plugins</groupId>
... ... @@ -321,6 +321,8 @@
321 321 <exclude>src/vendor/**</exclude>
322 322 <exclude>src/font/**</exclude>
323 323 <exclude>src/sh/**</exclude>
  324 + <exclude>packaging/scripts/control/**</exclude>
  325 + <exclude>packaging/scripts/windows/**</exclude>
324 326 <exclude>src/main/scripts/control/**</exclude>
325 327 <exclude>src/main/scripts/windows/**</exclude>
326 328 <exclude>src/main/resources/public/static/rulenode/**</exclude>
... ...