-
Notifications
You must be signed in to change notification settings - Fork 9
/
wf.yml
87 lines (76 loc) · 2.19 KB
/
wf.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# paths in the workflow are relative to the root of the project, so
# this workflow is expected to be executed as:
#
# cd skyhookdm-ceph/
# popper run -f ci/wf.yml
steps:
- id: checkout parent repo
uses: docker://alpine/git:v2.24.1
runs: ["sh"]
args:
- -c
- |
git clone --recursive --depth=1 --branch=skyhookdm-$_CEPH_VERSION https://github.com/uccross/skyhookdm-ceph
cp -r CMakeLists.txt src/ skyhookdm-ceph/src/cls/tabular/
rm -r CMakeLists.txt src/
mv skyhookdm-ceph/* .
#- id: build the builder
# uses: docker://docker:19.03.10
# env:
# DOCKER_BUILDKIT: "1"
# args:
# - build
# - --tag=uccross/skyhookdm-builder:$_CEPH_RELEASE
# - --build-arg=BUILDKIT_INLINE_CACHE=1
# - --build-arg=CEPH_RELEASE=$_CEPH_RELEASE
# - --file=src/cls/tabular/ci/Dockerfile
# - src/cls/tabular/ci
#
#
- id: build libcls_tabular
uses: docker://uccross/skyhookdm-builder:$_CEPH_RELEASE
args: ["cls_tabular", "run-query", "ceph_test_skyhook_query", "sky_tabular_flatflex_writer"]
env:
CMAKE_FLAGS: "-DBOOST_J=4 -DWITH_PYTHON3=OFF"
BUILD_THREADS: "4"
- id: extend rook.io image by adding libcls_tabular
uses: docker://docker:19.03.10
env:
DOCKER_BUILDKIT: "1"
args:
- 'build'
- --build-arg=CEPH_RELEASE=$_CEPH_RELEASE
- --tag=uccross/skyhookdm-ceph:$_CEPH_RELEASE
- --file=ci/Dockerfile.rook
- .
# image contains:
# - upstream packages for release
# - skyhook libcls_tabular library and run-query binary
# - runtime dependencies for the above (such as libarrow, libhdf5, etc)
- id: run tests
uses: docker://uccross/skyhookdm-ceph:$_CEPH_RELEASE
skip_pull: true
runs: ['bash']
env:
LD_LIBRARY_PATH: /usr/lib64/ceph
args:
- -c
- |
# download test data if it doesn't exist
if [[ ! -d ./data ]]; then
mkdir -p data
pushd data/
for i in $(seq 0 9); do
curl -LO https://users.soe.ucsc.edu/~jlefevre/skyhookdb/testdata/obj000000$i.bin
done
popd
fi
# boot a single-osd instance
ci/micro-osd.sh test
# copy conf to where test expects it (PWD)
cp test/ceph.conf ./
# run test
exec ceph_test_skyhook_query
# todo (if branch == $_CEPH_VERSION)
# - push builder
# - push skyhook