Uploaded image for project: 'Bamboo Data Center'
  1. Bamboo Data Center
  2. BAM-844

Commit changes do not trigger builds due to the use of SVN:externals

      Our project Apache Directory Trunk here http://opensource.bamboo.atlassian.com/browse/APACHE-DS is not triggered to build when we induce changes on the underlying directories because they are all externals. Meaning we use svn:externals to bring together all the ApacheDS components to build the entire server. Here's what our svn:externals property looks in the directory which is checked out by our project:

      apacheds https://svn.apache.org/repos/asf/directory/apacheds/trunk
      shared https://svn.apache.org/repos/asf/directory/shared/trunk
      daemon https://svn.apache.org/repos/asf/directory/daemon/trunk

      Due to this any real work done in these directories does not trigger a build. I suspect to trigger builds properly these externals should be configured for the trigger specification of the project. This way the updated version numbers for these external directories can also be used when determining the criteria to trigger a build.

      Thanks!

            [BAM-844] Commit changes do not trigger builds due to the use of SVN:externals

            edwin added a comment -

            SVN externals should now operate correctly with the changelogs being picked up. However an outstanding issue exists with the SVN externals' fisheye links (see BAM-1054)

            edwin added a comment - SVN externals should now operate correctly with the changelogs being picked up. However an outstanding issue exists with the SVN externals' fisheye links (see BAM-1054 )

            edwin added a comment -

            Hi Jonathan,

            SVN Externals is something we are currently working on (see BAM-882) and will be available in release 1.0.3, which should occur early next week.

            Regards,
            Edwin

            edwin added a comment - Hi Jonathan, SVN Externals is something we are currently working on (see BAM-882 ) and will be available in release 1.0.3, which should occur early next week. Regards, Edwin

            I'm having the same problem. The activity log actually shows that it got an update, but the build still does not kick-off:

            At revision 685
            At revision 685
            Updating Subversion source code from version 685 to version 686

            Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.configuration'
            External at revision -1
            service.configuration
            At revision 686
            Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.module.pom'
            External at revision -1
            service.module.pom
            At revision 686
            Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.persistence'
            External at revision -1
            service.persistence
            At revision 686
            Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.registry'
            External at revision -1
            U service.registry/​src/​main/​java/​com/​ontariosystems/​service/​registry/​ServiceRegistryImpl.java
            service.registry/​src/​main/​java/​com/​ontariosystems/​service/​registry
            service.registry/​src/​main/​java/​com/​ontariosystems/​service
            service.registry/​src/​main/​java/​com/​ontariosystems
            service.registry/​src/​main/​java/​com
            service.registry/​src/​main/​java
            service.registry/​src/​main
            service.registry/​src
            service.registry
            At revision 686
            Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.startup'
            External at revision -1
            service.startup
            At revision 686
            At revision 686

            Jonathan Branam added a comment - I'm having the same problem. The activity log actually shows that it got an update, but the build still does not kick-off: At revision 685 At revision 685 Updating Subversion source code from version 685 to version 686 Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.configuration' External at revision -1 service.configuration At revision 686 Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.module.pom' External at revision -1 service.module.pom At revision 686 Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.persistence' External at revision -1 service.persistence At revision 686 Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.registry' External at revision -1 U service.registry/​src/​main/​java/​com/​ontariosystems/​service/​registry/​ServiceRegistryImpl.java service.registry/​src/​main/​java/​com/​ontariosystems/​service/​registry service.registry/​src/​main/​java/​com/​ontariosystems/​service service.registry/​src/​main/​java/​com/​ontariosystems service.registry/​src/​main/​java/​com service.registry/​src/​main/​java service.registry/​src/​main service.registry/​src service.registry At revision 686 Fetching external item into 'C:\installs\​bamboo-home\​xml-data\​build-dir\​LICK-SERVICES\​service.startup' External at revision -1 service.startup At revision 686 At revision 686

            MarkC added a comment -

            Alex,

            I'll try and sort something out here

            Cheers,

            Mark C

            MarkC added a comment - Alex, I'll try and sort something out here Cheers, Mark C

            The switch to surefire 2.3-SNAPSHOT fixed the test case explosion problem however we still have an issue with the main problem associated with this JIRA bug. Namely the svn:externals still prevents the triggering of builds when changes are on directories pointing to external subversion urls.

            Alex Karasulu added a comment - The switch to surefire 2.3-SNAPSHOT fixed the test case explosion problem however we still have an issue with the main problem associated with this JIRA bug. Namely the svn:externals still prevents the triggering of builds when changes are on directories pointing to external subversion urls.

            Hi Mark,

            Thanks for getting back to me so quickly on these issues. First WRT the SUREFIRE bug I can take care of that right away in our top level pom.

            WRT svn:externals and the commits that triggered the build not that these commits occurred on the top most root directory on the bamboo-build.txt file. This directory is located here btw:

            http://svn.apache.org/repos/asf/directory/apacheds/trunk-with-dependencies/

            If you take a look at that directory with a browser you'll see that it has almost nothing in it. It pulls in externals for the shared, apacheds, and daemon directories from various places in our repository. Unfortunately I discovered that a commit on the top most directory is required to trigger the build. Any commits on the real code under shared, apacheds, and daemon have no effect.

            The commit you saw here:

            http://opensource.bamboo.atlassian.com/browse/APACHE-DS-8/commit

            was performed on this file:

            http://svn.apache.org/repos/asf/directory/apacheds/trunk-with-dependencies/bamboo-build.txt

            which has the following content:

            Thanks to Atlassian we have a CI setup for ApacheDS trunk and ApacheDS 1.0.  The
            build is triggered when the revision number for the checkout directory changes.
            A check for this occurs every 180 seconds.  So to induce a change to trigger
            the build you should change this file: i.e. just increment the build number in
            here.  The reason why changes in the directories do not result in a build are
            due to the use of externals.
            
            Here's the URL for the CI setup on Apache Directory Trunk:
            
              http://opensource.bamboo.atlassian.com/browse/APACHE-DS
            
            Build Number: 10
            

            Hope to find a nice workaround for this problem so we don't have to manually trigger the build by updating this file.

            Thanks!

            Alex Karasulu added a comment - Hi Mark, Thanks for getting back to me so quickly on these issues. First WRT the SUREFIRE bug I can take care of that right away in our top level pom. WRT svn:externals and the commits that triggered the build not that these commits occurred on the top most root directory on the bamboo-build.txt file. This directory is located here btw: http://svn.apache.org/repos/asf/directory/apacheds/trunk-with-dependencies/ If you take a look at that directory with a browser you'll see that it has almost nothing in it. It pulls in externals for the shared, apacheds, and daemon directories from various places in our repository. Unfortunately I discovered that a commit on the top most directory is required to trigger the build. Any commits on the real code under shared, apacheds, and daemon have no effect. The commit you saw here: http://opensource.bamboo.atlassian.com/browse/APACHE-DS-8/commit was performed on this file: http://svn.apache.org/repos/asf/directory/apacheds/trunk-with-dependencies/bamboo-build.txt which has the following content: Thanks to Atlassian we have a CI setup for ApacheDS trunk and ApacheDS 1.0. The build is triggered when the revision number for the checkout directory changes. A check for this occurs every 180 seconds. So to induce a change to trigger the build you should change this file: i.e. just increment the build number in here. The reason why changes in the directories do not result in a build are due to the use of externals. Here's the URL for the CI setup on Apache Directory Trunk: http://opensource.bamboo.atlassian.com/browse/APACHE-DS Build Number: 10 Hope to find a nice workaround for this problem so we don't have to manually trigger the build by updating this file. Thanks!

            MarkC added a comment -

            Alex,

            I was just checking out the project and it seems that there have been files in the apacheds dir that has kicked off builds? (e.g. http://opensource.bamboo.atlassian.com/browse/APACHE-DS-8/commit).

            Is this not the case? (I could be missing something here)

            Also, your build looks like it's suffering from the Maven 2 surefire bug (see http://jira.codehaus.org/browse/MSUREFIRE-114), which causes an excess of tests to be reported (and slows things down quite a bit). Is it possible to change the pom.xml temporarily to use either surefire 2.1.3 or 2.3-SNAPSHOT? 2.2.x has a bug which means test cases in the XML are exponentially reported.

            If you add something like the snippet below to your pom.xml:

            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <version>2.1.3</version>
                            <configuration>
                                <excludes>
                                    <exclude>**/*$*</exclude>
                                </excludes>
                                <argLine>-Xmx1024m</argLine>
                            </configuration>
                        </plugin>
                </pluginManagement>
            </build>
            

            it should be fixed once surefire 2.3 is released, but otherwise, the test reports for Bamboo will be a bit screwed in the mean time.

            Cheers,

            Mark C

            MarkC added a comment - Alex, I was just checking out the project and it seems that there have been files in the apacheds dir that has kicked off builds? (e.g. http://opensource.bamboo.atlassian.com/browse/APACHE-DS-8/commit ). Is this not the case? (I could be missing something here) Also, your build looks like it's suffering from the Maven 2 surefire bug (see http://jira.codehaus.org/browse/MSUREFIRE-114 ), which causes an excess of tests to be reported (and slows things down quite a bit). Is it possible to change the pom.xml temporarily to use either surefire 2.1.3 or 2.3-SNAPSHOT? 2.2.x has a bug which means test cases in the XML are exponentially reported. If you add something like the snippet below to your pom.xml: <build> <pluginManagement> <plugins> <plugin> <groupId> org.apache.maven.plugins </groupId> <artifactId> maven-surefire-plugin </artifactId> <version> 2.1.3 </version> <configuration> <excludes> <exclude> **/*$* </exclude> </excludes> <argLine> -Xmx1024m </argLine> </configuration> </plugin> </pluginManagement> </build> it should be fixed once surefire 2.3 is released, but otherwise, the test reports for Bamboo will be a bit screwed in the mean time. Cheers, Mark C

              mark@atlassian.com MarkC
              083d53c3d07d Alex Karasulu
              Affected customers:
              6 This affects my team
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - 2h
                  2h
                  Remaining:
                  Remaining Estimate - 2h
                  2h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified