Sha256: f62ab437428016e07ed137650f21be29649d5f64236bee6fd23efba5d90e9a5f
Contents?: true
Size: 1.84 KB
Versions: 4
Compression:
Stored size: 1.84 KB
Contents
import com.google.apphosting.api.ApiProxy; import java.io.FileInputStream import java.util.Properties import java.util.ArrayList import java.lang.System class InfoPropertiesController < ApplicationController # GET /info/properties def doGet(request, response) rows = tr 'Mirah version', build_info('mirah') rows += tr 'Bitescript version', build_info('bitescript') rows += tr 'Dubious version', build_info('dubious') rows += tr 'MirahModel version', build_info('model') rows += tr 'Java version', prop('java.specification.version'), prop('java.vm.version') rows += tr 'Java vm name', prop('java.vm.name') rows += tr 'Environment', prop('runtime.environment').toLowerCase rows += tr 'Runtime version', prop('runtime.version') rows += tr 'Auth domain', ApiProxy.getCurrentEnvironment.getAuthDomain rows += tr 'App id', prop('application.id') rows += tr 'App version', prop('application.version') response.getWriter.write("<table><tbody>#{rows}</tbody></table>") end def build_info(tool:String) out = String[2] props = Properties.new begin props.load(FileInputStream.new("config/build.properties")) out[0] = props.getProperty("#{tool}.version.commit").substring(0,7) out[1] = props.getProperty("#{tool}.version.time").substring(0,10) rescue out[0] = 'unknown'; out[1] = "" end out end def prop(s:String) s = "com.google.appengine.#{s}" unless s.startsWith('java.') System.getProperty(s) || "" end def tr(key:String, val:String) "<tr><td>#{key}</td><td colspan='2'>#{val}</td></tr>" end def tr(key:String, val:String, ext:String) "<tr><td>#{key}</td><td class='mono'>#{val}</td><td>#{ext}</td></tr>" end def tr(key:String, val:String[]) tr(key, val[0], val[1]) end end
Version data entries
4 entries across 4 versions & 1 rubygems