@@ -7,32 +7,68 @@ compiler:
7
7
env :
8
8
global :
9
9
- PREFIX=$(mktemp -d /tmp/mongo-cxx-driver-install.XXXXXX || exit 1)
10
+ - MONGO_REPO="http://repo.mongodb.com/apt/ubuntu"
11
+ - REPO_TYPE="precise/mongodb-enterprise/2.6 multiverse"
12
+ - SOURCES_LOC="/etc/apt/sources.list.d/mongodb-enterprise.list"
13
+ - KEY_SERVER="hkp://keyserver.ubuntu.com:80"
14
+ - MONGOD_PARAMS="--setParameter=enableTestCommands=1"
15
+ - MONGOD_OPTS="--port 27999 --httpinterface --dbpath ./data --fork --logpath mongod.log ${MONGOD_PARAMS}"
16
+ - COMPAT_FLAGS="--use-system-boost --full"
10
17
11
18
# Setup required repositories before installation
12
19
before_install :
20
+ # GCC 4.8.1
21
+ - if [ "$CXX" == "g++" ]; then sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test; fi
22
+
23
+ # Clang 3.4
24
+ - if [ "$CXX" == "clang++" ]; then sudo add-apt-repository -y ppa:h-rayflood/llvm; fi
25
+
26
+ # Boost 1.49
13
27
- sudo add-apt-repository -y ppa:jkeiren/ppa
28
+
29
+ # MongoDB Enterprise Edition 2.6
30
+ - sudo apt-key adv --keyserver ${KEY_SERVER} --recv 7F0CEB10
31
+ - echo "deb ${MONGO_REPO} ${REPO_TYPE}" | sudo tee ${SOURCES_LOC}
32
+
33
+ # Update all the repositories
14
34
- sudo apt-get update -qq
15
35
16
- # Install Boost 1.49 dependencies via PPA
17
36
install :
37
+ # GCC 4.8.1
38
+ - if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
39
+ - if [ "$CXX" = "g++" ]; then export CXX="g++-4.8"; export CC="gcc-4.8"; fi
40
+
41
+ # Clang 3.4
42
+ - if [ "$CXX" == "clang++" ]; then sudo apt-get install --allow-unauthenticated -qq clang-3.4; fi
43
+ - if [ "$CXX" == "clang++" ]; then export CXX="clang++-3.4"; export CC="clang-3.4"; fi
44
+
45
+ # Install Boost 1.49 dependencies via PPA
18
46
- sudo apt-get install -qq
19
47
libboost1.49-dev
20
48
libboost-program-options1.49-dev
21
49
libboost-filesystem1.49-dev
22
50
libboost-thread1.49-dev
23
51
52
+ # Install MongoDB Enterprise and let smoke drive
53
+ - sudo apt-get install mongodb-enterprise
54
+ - sudo stop mongod
55
+ - mkdir data
56
+ - mongod ${MONGOD_OPTS}
57
+
58
+ before_script :
59
+ # Set SCONS_FLAGS based on new $CXX and $CC
60
+ - $CXX --version
61
+ - export SCONS_FLAGS="-j3 --mute --prefix=$PREFIX --ssl --use-sasl-client --dbg=on --cxx=$CXX --cc=$CC $COMPAT_FLAGS"
62
+
63
+ # Build the driver
64
+ - scons $SCONS_FLAGS mongoclient
65
+
66
+ # Install the driver
67
+ - scons $SCONS_FLAGS install-mongoclient
68
+
69
+ # Check the installation
70
+ - scons $SCONS_FLAGS check-install-mongoclient
71
+
24
72
script :
25
- - scons
26
- -j2
27
- --mute
28
- --quiet
29
- --prefix=$PREFIX
30
- --use-system-boost
31
- --full
32
- --sharedclient
33
- --ssl
34
- --use-sasl-client
35
- --dbg=on
36
- test
37
- clientTests
38
- check-install-mongoclient
73
+ # Test the driver
74
+ - scons $SCONS_FLAGS test clientTests
0 commit comments