war {
dependsOn('generateBuildVersion')
archiveName 'lms.war'
from('../frontend/dist')
}
task generateBuildVersion {
doLast {
def jsonFile = file('../frontend/src/app/version.json')
def parsedJson = new groovy.json.JsonSlurper().parseText(jsonFile.text)
parsedJson.versionNumber = parsedJson.versionNumber + 0.01
parsedJson.releaseDate = Date.newInstance().format('MM/dd/yyyy')
def jsonStr = JsonOutput.toJson(parsedJson)
def jsonData = JsonOutput.prettyPrint(jsonStr)
jsonFile.write(jsonData)
}
}
{
"versionNumber": 1.03,
"releaseDate": "09/01/2022"
}
src/app/version.json
LoginComponent.ts
versionNumber: number;
releaseDate: string;
constructor(
private notification: NotificationService
) {
this.versionNumber = this.sessionService.versionNumber;
this.releaseDate = this.sessionService.releaseDate;
}
SessionService.ts
versionNumber: number;
releaseDate: string;
constructor() {
this.versionNumber = +version.versionNumber;
this.releaseDate = version.releaseDate;
}
LoginComponent.html
<div>
<p class="alignleft">{{ releaseDate }}</p>
<p class="alignright">{{ versionNumber }}</p>
</div>