Hi Christian,
         
        My 2 cents.
         
        In SysML 1.4, we proceed this way:
        
          -       
              Use a maven profile
            product ( [1] check releng/pom.xml). It’s include
        
          o  
              feature
            
        
          o  
              p2 site
        
          o  
              product
        
          o  
              RcpTT  tests
        
          -       
              Use 2 gerrit jobs
        
          o  
              One is always  triggered (mvn clean install)[2]
        
          o  
              The other is launched when something might
            impact the product (mvn clean install -Pproduct).We
            use the job configuration path to determine that [3].
         
        ð 
              This approach still allow to check the product
            but
            only when it’s useful (the drawback is that gerrit is
            executed 2 times for product contribution. I didn’t found
            any easy way to avoid that)
         
        In any case having a product profile allow us
            to choose when to actually build the product. You can also
            choose to only use it in the nightly build.
         
        Regards,
        Benoit
         
        1:
https://git.eclipse.org/c/papyrus/org.eclipse.papyrus-sysml.git/tree/releng/pom.xml
        2 :
            https://hudson.eclipse.org/papyrus/view/Sysml/job/papyrus-sysml-gerrit/
        3 :
            https://hudson.eclipse.org/papyrus/view/Sysml/job/papyrus-sysml-gerrit-product/
        
         
        
         
        
        
        
          I
              see that the Tooling Gerrit builds build
              the org.eclipse.papyrusrt.product package for each of
              three different platforms:  linux, win32, and mac (all
              64-bit).  This takes quite a long time and seems to me
              redundant.  Shouldn’t it be enough for sanity-checking of
              a contribution to build only one of these?  Is it even
              necessary to build any of them, unless of course the
              contribution is in the actual rt.product module?  Is it
              possible to build this module only when it is changed,
              itself?