ENTERPRISE.PRAGMATIC.IT



       consulting                          training             development
   Oracle Fusion                   Oracle             Oracle             Oracle
    Middleware                    WebCenter            ADF              WebLogic

                          enable productive IT by ORACLE Technologies

Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop
CONTINUOUS INTEGRATION UND
OTPC* IN ADF PROJEKTEN
                                         * Oracle Team Productivity Center

    ‣        Wo der Schuh drückt

    ‣        Unsere erste Wahl

    ‣        Das gesamte Sortiment




Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                        3
WO DER SCHUH DRÜCKT
    ‣         Viele ADF Projekt starten in der IDE

    ‣         Jedes Projekt oder jeder Entwickler hat eigene
              Build Scripte oder Verfahren

    ‣         Es gibt keine Dependency Management Strategie




Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                        4
UNSERE ERSTE WAHL
    ‣        Subversion

    ‣        Ant, SQL+, wlst, #!/bin/sh

    ‣        ojdeploy, nicht ora:ojdeploy

    ‣        Hudson

    ‣        Oracle Team Productivity Center
             (für den Hausgebrauch)


Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                               5
ZUSAMMENSPIEL KLÄREN



    ‣        Definition einer                   ‣   Zentrale Property-Dateien für
             Verzeichnisstruktur                   jedes Werkzeug (Ant, SQL+,
             außerhalb des JDevelopers !           wlst, cmd, #!/bin/sh)
    ‣        Herauslösen der Build-            ‣   Generierung der Property-
             Scripte aus den Projekten /           Dateien bei
             Subprojekten                          Konfigurationsänderungen
Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                              6
KONFIGURATIONS-
MANAGEMENT

                                               master.env.build




Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop             7   env.properties
INTEGRATION IM JDEVELOPER

                          ../env




Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                      8
DEPENDENCY MANAGEMENT
    ‣        Maven und Ivy sind nicht
             schlecht, aber eine wirkliche
             Integration im JDeveloper
             liegt nicht vor (12c?)

    ‣        Generierte Ant Build Scripte
             mit dem JDeveloper
             verstoßen gegen den
             Konfigurationsmanagement -
             Grundsatz




Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                                9
PRAGMATIC DEPENDENCY
MANAGEMENT
    ‣        ojdeploy löst die Abhängigkeiten                svn update
             relativ über JWS- oder JPR-Dateien
             auf

                                                         build module (adflib)
    ‣        Libraries (third-party-jars, adflibs)
             liegen in der Projektverzeichnis-
             struktur und in SVN
                                                           build masterapp


    ‣        Verteilung erfolgt über SVN

                                                          set build version
    ‣        Wiederverwendung kann durch
             svn:external definiert werden

                                                          svn commit new
                                                               output
Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                                       10
INTEGRATION NEUER MODULE
    ‣        Der Entwickler kümmert sich
             nicht um die CI*. :)

    ‣        Nach Konvention wird ein
             neuer JDeveloper
             Workspace** pro Modul
             angelegt

    ‣        Deployment-Profiles werden
             per Namenskonvention
             automatisch gebaut !

                                                * Continuous Integration
Ulrich Gerkmann-Bartels                         ** Workspace = Application
CEO & Consultant
Oracle Technologies
 Andreas Koop                              11
INTEGRATION NEUER MODULE




Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop             12
INTEGRATION IN HUDSON
    ‣        Hudson ruft nur Ant
             Scripte auf

    ‣        Hudson Job für build,
             deploy, qa



                          build

                          bin/ant/build.xml

                                         env




                                               Hudson Job Konfiguration
Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                                            13
INTEGRATION OJAUDIT
IN HUDSON
    ‣        JDeveloper auf dem CI Server

    ‣        Hudson ruft QA Ant Script auf

    ‣        Hudson HTML Plugin integriert
             die Ausgabe von ojaudit



                                                  Ant Script: qa.xml




Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                                14
HUDSON PLUGINS
ALL YOU NEED
    ‣        Log Parser

    ‣        Instant Messaging / Jabber

    ‣        OTPC*

    ‣        HTML Publisher                    target/qa/ojaudit/       ojaudit.html




                                                    * Oracle Team Productivity Center



Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                             15
ORACLE TEAM
PRODUCTIVITY CENTER



    ‣        Oracle Database XE            ‣   OTPC Task Repository
                                               Connector
    ‣        Tomcat 6.x
                                           ‣   Oracle JDeveloper Extension
    ‣        OpenFire (Chat Server)

Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                         16
OTPC* THE GOOD
                                                * Oracle Team Productivity Center

    ‣        Integierter Chat + Hudson =
             Build-On-Demand auf Zuruf

    ‣        Build-In Task Repository

    ‣        Failed Build in Task
             umwandeln

    ‣        Save und Restore der
             geöffneten Dateien zu einem
             Task                                      Quelle: susanduncan.blogspot.de



Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                              17
OTPC* THE BAD AND ...
                                                   * Oracle Team Productivity Center

    ‣        Kein LDAP Connector für
             Benutzer und Gruppen

    ‣        Installation und Update mit
             Hindernissen

    ‣        Eigentlich nur für den
             Hausgebrauch nutzbar

    ‣        Keine Enterprise - Solution :(

    ‣        Vielleicht mit Release 2 ?!
Ulrich Gerkmann-Bartels
CEO & Consultant
Oracle Technologies
 Andreas Koop                                 18
DAS KOMPLETTE
SORTIMENT
CI UND OTPC UMGEBUNG
            Chat Extension     OpenFire App    OpenFire Schema


            OTPC Extension      OTPC App        OTPC Schema


                 Update       JDevExtUpd-App    Sonar Schema


             SVN Extension

                             Tomcat 6.x        Oracle XE
             JDev
                               OTPC Plugin
              PROJECT                            Sonar-App

                                Hudson-Job


              SVN               Ant Scripte     Sonar
                               Hudson
Ulrich Gerkmann-Bartels                         WLS_DOMAIN
CEO & Consultant
Oracle Technologies                    20
 Andreas Koop
HABEN SIE NOCH FRAGEN?
        download




        presentation
CI und OTPC in ADF Projekten
CI und OTPC in ADF Projekten

CI und OTPC in ADF Projekten

  • 2.
    ENTERPRISE.PRAGMATIC.IT consulting training development Oracle Fusion Oracle Oracle Oracle Middleware WebCenter ADF WebLogic enable productive IT by ORACLE Technologies Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop
  • 3.
    CONTINUOUS INTEGRATION UND OTPC*IN ADF PROJEKTEN * Oracle Team Productivity Center ‣ Wo der Schuh drückt ‣ Unsere erste Wahl ‣ Das gesamte Sortiment Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 3
  • 4.
    WO DER SCHUHDRÜCKT ‣ Viele ADF Projekt starten in der IDE ‣ Jedes Projekt oder jeder Entwickler hat eigene Build Scripte oder Verfahren ‣ Es gibt keine Dependency Management Strategie Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 4
  • 5.
    UNSERE ERSTE WAHL ‣ Subversion ‣ Ant, SQL+, wlst, #!/bin/sh ‣ ojdeploy, nicht ora:ojdeploy ‣ Hudson ‣ Oracle Team Productivity Center (für den Hausgebrauch) Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 5
  • 6.
    ZUSAMMENSPIEL KLÄREN ‣ Definition einer ‣ Zentrale Property-Dateien für Verzeichnisstruktur jedes Werkzeug (Ant, SQL+, außerhalb des JDevelopers ! wlst, cmd, #!/bin/sh) ‣ Herauslösen der Build- ‣ Generierung der Property- Scripte aus den Projekten / Dateien bei Subprojekten Konfigurationsänderungen Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 6
  • 7.
    KONFIGURATIONS- MANAGEMENT master.env.build Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 7 env.properties
  • 8.
    INTEGRATION IM JDEVELOPER ../env Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 8
  • 9.
    DEPENDENCY MANAGEMENT ‣ Maven und Ivy sind nicht schlecht, aber eine wirkliche Integration im JDeveloper liegt nicht vor (12c?) ‣ Generierte Ant Build Scripte mit dem JDeveloper verstoßen gegen den Konfigurationsmanagement - Grundsatz Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 9
  • 10.
    PRAGMATIC DEPENDENCY MANAGEMENT ‣ ojdeploy löst die Abhängigkeiten svn update relativ über JWS- oder JPR-Dateien auf build module (adflib) ‣ Libraries (third-party-jars, adflibs) liegen in der Projektverzeichnis- struktur und in SVN build masterapp ‣ Verteilung erfolgt über SVN set build version ‣ Wiederverwendung kann durch svn:external definiert werden svn commit new output Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 10
  • 11.
    INTEGRATION NEUER MODULE ‣ Der Entwickler kümmert sich nicht um die CI*. :) ‣ Nach Konvention wird ein neuer JDeveloper Workspace** pro Modul angelegt ‣ Deployment-Profiles werden per Namenskonvention automatisch gebaut ! * Continuous Integration Ulrich Gerkmann-Bartels ** Workspace = Application CEO & Consultant Oracle Technologies Andreas Koop 11
  • 12.
    INTEGRATION NEUER MODULE UlrichGerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 12
  • 13.
    INTEGRATION IN HUDSON ‣ Hudson ruft nur Ant Scripte auf ‣ Hudson Job für build, deploy, qa build bin/ant/build.xml env Hudson Job Konfiguration Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 13
  • 14.
    INTEGRATION OJAUDIT IN HUDSON ‣ JDeveloper auf dem CI Server ‣ Hudson ruft QA Ant Script auf ‣ Hudson HTML Plugin integriert die Ausgabe von ojaudit Ant Script: qa.xml Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 14
  • 15.
    HUDSON PLUGINS ALL YOUNEED ‣ Log Parser ‣ Instant Messaging / Jabber ‣ OTPC* ‣ HTML Publisher target/qa/ojaudit/ ojaudit.html * Oracle Team Productivity Center Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 15
  • 16.
    ORACLE TEAM PRODUCTIVITY CENTER ‣ Oracle Database XE ‣ OTPC Task Repository Connector ‣ Tomcat 6.x ‣ Oracle JDeveloper Extension ‣ OpenFire (Chat Server) Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 16
  • 17.
    OTPC* THE GOOD * Oracle Team Productivity Center ‣ Integierter Chat + Hudson = Build-On-Demand auf Zuruf ‣ Build-In Task Repository ‣ Failed Build in Task umwandeln ‣ Save und Restore der geöffneten Dateien zu einem Task Quelle: susanduncan.blogspot.de Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 17
  • 18.
    OTPC* THE BADAND ... * Oracle Team Productivity Center ‣ Kein LDAP Connector für Benutzer und Gruppen ‣ Installation und Update mit Hindernissen ‣ Eigentlich nur für den Hausgebrauch nutzbar ‣ Keine Enterprise - Solution :( ‣ Vielleicht mit Release 2 ?! Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies Andreas Koop 18
  • 19.
  • 20.
    CI UND OTPCUMGEBUNG Chat Extension OpenFire App OpenFire Schema OTPC Extension OTPC App OTPC Schema Update JDevExtUpd-App Sonar Schema SVN Extension Tomcat 6.x Oracle XE JDev OTPC Plugin PROJECT Sonar-App Hudson-Job SVN Ant Scripte Sonar Hudson Ulrich Gerkmann-Bartels WLS_DOMAIN CEO & Consultant Oracle Technologies 20 Andreas Koop
  • 21.
    HABEN SIE NOCHFRAGEN? download presentation