HIRS/build.gradle
2022-11-18 13:03:24 -05:00

53 lines
1.5 KiB
Groovy

import java.util.concurrent.TimeUnit
import org.gradle.api.tasks.Copy
plugins {
// Apply the application plugin to add support for building a CLI application in Java.
id 'application'
id 'java'
id 'war'
id "nebula.ospackage" version "9.1.1"
}
// Global checkstyle file
ext.checkstyleConfigFile = new File(rootDir, "/config/checkstyle/sun_checks.xml")
dependencies {
repositories {
// Use Maven Central for resolving dependencies.
mavenCentral()
}
}
def projectVersion = rootProject.file('VERSION').text.trim()
def buildTime = { ->
Date latestdate = new Date();
def time = latestdate.getTime();
long seconds = TimeUnit.MILLISECONDS.toSeconds(time);
return seconds;
}
def gitHash = { ->
def gitProcess = 'git rev-parse --short HEAD'.execute();
gitProcess.waitFor();
def shortHash = gitProcess.text.trim();
def gitHash = shortHash.substring(0, shortHash.length() - 2);
return gitHash;
}
project.ext["packageVersion"] = "${projectVersion}.${buildTime}.${gitHash}.el8"
task buildAcaRpm(type:Exec) {
description 'Builds a RPM package for the HIRS ACA'
def rpmName="build/distributions/HIRS_AttesationCA-${projectVersion}.${buildTime}.${gitHash}.el8-1.x86_64.rpm created"
doFirst {
println "Building HIRS_AttestationCA.war, HIRS_AttestationCAPortal.war, and HIRS_AttestationCA.rpm"
commandLine './package/package.rocky.sh'
}
doLast {
println "Build complete"
println "${rpmName} created"
}
}