thingsboard/packaging/js/build.gradle

129 lines
3.2 KiB
Groovy
Raw Normal View History

2018-10-02 17:42:09 +03:00
/**
2021-01-11 13:42:16 +02:00
* Copyright © 2016-2021 The Thingsboard Authors
2018-10-02 17:42:09 +03:00
*
* 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"
2018-10-02 17:42:09 +03:00
}
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 executable file
from("${buildDir}/package/linux/bin/${pkgName}") {
fileMode 0500
into "bin"
}
2018-10-02 17:42:09 +03:00
// Copy the init file
from("${buildDir}/package/linux/init/template") {
2018-10-02 17:42:09 +03:00
fileMode 0500
into "init"
rename { String filename ->
"${pkgName}"
}
2018-10-02 17:42:09 +03:00
}
// Copy the config files
from("${buildDir}/package/linux/conf") {
2018-10-02 17:42:09 +03:00
fileType CONFIG | NOREPLACE
fileMode 0754
into "conf"
}
// Copy web files
from("${buildDir}/web") {
2018-10-02 17:42:09 +03:00
into "web"
}
}
// Configure our RPM build task
buildRpm {
arch = X86_64
archiveVersion = projectVersion.replace('-', '')
archiveFileName = "${pkgName}.rpm"
2018-10-02 17:42:09 +03:00
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
2020-05-25 15:05:08 +03:00
from("${buildDir}/control/template.service") {
2018-10-02 17:42:09 +03:00
addParentDirs = false
fileMode 0644
into "/usr/lib/systemd/system"
2020-05-25 15:05:08 +03:00
rename { String filename ->
"${pkgName}.service"
}
2018-10-02 17:42:09 +03:00
}
link("/etc/${pkgName}/conf", "${pkgInstallFolder}/conf")
}
// Same as the buildRpm task
buildDeb {
arch = "amd64"
archiveFileName = "${pkgName}.deb"
2018-10-02 17:42:09 +03:00
configurationFile("${pkgInstallFolder}/conf/${pkgName}.conf")
configurationFile("${pkgInstallFolder}/conf/custom-environment-variables.yml")
configurationFile("${pkgInstallFolder}/conf/default.yml")
configurationFile("${pkgInstallFolder}/conf/logger.js")
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
2020-05-25 15:05:08 +03:00
// Copy the system unit files
from("${buildDir}/control/template.service") {
addParentDirs = false
fileMode 0644
into "/lib/systemd/system"
rename { String filename ->
"${pkgName}.service"
}
}
2018-10-02 17:42:09 +03:00
link("/etc/${pkgName}/conf", "${pkgInstallFolder}/conf")
}