forked from apache/doris
-
Notifications
You must be signed in to change notification settings - Fork 2
83 lines (69 loc) · 2.84 KB
/
be-ut-clang.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
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
name: BE UT (Clang)
on:
pull_request:
concurrency:
group: ${{ github.ref }} (BE UT Clang)
cancel-in-progress: true
jobs:
run-ut:
name: BE UT (Clang)
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v3
with:
persist-credentials: false
submodules: recursive
- name: Ccache ${{ github.ref }}
uses: ./.github/actions/ccache-action
with:
key: ${{ github.ref }} (BE UT Clang)
max-size: "1G"
- name: Paths filter
uses: ./.github/actions/paths-filter
id: filter
with:
filters: |
be_changes:
- 'be/**'
- 'gensrc/proto/**'
- 'gensrc/thrift/**'
- name: Run UT ${{ github.ref }}
if: ${{ steps.filter.outputs.be_changes == 'true' }}
run: |
export DEFAULT_DIR='/opt/doris'
export PATH="${DEFAULT_DIR}/ldb-toolchain/bin/:${DEFAULT_DIR}/thirdparty/installed/bin/:${PATH}"
export DORIS_THIRDPARTY="${DEFAULT_DIR}/thirdparty"
mkdir "${DEFAULT_DIR}"
wget https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.12/ldb_toolchain_gen.sh \
-q -O /tmp/ldb_toolchain_gen.sh
bash /tmp/ldb_toolchain_gen.sh "${DEFAULT_DIR}/ldb-toolchain"
mkdir -p "${DORIS_THIRDPARTY}/installed"
docker run --rm --mount=type=bind,source="${DORIS_THIRDPARTY}/installed",target=/installed \
apache/doris:build-env-ldb-toolchain-latest bash -c 'mv /var/local/thirdparty/installed/* /installed'
sudo apt update
sudo apt upgrade --yes
sudo DEBIAN_FRONTEND=noninteractive apt install --yes tzdata byacc
# set timezone
sudo ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
sudo dpkg-reconfigure --frontend noninteractive tzdata
DORIS_TOOLCHAIN=clang ./run-be-ut.sh -j "$(nproc)" --run --clean
- name: Skip UT ${{ github.ref }}
if: ${{ steps.filter.outputs.be_changes == 'false' }}
run: echo 'No need to run.'