Ticket #31 (closed: fixed)

Opened 13 years ago

Last modified 5 years ago

Create an automated build and test environment

Reported by: Nick Draper Owned by: Matt Clarke
Priority: major Milestone:
Component: Keywords:
Cc: Blocked By:
Blocking: Tester:

Description

There is an available PC by my desk that should be suitable for this.

We should use LINUX (fedora or enterprise) for now.

We should install a continuous integration environment eg. cruisecontrol or luntbuild.

This will spot checkings to subversion and initiate a build.

The underlying compiler shoud be gcc, but the choice of build tools is flexible at the momnet, but we should aim for the same build mechanism to the available for the developers to use locally as well.

At the end of the build the unit tests need to be performed.

Should we consider SCons?

Change History

comment:1 Changed 13 years ago by Nick Draper

  • Owner set to Matt Clarke

comment:2 Changed 13 years ago by Russell Taylor

(In [67]) Check in of broken code to test automated build server. Re #31

comment:3 Changed 13 years ago by Russell Taylor

(In [71]) Working code restored. Re #31

comment:4 Changed 13 years ago by Matt Clarke

(In [80]) Adding build scripts. refs #31

comment:5 Changed 13 years ago by Matt Clarke

(In [81]) Adding testing area. refs #31

comment:6 Changed 13 years ago by Russell Taylor

(In [85]) Added linux32 directory to Third_Party/lib. Re #31.

comment:7 Changed 13 years ago by Matt Clarke

(In [87]) Fixed to work on buildserver. Refs #31

comment:8 Changed 13 years ago by Matt Clarke

(In [88]) 32 bit linux fortran lib added. Refs #31

comment:9 Changed 13 years ago by Matt Clarke

(In [89]) Added Uber SConstruct file. Refs #31

comment:10 Changed 13 years ago by Matt Clarke

(In [90]) Change SConscript to remove diagnostic messages. Refs #31

comment:11 Changed 13 years ago by Matt Clarke

(In [91]) Moved Tests folder. Refs #31

comment:12 Changed 13 years ago by Matt Clarke

(In [93]) Moved build scripts. Refs #31

comment:13 Changed 13 years ago by Matt Clarke

(In [94]) Moved build scripts. Refs #31

comment:14 Changed 13 years ago by Matt Clarke

(In [95]) Moved build scripts. Refs #31

comment:15 Changed 13 years ago by Matt Clarke

(In [96]) Moved build scripts. Refs #31

comment:16 Changed 13 years ago by Matt Clarke

(In [97]) Moved build scripts. Refs #31

comment:17 Changed 13 years ago by Matt Clarke

(In [98]) Moved build scripts. Refs #31

comment:18 Changed 13 years ago by Matt Clarke

(In [100]) AnalysisDataServiceTest was causing a segmentation error when run on the build server. Freddie fixed it. #Refs #31

comment:19 Changed 13 years ago by Matt Clarke

(In [101]) SConstruct and SConscript adjusted. Refs #31

comment:20 Changed 13 years ago by Matt Clarke

(In [102]) SConstruct and SConscript adjusted. Refs #31

comment:21 Changed 13 years ago by Matt Clarke

(In [103]) Set to email all developers. Refs #31

comment:22 Changed 13 years ago by Nick Draper

(In [104]) adjusted test sconscript to build library path depending on environment re #31

comment:23 Changed 13 years ago by Matt Clarke

(In [105]) Removed diagnostic message. Refs #31

comment:24 Changed 13 years ago by Russell Taylor

(In [107]) Added scons-local to Third_Party/src. Re #31.

comment:25 Changed 13 years ago by Russell Taylor

(In [108]) Script to use when building with scons-local. Saves typing the full path every time. Re #31.

comment:26 Changed 13 years ago by Matt Clarke

(In [111]) Adjusted format of email. Refs #31

comment:27 Changed 13 years ago by Matt Clarke

(In [112]) SConscript should now determine if a machine is 32- or 64-bit. Refs #31

comment:28 Changed 13 years ago by Russell Taylor

(In [114]) Added a doxygen config file (doxyfile). Builds HTML documentation in a Mantid/Doc directory (which it will create). Re #31.

comment:29 Changed 13 years ago by Russell Taylor

(In [115]) Updated doxyfile options. Now only outputs errors (not info messages) and all warning options set on. Also fixed all the warning messages it was giving to my code :) Re #31.

comment:30 Changed 13 years ago by Matt Clarke

(In [123]) Changed to update Third_Party too. Refs #31

comment:31 Changed 13 years ago by Matt Clarke

(In [124]) Added doxygen warnings to build email. Refs #31

comment:32 Changed 13 years ago by Freddie Akeroyd

(In [126]) Add additional g77 path for linux. Refs #31.

comment:33 Changed 13 years ago by Freddie Akeroyd

(In [127]) Add doxygen file for web based docs. Refs #31.

comment:34 Changed 13 years ago by Matt Clarke

(In [133]) Added third-party libs to SConstruct. Refs #31

comment:35 Changed 13 years ago by Matt Clarke

(In [134]) Added third-party libs to SConscript. Refs #31

comment:36 Changed 13 years ago by Matt Clarke

(In [135]) Small changes to the scripts. Refs #31

comment:37 Changed 13 years ago by Matt Clarke

(In [136]) Added windows specific code to SConstruct. Refs #31

comment:38 Changed 13 years ago by Matt Clarke

(In [167]) Changed to build shared library. Refs #31

comment:39 Changed 13 years ago by Matt Clarke

(In [176]) Added so.4. Refs #31

comment:40 Changed 13 years ago by Matt Clarke

(In [177]) Fixed to use RPATH and absolute paths. Refs #31

comment:41 Changed 13 years ago by Matt Clarke

(In [189]) Removed tests from build. Refs #31.

comment:42 Changed 13 years ago by Matt Clarke

(In [190]) Change build scripts, so framework and tests are built separately. Refs #31

comment:43 Changed 13 years ago by Matt Clarke

(In [191]) Added SConstruct for Tests. Refs #31

comment:44 Changed 13 years ago by Matt Clarke

(In [193]) Fixed so tests run. Refs #31.

comment:45 Changed 13 years ago by Stuart Ansell

(In [195]) re #31 Fixed for python [generic] versions.

comment:46 Changed 13 years ago by Stuart Ansell

(In [196]) re #31 Modified to correctly use -I include in the compile Hence now you can write "class.h" rather than "../inc/class.h"

comment:47 Changed 13 years ago by Matt Clarke

(In [217]) Building Tests no longer shows warnings. Refs #31

comment:48 Changed 13 years ago by Matt Clarke

(In [219]) Removed debug messages. Refs #31

comment:49 Changed 13 years ago by Matt Clarke

(In [221]) Removed debug messages. Refs #31

comment:50 Changed 13 years ago by Russell Taylor

(In [223]) No longer any need for Eclipse-generated makefiles now we're using Scons. Re #31.

comment:51 Changed 13 years ago by Matt Clarke

(In [228]) re #31

The big code clean up: The whole kernel build leaks memory and double deletes: Valgrind tells us that 800 problems exist and about 300 are in our code. This is an attempt to clean up this mess.

Algorithm is the first to be cleaned. Errors on double deletion of a vector where found [finalize]. Checking for empty strings found , and failure to delete managed memory when exiting on a fail [execute].

Access to subalgorithm has been changed to hand back a std::vector<Algorithm*>& This has both a const / non-const form.

comment:52 Changed 13 years ago by Russell Taylor

(In [229]) Tidied up runTests.sh and made it (slightly) more portable. Re #31.

comment:53 Changed 13 years ago by Matt Clarke

(In [230]) re #31

Fix of this test (to compile) It still failed but because of a differnt (non-related error)

comment:54 Changed 13 years ago by Russell Taylor

(In [231]) Added .so.4s to linux64. Re #31.

comment:55 Changed 13 years ago by Matt Clarke

(In [233]) re #31

The changes required to tidy up most of the memory leaks, and other dodgy practices.

comment:56 Changed 13 years ago by Matt Clarke

(In [234]) Fixed to only link against one version of libPoco. Refs #31

comment:57 Changed 13 years ago by Matt Clarke

(In [235]) Fixed to only link against one version of libPoco. Refs #31

comment:58 Changed 13 years ago by Matt Clarke

(In [236]) Removed AlgorithmFactory.cpp. Refs #31

comment:59 Changed 13 years ago by Matt Clarke

(In [238]) New cpp for DynamicFactory. Refs #31

comment:60 Changed 13 years ago by Matt Clarke

(In [241]) Edited SConstruct for Test. Refs #31

comment:61 Changed 13 years ago by Matt Clarke

(In [243]) Removed AlgorithmFactoryTest as class no longer exists. Tests moved to AlgorithmManagerTest. Refs #31

comment:62 Changed 13 years ago by Russell Taylor

(In [244]) Fixed bug in AnalysisDataService.cpp, updated doxyfile & improved test script slightly. Re #31.

comment:63 Changed 13 years ago by Russell Taylor

(In [245]) Oops. Re #31.

comment:64 Changed 13 years ago by Matt Clarke

(In [247]) Highlighted the line that causes the FrameworkManagerTest and the ConfigSvcTest to throw segmentation faults. Refs #31

comment:65 Changed 13 years ago by Russell Taylor

(In [250]) Doxygen config file rolled back to version 1.5.2 to match build server. Re #31.

comment:66 Changed 13 years ago by Russell Taylor

(In [252]) The changes to DynamicFactory caused problems in the Windows tests, so have reverted back to old way. Re #31.

comment:67 Changed 13 years ago by Russell Taylor

(In [253]) Further changes to keep Windows happy. Re #31.

comment:68 Changed 13 years ago by Nick Draper

  • Milestone Iteration 1 deleted

comment:69 Changed 13 years ago by Matt Clarke

(In [270]) Deleted. Refs #31

comment:70 Changed 13 years ago by Matt Clarke

(In [274]) Added SConstruct for building Algorithms only. Added HelloWorldAlgorithm. Refs #31

comment:71 Changed 13 years ago by Matt Clarke

(In [276]) temp file. Refs #31

comment:72 Changed 13 years ago by Matt Clarke

(In [310]) Adjusted SConstruct so it uses the local libs. Refs #31

comment:73 Changed 13 years ago by Matt Clarke

(In [311]) Adjusted SConstruct so it uses the local libs. Refs #31

comment:74 Changed 13 years ago by Matt Clarke

(In [312]) Adjusted SConstruct so it uses the local libs. Refs #31

comment:75 Changed 13 years ago by Matt Clarke

(In [313]) Removed debug messages. Refs #31

comment:76 Changed 13 years ago by Matt Clarke

(In [314]) Removed stuff from thirdparty. Refs #31

comment:77 Changed 13 years ago by Matt Clarke

(In [315]) Fixed SConstruct for Kernel only. Refs #31

comment:78 Changed 13 years ago by Matt Clarke

(In [316]) Removed thirdparty includes. Refs #31

comment:79 Changed 13 years ago by Matt Clarke

(In [317]) Removed \n. Refs #31

comment:80 Changed 13 years ago by Matt Clarke

(In [318]) Removed \n. Refs #31

comment:81 Changed 13 years ago by Matt Clarke

(In [319]) Adjusted to point to local boost. Refs #31

comment:82 Changed 13 years ago by Matt Clarke

(In [320]) All tests now compile. Refs #31

comment:83 Changed 13 years ago by Matt Clarke

(In [321]) Fixed to report test failures correctly. Refs #31

comment:84 Changed 13 years ago by Matt Clarke

(In [333]) Changes to build scripts due to location change. Refs #31

comment:85 Changed 13 years ago by Matt Clarke

(In [338]) Trying to set a record for breaking the most code. Refs #31

comment:86 Changed 13 years ago by Matt Clarke

(In [339]) Started to repair the damage. Refs #31

comment:87 Changed 13 years ago by Matt Clarke

(In [341]) Started to repair the damage. Refs #31

comment:88 Changed 13 years ago by Matt Clarke

(In [342]) Started to repair the damage. Refs #31

comment:89 Changed 13 years ago by Matt Clarke

(In [343]) Resolved merge. Refs #31

comment:90 Changed 13 years ago by Matt Clarke

(In [344]) Resolved merge. Refs #31

comment:91 Changed 13 years ago by Matt Clarke

(In [345]) Started to repair the damage. Refs #31

comment:92 Changed 13 years ago by Matt Clarke

(In [346]) Started to repair the damage. Refs #31

comment:93 Changed 13 years ago by Matt Clarke

(In [348]) Now breaking the API. Refs #31

comment:94 Changed 13 years ago by Matt Clarke

(In [349]) Started to repair the damage. Refs #31

comment:95 Changed 13 years ago by Matt Clarke

(In [350]) Started to repair the damage. Refs #31

comment:96 Changed 13 years ago by Matt Clarke

(In [351]) Rearranged the data objects includes. Refs #31

comment:97 Changed 13 years ago by Matt Clarke

(In [352]) Rearranged the data handling includes. Refs #31

comment:98 Changed 13 years ago by Russell Taylor

(In [354]) Someone's been moving a shed-load of files around and broke all my test scripts :) Re #31.

comment:99 Changed 13 years ago by Matt Clarke

(In [355]) Breaking Russell's scripts one last time. Refs #31

comment:100 Changed 13 years ago by Matt Clarke

(In [358]) Insert sensible comment here. Refs #31

comment:101 Changed 13 years ago by Matt Clarke

(In [359]) Insert sensible comment here. Refs #31

comment:102 Changed 13 years ago by Matt Clarke

(In [360]) Accidently checked in some unfinished code. Refs #31

comment:103 Changed 13 years ago by Matt Clarke

(In [362]) Update SConstruct for the Kernel. Refs #31

comment:104 Changed 13 years ago by Matt Clarke

(In [363]) Added SConstruct for each part of Mantid. Refs #31

comment:105 Changed 13 years ago by Matt Clarke

(In [364]) Geometry should now build! Refs #31

comment:106 Changed 13 years ago by Matt Clarke

(In [366]) Have removed Geometry class from build as it breaks the tests, will put it back when solved. Refs #31

comment:107 Changed 13 years ago by Matt Clarke

(In [371]) Fixed HelloWorldAlgorithm. Refs #31

comment:108 Changed 13 years ago by Matt Clarke

(In [372]) Fixed a few namespace errors. Refs #31

comment:109 Changed 13 years ago by Matt Clarke

(In [374]) Some fixes to the Geometry classes. Refs #31

comment:110 Changed 13 years ago by Matt Clarke

(In [375]) Some of the Geometry class added. Refs #31

comment:111 Changed 13 years ago by Matt Clarke

(In [377]) Fixed to build Geometry. Refs #31

comment:112 Changed 13 years ago by Matt Clarke

(In [385]) Added SConstruct for Geometry. Refs #31

comment:113 Changed 13 years ago by Matt Clarke

(In [387]) Added a SConstruct that calls SConscripts for the modules. Refs #31

comment:114 Changed 13 years ago by Freddie Akeroyd

(In [395]) Correct python path. Refs #31.

comment:115 Changed 13 years ago by Matt Clarke

(In [396]) Slight adjustment to test Sconstruct. Refs #31

comment:116 Changed 13 years ago by Freddie Akeroyd

(In [401]) Tidy up build environment so there is only one SConstruct and this calls SConscript files in subdirectories Refs #31

comment:117 Changed 13 years ago by Freddie Akeroyd

(In [403]) Add missing file. Refs #31.

comment:118 Changed 13 years ago by Freddie Akeroyd

(In [404]) Poco path on build server is different ... Refs #31

comment:119 Changed 13 years ago by Freddie Akeroyd

(In [405]) Fix poco path on build server (again). Refs #31.

comment:120 Changed 13 years ago by Freddie Akeroyd

(In [406]) Add in check for -gcc41 boost_append (needed on build server). Refs #31.

comment:121 Changed 13 years ago by Freddie Akeroyd

(In [407]) Add in explicit test for boost_filesystem-gcc41. Refs #31.

comment:122 Changed 13 years ago by Freddie Akeroyd

(In [410]) Comment out printing of filename. Refs #31.

comment:123 Changed 13 years ago by Freddie Akeroyd

(In [415]) Use locally installed scons if it is present. Refs #31.

comment:124 Changed 13 years ago by Freddie Akeroyd

(In [416]) I don't think this file should be in subversion. Refs #31.

comment:125 Changed 13 years ago by Freddie Akeroyd

(In [455]) Build libraries with debug symbols. Refs #31.

comment:126 Changed 13 years ago by Freddie Akeroyd

(In [523]) Add in script for running a single test e.g.

./run_test.sh FrameworkManagerTest

refs #31

comment:127 Changed 13 years ago by Nick Draper

  • Status changed from new to closed
  • Resolution set to fixed

comment:128 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 879

Note: See TracTickets for help on using tickets.