2011-08-05 11 views

Respuesta

2

En su plantilla principal, o donde sea.

<p style="float:right">Server version: <%=ApplicationHolder.application.metadata['app.version']%></p> 

Se puede utilizar para limitar <g:if env="..."> por los entornos si lo desea.

La compilación fecha es más complicada, y probablemente no signifique nada. ¿Nunca construyes dos veces el mismo día? ¿La misma hora? Me quedo la revisión SVN en mi versión de la aplicación antes de la construcción para identificar construye, tales como:

_Events.groovy

eventWarStart = { type -> 
    addSvnRevisionToAppVersion() 
} 

private def addSvnRevisionToAppVersion() { 
    try { 
     DAVRepositoryFactory.setup(); 
     SVNRepositoryFactoryImpl.setup(); 
     FSRepositoryFactory.setup(); 

     SVNClientManager clientManager = SVNClientManager.newInstance(); 
     SVNWCClient wcClient = clientManager.getWCClient(); 
     File baseFile = new File(basedir); 
     SVNInfo svninfo = wcClient.doInfo(baseFile, SVNRevision.WORKING); 

     def svnRevision = svninfo.getRevision().number; 

     String oldVersion = metadata.'app.version' 
     String newVersion 
     if (oldVersion.matches(/.*\.r\d+/)) { 
      newVersion = oldVersion.replaceAll(/\.r\d+/, ".r${svnRevision}"); 
     } 
     else { 
      newVersion = oldVersion + ".r${svnRevision}".toString() 
     } 
     metadata.'app.version' = newVersion 
     metadata.persist() 

    } 
    catch (SVNException ex) { 
     println "**************** SVN exception **************" 
     println ex.getMessage(); 
    } 
} 

Tenga en cuenta que en lugar de añadir la revisión svn, usted podría añadir new Date() para obtener la construcción fecha.

1

i has probado mi auto, pero hay algo así como

grails set-version 20110101-3 

def version = grailsApplication.metadata['app.version'] 

para obtener más información se refiere a documentation

0

Cualquiera buscando la solución para griales 3. Se puede hacer mediante la configuración de las buildProperties tarea

buildProperties { 
    inputs.property("info.app.build.date", new Date().format('yyyy-MM-dd HH:mm:ss')) 
} 

<g:meta name="info.app.build.date"/> 

Ver Adding build date and other custom info to war

Cuestiones relacionadas