first-fix
This commit is contained in:
1 parent
6d87c1edc8
commit
565d9d673a
6284 files changed
+820267
-76
No files matched your search
@@ -0,0 +1,169 @@
|
||||
/**
|
||||
* Copyright © 2016-2023 The Thingsboard Authors
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import org.apache.tools.ant.filters.ReplaceTokens
|
||||
|
||||
plugins {
|
||||
id "nebula.ospackage" version "8.6.3"
|
||||
}
|
||||
|
||||
buildDir = projectBuildDir
|
||||
version = projectVersion
|
||||
distsDirName = "./"
|
||||
|
||||
// OS Package plugin configuration
|
||||
ospackage {
|
||||
packageName = pkgName
|
||||
version = "${project.version}"
|
||||
release = 1
|
||||
os = LINUX
|
||||
type = BINARY
|
||||
|
||||
into pkgInstallFolder
|
||||
|
||||
user pkgUser
|
||||
permissionGroup pkgUser
|
||||
|
||||
// Copy the actual .jar file
|
||||
from(mainJar) {
|
||||
// Strip the version from the jar filename
|
||||
rename { String fileName ->
|
||||
"${pkgName}.jar"
|
||||
}
|
||||
fileMode 0500
|
||||
into "bin"
|
||||
}
|
||||
|
||||
if("${pkgCopyInstallScripts}".equalsIgnoreCase("true")) {
|
||||
// Copy the install files
|
||||
from("${buildDir}/bin/install/install.sh") {
|
||||
fileMode 0775
|
||||
into "bin/install"
|
||||
}
|
||||
|
||||
from("${buildDir}/bin/install/upgrade.sh") {
|
||||
fileMode 0775
|
||||
into "bin/install"
|
||||
}
|
||||
|
||||
from("${buildDir}/bin/install/logback.xml") {
|
||||
into "bin/install"
|
||||
}
|
||||
}
|
||||
|
||||
// Copy the config files
|
||||
from("${buildDir}/conf") {
|
||||
exclude "${pkgName}.conf"
|
||||
fileType CONFIG | NOREPLACE
|
||||
fileMode 0754
|
||||
into "conf"
|
||||
}
|
||||
|
||||
// Copy the data files
|
||||
from("${buildDir}/data") {
|
||||
fileType CONFIG | NOREPLACE
|
||||
fileMode 0754
|
||||
into "data"
|
||||
}
|
||||
|
||||
// Copy the extensions files
|
||||
from("${buildDir}/extensions") {
|
||||
into "extensions"
|
||||
}
|
||||
}
|
||||
|
||||
// Configure our RPM build task
|
||||
buildRpm {
|
||||
|
||||
arch = NOARCH
|
||||
|
||||
archiveVersion = projectVersion.replace('-', '')
|
||||
archiveFileName = "${pkgName}.rpm"
|
||||
|
||||
requires("java-11")
|
||||
|
||||
from("${buildDir}/conf") {
|
||||
include "${pkgName}.conf"
|
||||
filter(ReplaceTokens, tokens: ['pkg.platform': 'rpm'])
|
||||
fileType CONFIG | NOREPLACE
|
||||
fileMode 0754
|
||||
into "${pkgInstallFolder}/conf"
|
||||
}
|
||||
|
||||
preInstall file("${buildDir}/control/rpm/preinst")
|
||||
postInstall file("${buildDir}/control/rpm/postinst")
|
||||
preUninstall file("${buildDir}/control/rpm/prerm")
|
||||
postUninstall file("${buildDir}/control/rpm/postrm")
|
||||
|
||||
user pkgUser
|
||||
permissionGroup pkgUser
|
||||
|
||||
// Copy the system unit files
|
||||
from("${buildDir}/control/template.service") {
|
||||
addParentDirs = false
|
||||
fileMode 0644
|
||||
into "/usr/lib/systemd/system"
|
||||
rename { String filename ->
|
||||
"${pkgName}.service"
|
||||
}
|
||||
}
|
||||
|
||||
link("${pkgInstallFolder}/bin/${pkgName}.yml", "${pkgInstallFolder}/conf/${pkgName}.yml")
|
||||
link("/etc/${pkgName}/conf", "${pkgInstallFolder}/conf")
|
||||
}
|
||||
|
||||
// Same as the buildRpm task
|
||||
buildDeb {
|
||||
|
||||
arch = "all"
|
||||
|
||||
archiveFileName = "${pkgName}.deb"
|
||||
|
||||
requires("openjdk-11-jre").or("java11-runtime").or("oracle-java11-installer").or("openjdk-11-jre-headless")
|
||||
|
||||
from("${buildDir}/conf") {
|
||||
include "${pkgName}.conf"
|
||||
filter(ReplaceTokens, tokens: ['pkg.platform': 'deb'])
|
||||
fileType CONFIG | NOREPLACE
|
||||
fileMode 0754
|
||||
into "${pkgInstallFolder}/conf"
|
||||
}
|
||||
|
||||
configurationFile("${pkgInstallFolder}/conf/${pkgName}.conf")
|
||||
configurationFile("${pkgInstallFolder}/conf/${pkgName}.yml")
|
||||
configurationFile("${pkgInstallFolder}/conf/logback.xml")
|
||||
configurationFile("${pkgInstallFolder}/conf/actor-system.conf")
|
||||
|
||||
preInstall file("${buildDir}/control/deb/preinst")
|
||||
postInstall file("${buildDir}/control/deb/postinst")
|
||||
preUninstall file("${buildDir}/control/deb/prerm")
|
||||
postUninstall file("${buildDir}/control/deb/postrm")
|
||||
|
||||
user pkgUser
|
||||
permissionGroup pkgUser
|
||||
|
||||
// Copy the system unit files
|
||||
from("${buildDir}/control/template.service") {
|
||||
addParentDirs = false
|
||||
fileMode 0644
|
||||
into "/lib/systemd/system"
|
||||
rename { String filename ->
|
||||
"${pkgName}.service"
|
||||
}
|
||||
}
|
||||
|
||||
link("${pkgInstallFolder}/bin/${pkgName}.yml", "${pkgInstallFolder}/conf/${pkgName}.yml")
|
||||
link("/etc/${pkgName}/conf", "${pkgInstallFolder}/conf")
|
||||
}
|
||||
Reference in new issue
Block a user