Jenkins / Continuous Integration (CI)

Intern benutzen wir einen Jenkins Server, um Build automatisch und kontinuierlich zu erstellen.

  • Builds werden automatisch durchgeführt; evt. Build Probleme werden frühzeitig sichtbar
  • Alle JARs sind mit einem offiziellen Zertifikat unterschrieben (s.u.)
  • Builds können direkt Sonar aufrufen und damit Build Metriken erzeugen

 

Zertifikate

Auf dem Build Server werden offizielle Zertifikate von Thawte für 'Novabit Informationssysteme GmbH' benutzt. Dies geschieht, indem auf dem Server für den User 'jenkins' verschiedene Umgebungsvariablen gesetzt sind:

$ env
[...]
USER=jenkins
STOREPASS=****
MAIL=/var/mail/jenkins
[...]
ALIAS=novabit
LANG=de_DE@euro
KEYSTORE=/var/lib/jenkins/.keystore/novabit.keystore
[...]
HOME=/var/lib/jenkins
LOGNAME=jenkins
[...]
KEYPASS=****
[...]

Informationen über das verwendete Zertifikat kann man wie folgt erhalten:

$ keytool -list -keystore /var/lib/jenkins/.keystore/novabit.keystore 
Keystore-Kennwort eingeben:  
Keystore-Typ: JKS
Keystore-Provider: SUN
Keystore enthält 1 Eintrag
novabit, 10.10.2014, PrivateKeyEntry, 
Zertifikat-Fingerprint (SHA1): 72:F8:B2:EE:C1:9E:EC:2C:31:B5:13:11:96:FE:C1:F9:B9:AA:1A:F1

 

Überprüfen lassen sich Zertifikate mit:

$ jarsigner -verify -verbose -certs -keystore /var/lib/jenkins/.keystore/novabit.keystore xmlbeans-2.5.0.jar  | less
s     289989 Wed Oct 08 10:57:12 CEST 2014 META-INF/MANIFEST.MF

      X.509, CN=Novabit Informationssysteme GmbH, O=Novabit Informationssysteme GmbH, L=Sauerlach, ST=Bavaria, C=DE
      [certificate will expire on 23.10.14 01:59]
      X.509, CN=Thawte Code Signing CA - G2, O="Thawte, Inc.", C=US
      [certificate is valid from 08.02.10 01:00 to 08.02.20 00:59]
      X.509, CN=thawte Primary Root CA, OU="(c) 2006 thawte, Inc. - For authorized use only", OU=Certification Services Division, O="thawte, Inc.", C=US
      [certificate is valid from 17.11.06 01:00 to 31.12.20 00:59]
      X.509, EMAILADDRESS=premium-server@thawte.com, CN=Thawte Premium Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA
      [certificate is valid from 01.08.96 02:00 to 02.01.21 00:59]

      290032 Wed Oct 08 10:57:12 CEST 2014 META-INF/NOVABIT.SF
        4644 Wed Oct 08 10:57:12 CEST 2014 META-INF/NOVABIT.RSA
[...]