Skip to content

Commit cac2a03

Browse files
authored
CH server 22.3 for linux workflow (#240)
* Using docker image clickhouse-server:22.3
1 parent 3cd6f52 commit cac2a03

File tree

1 file changed

+19
-12
lines changed

1 file changed

+19
-12
lines changed

.github/workflows/linux.yml

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ on:
88

99
env:
1010
BUILD_TYPE: Release
11-
CH_SERVER_VERSION: 21.3.17.2
11+
CLICKHOUSE_SERVER_IMAGE: "clickhouse/clickhouse-server:22.3"
12+
1213
jobs:
1314
build:
1415
runs-on: ubuntu-latest
@@ -48,7 +49,16 @@ jobs:
4849
- uses: actions/checkout@v2
4950

5051
- name: Install dependencies
51-
run: sudo apt-get install -y cmake ${{ matrix.INSTALL }} ${{ matrix.INSTALL_SSL }}
52+
run: sudo apt-get install -y docker cmake ${{ matrix.INSTALL }} ${{ matrix.INSTALL_SSL }}
53+
54+
- name: Install dependencies - Docker
55+
run: |
56+
sudo apt remove -y docker docker-engine docker.io containerd runc
57+
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
58+
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
59+
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
60+
sudo apt update -q
61+
sudo apt install docker-ce docker-ce-cli containerd.io
5262
5363
- name: Configure CMake
5464
run: |
@@ -62,17 +72,14 @@ jobs:
6272
- name: Build
6373
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --target all
6474

65-
- name: Start ClickHouse server
75+
- name: Test - Start ClickHouse server in background
6676
run: |
67-
sudo apt-get install apt-transport-https ca-certificates dirmngr
68-
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv E0C56BD4
69-
echo "deb https://repo.clickhouse.com/deb/stable/ main/" | sudo tee /etc/apt/sources.list.d/clickhouse.list
70-
sudo apt-get update
71-
sudo apt-get install -y \
72-
clickhouse-server=${{env.CH_SERVER_VERSION}} \
73-
clickhouse-client=${{env.CH_SERVER_VERSION}} \
74-
clickhouse-common-static=${{env.CH_SERVER_VERSION}}
75-
sudo service clickhouse-server start
77+
docker pull ${CLICKHOUSE_SERVER_IMAGE}
78+
docker run -d --name clickhouse -p 9000:9000 ${CLICKHOUSE_SERVER_IMAGE}
79+
docker ps -a
80+
docker stats -a --no-stream
81+
## Check and wait until CH is ready to accept connections
82+
docker exec clickhouse bash -c 'for i in {1..10}; do echo checking if clickhouse server is started attempt \#$i; if ( grep -q "<Information> Application: Ready for connections." /var/log/clickhouse-server/clickhouse-server.log ); then echo seems like clickhouse server is started; exit 0; fi; sleep 1; done; exit -1'
7683
7784
- name: Test
7885
working-directory: ${{github.workspace}}/build/ut

0 commit comments

Comments
 (0)