1version: "3"
2
3services:
4
5  common: &common
6    image: foundationdb-build:0.0.4
7    build:
8      context: .
9      dockerfile: Dockerfile
10
11  build-setup: &build-setup
12    <<: *common
13    depends_on: [common]
14    #debuginfo builds need the build path to be longer than
15    #the path where debuginfo sources are places. Crazy, yes,
16    #see the manual for CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX.
17    volumes:
18      - ../..:/foundationdb/deep/directory/as/debuginfo/doesnt/work/otherwise/foundationdb
19      - ${BUILDDIR}:/foundationdb/deep/directory/as/debuginfo/doesnt/work/otherwise/build
20    working_dir: /foundationdb/deep/directory/as/debuginfo/doesnt/work/otherwise/build
21
22  configure: &configure
23    <<: *build-setup
24    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh configure
25
26  build: &build
27    <<: *build-setup
28    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh build
29
30  build-fast: &build-fast
31    <<: *build-setup
32    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh build/fast
33
34  rpm: &rpm
35    <<: *build-setup
36    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh rpm
37
38  deb: &deb
39    <<: *build-setup
40    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh deb
41
42  linux-pkgs:
43    <<: *build-setup
44    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh linux-pkgs
45
46  package: &package
47    <<: *build-setup
48    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh package
49
50  package-fast: &package-fast
51    <<: *build-setup
52    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh package/fast
53
54  test-fast: &test-fast
55    <<: *build-setup
56    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh test-fast
57
58  test: &test
59    <<: *build-setup
60    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh test
61
62  snowflake-ci: &snowflake-ci
63    <<: *build-setup
64    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash ../foundationdb/build/cmake/build.sh package test-fast
65
66  shell:
67    <<: *build-setup
68    command: scl enable devtoolset-7 rh-ruby24 rh-python36 python27 -- bash
69
70