ClickHouse/.github/workflows/main.yml
2021-11-16 11:59:38 +03:00

1433 lines
52 KiB
YAML

name: CIGithubActions
on: # yamllint disable-line rule:truthy
pull_request:
types:
- labeled
- unlabeled
- synchronize
- reopened
- opened
branches:
- master
##########################################################################################
##################################### SMALL CHECKS #######################################
##########################################################################################
jobs:
CheckLabels:
runs-on: [self-hosted, style-checker]
steps:
- name: Check out repository code
uses: actions/checkout@v2
- name: Labels check
run: |
cd $GITHUB_WORKSPACE/tests/ci
python3 run_check.py
DockerHubPush:
needs: CheckLabels
runs-on: [self-hosted, style-checker]
steps:
- name: Check out repository code
uses: actions/checkout@v2
- name: Images check
run: |
cd $GITHUB_WORKSPACE/tests/ci
python3 docker_images_check.py
- name: Upload images files to artifacts
uses: actions/upload-artifact@v2
with:
name: changed_images
path: ${{ runner.temp }}/docker_images_check/changed_images.json
StyleCheck:
needs: DockerHubPush
runs-on: [self-hosted, style-checker]
steps:
- name: Download changed images
uses: actions/download-artifact@v2
with:
name: changed_images
path: ${{ runner.temp }}/style_check
- name: Check out repository code
uses: actions/checkout@v2
- name: Style Check
env:
TEMP_PATH: ${{ runner.temp }}/style_check
run: |
cd $GITHUB_WORKSPACE/tests/ci
python3 style_check.py
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
DocsCheck:
needs: DockerHubPush
runs-on: [self-hosted, func-tester]
steps:
- name: Download changed images
uses: actions/download-artifact@v2
with:
name: changed_images
path: ${{ runner.temp }}/docs_check
- name: Check out repository code
uses: actions/checkout@v2
- name: Docs Check
env:
TEMP_PATH: ${{runner.temp}}/docs_check
REPO_COPY: ${{runner.temp}}/docs_check/ClickHouse
run: |
cp -r $GITHUB_WORKSPACE $TEMP_PATH
cd $REPO_COPY/tests/ci
python3 docs_check.py
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
FastTest:
needs: DockerHubPush
if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
runs-on: [self-hosted, builder]
steps:
- name: Check out repository code
uses: actions/checkout@v2
- name: Fast Test
env:
TEMP_PATH: ${{runner.temp}}/fasttest
REPO_COPY: ${{runner.temp}}/fasttest/ClickHouse
CACHES_PATH: ${{runner.temp}}/../ccaches
run: |
sudo rm -fr $TEMP_PATH
mkdir -p $TEMP_PATH
cp -r $GITHUB_WORKSPACE $TEMP_PATH
cd $REPO_COPY/tests/ci && python3 fast_test_check.py
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
PVSCheck:
needs: DockerHubPush
if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
runs-on: [self-hosted, func-tester]
steps:
- name: Check out repository code
uses: actions/checkout@v2
with:
submodules: 'recursive'
- name: PVS Check
env:
TEMP_PATH: ${{runner.temp}}/pvs_check
REPO_COPY: ${{runner.temp}}/pvs_check/ClickHouse
run: |
sudo rm -fr $TEMP_PATH
mkdir -p $TEMP_PATH
cp -r $GITHUB_WORKSPACE $TEMP_PATH
cd $REPO_COPY/tests/ci && python3 pvs_check.py
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
CompatibilityCheck:
needs: [BuilderDebRelease]
if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
runs-on: [self-hosted, style-checker]
steps:
- name: Check out repository code
uses: actions/checkout@v2
- name: Download json reports
uses: actions/download-artifact@v2
with:
path: ${{runner.temp}}/reports_dir
- name: CompatibilityCheck
env:
TEMP_PATH: ${{runner.temp}}/compatibility_check
REPO_COPY: ${{runner.temp}}/compatibility_check/ClickHouse
REPORTS_PATH: ${{runner.temp}}/reports_dir
run: |
sudo rm -fr $TEMP_PATH
mkdir -p $TEMP_PATH
cp -r $GITHUB_WORKSPACE $TEMP_PATH
cd $REPO_COPY/tests/ci && python3 compatibility_check.py 0
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
SplitBuildSmokeTest:
needs: [BuilderDebSplitted]
if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
runs-on: [self-hosted, style-checker]
steps:
- name: Check out repository code
uses: actions/checkout@v2
- name: Download json reports
uses: actions/download-artifact@v2
with:
path: ${{runner.temp}}/reports_dir
- name: Split build check
env:
TEMP_PATH: ${{runner.temp}}/split_build_check
REPO_COPY: ${{runner.temp}}/split_build_check/ClickHouse
REPORTS_PATH: ${{runner.temp}}/reports_dir
run: |
sudo rm -fr $TEMP_PATH
mkdir -p $TEMP_PATH
cp -r $GITHUB_WORKSPACE $TEMP_PATH
cd $REPO_COPY/tests/ci && python3 split_build_smoke_check.py
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
##########################################################################################
##################################### ORDINARY BUILDS ####################################
##########################################################################################
# BuilderDebRelease:
# needs: DockerHubPush
# if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
# runs-on: [self-hosted, builder]
# steps:
# - name: Download changed images
# uses: actions/download-artifact@v2
# with:
# name: changed_images
# path: ${{ runner.temp }}/images_path
# - name: Check out repository code
# uses: actions/checkout@v2
# with:
# submodules: 'recursive'
# fetch-depth: 0 # otherwise we will have no info about contributors
# - name: Build
# env:
# TEMP_PATH: ${{runner.temp}}/build_check
# IMAGES_PATH: ${{runner.temp}}/images_path
# REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
# CACHES_PATH: ${{runner.temp}}/../ccaches
# CHECK_NAME: 'ClickHouse build check (actions)'
# BUILD_NUMBER: 0
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
# - name: Upload build URLs to artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ env.BUILD_NAME }}
# path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# BuilderBinRelease:
# needs: DockerHubPush
# if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
# runs-on: [self-hosted, builder]
# steps:
# - name: Download changed images
# uses: actions/download-artifact@v2
# with:
# name: changed_images
# path: ${{ runner.temp }}/images_path
# - name: Check out repository code
# uses: actions/checkout@v2
# with:
# submodules: 'recursive'
# fetch-depth: 0 # otherwise we will have no info about contributors
# - name: Build
# env:
# TEMP_PATH: ${{runner.temp}}/build_check
# IMAGES_PATH: ${{runner.temp}}/images_path
# REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
# CACHES_PATH: ${{runner.temp}}/../ccaches
# CHECK_NAME: 'ClickHouse build check (actions)'
# BUILD_NUMBER: 9
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
# - name: Upload build URLs to artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ env.BUILD_NAME }}
# path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
BuilderDebAsan:
needs: DockerHubPush
if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
runs-on: [self-hosted, builder]
steps:
- name: Download changed images
uses: actions/download-artifact@v2
with:
name: changed_images
path: ${{ runner.temp }}/images_path
- name: Check out repository code
uses: actions/checkout@v2
with:
submodules: 'recursive'
fetch-depth: 0 # otherwise we will have no info about contributors
- name: Build
env:
TEMP_PATH: ${{runner.temp}}/build_check
IMAGES_PATH: ${{runner.temp}}/images_path
REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
CACHES_PATH: ${{runner.temp}}/../ccaches
CHECK_NAME: 'ClickHouse build check (actions)'
BUILD_NUMBER: 3
run: |
sudo rm -fr $TEMP_PATH
mkdir -p $TEMP_PATH
cp -r $GITHUB_WORKSPACE $TEMP_PATH
cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
- name: Upload build URLs to artifacts
uses: actions/upload-artifact@v2
with:
name: ${{ env.BUILD_NAME }}
path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
# BuilderDebUBsan:
# needs: DockerHubPush
# if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
# runs-on: [self-hosted, builder]
# steps:
# - name: Download changed images
# uses: actions/download-artifact@v2
# with:
# name: changed_images
# path: ${{ runner.temp }}/images_path
# - name: Check out repository code
# uses: actions/checkout@v2
# with:
# submodules: 'recursive'
# fetch-depth: 0 # otherwise we will have no info about contributors
# - name: Build
# env:
# TEMP_PATH: ${{runner.temp}}/build_check
# IMAGES_PATH: ${{runner.temp}}/images_path
# REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
# CACHES_PATH: ${{runner.temp}}/../ccaches
# CHECK_NAME: 'ClickHouse build check (actions)'
# BUILD_NUMBER: 4
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
# - name: Upload build URLs to artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ env.BUILD_NAME }}
# path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# BuilderDebTsan:
# needs: DockerHubPush
# if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
# runs-on: [self-hosted, builder]
# steps:
# - name: Download changed images
# uses: actions/download-artifact@v2
# with:
# name: changed_images
# path: ${{ runner.temp }}/images_path
# - name: Check out repository code
# uses: actions/checkout@v2
# with:
# submodules: 'recursive'
# fetch-depth: 0 # otherwise we will have no info about contributors
# - name: Build
# env:
# TEMP_PATH: ${{runner.temp}}/build_check
# IMAGES_PATH: ${{runner.temp}}/images_path
# REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
# CACHES_PATH: ${{runner.temp}}/../ccaches
# CHECK_NAME: 'ClickHouse build check (actions)'
# BUILD_NUMBER: 5
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
# - name: Upload build URLs to artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ env.BUILD_NAME }}
# path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# BuilderDebMsan:
# needs: DockerHubPush
# if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
# runs-on: [self-hosted, builder]
# steps:
# - name: Download changed images
# uses: actions/download-artifact@v2
# with:
# name: changed_images
# path: ${{ runner.temp }}/images_path
# - name: Check out repository code
# uses: actions/checkout@v2
# with:
# submodules: 'recursive'
# fetch-depth: 0 # otherwise we will have no info about contributors
# - name: Build
# env:
# TEMP_PATH: ${{runner.temp}}/build_check
# IMAGES_PATH: ${{runner.temp}}/images_path
# REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
# CACHES_PATH: ${{runner.temp}}/../ccaches
# CHECK_NAME: 'ClickHouse build check (actions)'
# BUILD_NUMBER: 6
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
# - name: Upload build URLs to artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ env.BUILD_NAME }}
# path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# BuilderDebDebug:
# needs: DockerHubPush
# if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
# runs-on: [self-hosted, builder]
# steps:
# - name: Download changed images
# uses: actions/download-artifact@v2
# with:
# name: changed_images
# path: ${{ runner.temp }}/images_path
# - name: Check out repository code
# uses: actions/checkout@v2
# with:
# submodules: 'recursive'
# fetch-depth: 0 # otherwise we will have no info about contributors
# - name: Build
# env:
# TEMP_PATH: ${{runner.temp}}/build_check
# IMAGES_PATH: ${{runner.temp}}/images_path
# REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
# CACHES_PATH: ${{runner.temp}}/../ccaches
# CHECK_NAME: 'ClickHouse build check (actions)'
# BUILD_NUMBER: 7
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
# - name: Upload build URLs to artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ env.BUILD_NAME }}
# path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
###########################################################################################
###################################### SPECIAL BUILDS #####################################
###########################################################################################
# BuilderDebSplitted:
# needs: DockerHubPush
# if: ${{ !contains(github.event.pull_request.labels.*.name, 'pr-documentation') && !contains(github.event.pull_request.labels.*.name, 'pr-doc-fix') }}
# runs-on: [self-hosted, builder]
# steps:
# - name: Download changed images
# uses: actions/download-artifact@v2
# with:
# name: changed_images
# path: ${{ runner.temp }}/images_path
# - name: Check out repository code
# uses: actions/checkout@v2
# with:
# submodules: 'recursive'
# fetch-depth: 0 # otherwise we will have no info about contributors
# - name: Build
# env:
# TEMP_PATH: ${{runner.temp}}/build_check
# IMAGES_PATH: ${{runner.temp}}/images_path
# REPO_COPY: ${{runner.temp}}/build_check/ClickHouse
# CACHES_PATH: ${{runner.temp}}/../ccaches
# CHECK_NAME: 'ClickHouse special build check (actions)'
# BUILD_NUMBER: 1
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci && python3 build_check.py "$CHECK_NAME" $BUILD_NUMBER
# - name: Upload build URLs to artifacts
# uses: actions/upload-artifact@v2
# with:
# name: ${{ env.BUILD_NAME }}
# path: ${{ runner.temp }}/build_check/${{ env.BUILD_NAME }}.json
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
#############################################################################################
###################################### BUILD REPORTER #######################################
#############################################################################################
# BuilderReport:
# needs:
# - BuilderDebRelease
# - BuilderBinRelease
# - BuilderDebAsan
# - BuilderDebTsan
# - BuilderDebUBsan
# - BuilderDebMsan
# - BuilderDebDebug
# - BuilderDebSplitted
# runs-on: [self-hosted, style-checker]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Report Builder
# env:
# TEMP_PATH: ${{runner.temp}}/report_check
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'ClickHouse build check (actions)'
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cd $GITHUB_WORKSPACE/tests/ci
# python3 build_report_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
###############################################################################################
############################ FUNCTIONAl STATELESS TESTS #######################################
###############################################################################################
# FunctionalStatelessTestRelease:
# needs: [BuilderDebRelease]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateless_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateless tests (release, actions)'
# REPO_COPY: ${{runner.temp}}/stateless_debug/ClickHouse
# KILL_TIMEOUT: 10800
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatelessTestAsan:
# needs: [BuilderDebAsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateless_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateless tests (address, actions)'
# REPO_COPY: ${{runner.temp}}/stateless_debug/ClickHouse
# KILL_TIMEOUT: 10800
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatelessTestTsan:
# needs: [BuilderDebTsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateless_tsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateless tests (thread, actions)'
# REPO_COPY: ${{runner.temp}}/stateless_tsan/ClickHouse
# KILL_TIMEOUT: 10800
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatelessTestUBsan:
# needs: [BuilderDebUBsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateless_ubsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateless tests (ubsan, actions)'
# REPO_COPY: ${{runner.temp}}/stateless_ubsan/ClickHouse
# KILL_TIMEOUT: 10800
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatelessTestMsan:
# needs: [BuilderDebMsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateless_memory
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateless tests (memory, actions)'
# REPO_COPY: ${{runner.temp}}/stateless_memory/ClickHouse
# KILL_TIMEOUT: 10800
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatelessTestDebug:
# needs: [BuilderDebDebug]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateless_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateless tests (debug, actions)'
# REPO_COPY: ${{runner.temp}}/stateless_debug/ClickHouse
# KILL_TIMEOUT: 10800
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatelessTestFlakyCheck:
# needs: [BuilderDebAsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateless_flaky_asan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateless tests flaky check (address, actions)'
# REPO_COPY: ${{runner.temp}}/stateless_flaky_asan/ClickHouse
# KILL_TIMEOUT: 3600
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
###############################################################################################
############################# FUNCTIONAl STATEFUL TESTS #######################################
###############################################################################################
# FunctionalStatefulTestRelease:
# needs: [BuilderDebRelease]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateful_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateful tests (release, actions)'
# REPO_COPY: ${{runner.temp}}/stateful_debug/ClickHouse
# KILL_TIMEOUT: 3600
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatefulTestAsan:
# needs: [BuilderDebAsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateful_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateful tests (address, actions)'
# REPO_COPY: ${{runner.temp}}/stateful_debug/ClickHouse
# KILL_TIMEOUT: 3600
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatefulTestTsan:
# needs: [BuilderDebTsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateful_tsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateful tests (thread, actions)'
# REPO_COPY: ${{runner.temp}}/stateful_tsan/ClickHouse
# KILL_TIMEOUT: 3600
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatefulTestMsan:
# needs: [BuilderDebMsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateful_msan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateful tests (memory, actions)'
# REPO_COPY: ${{runner.temp}}/stateful_msan/ClickHouse
# KILL_TIMEOUT: 3600
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatefulTestUBsan:
# needs: [BuilderDebUBsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateful_ubsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateful tests (ubsan, actions)'
# REPO_COPY: ${{runner.temp}}/stateful_ubsan/ClickHouse
# KILL_TIMEOUT: 3600
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FunctionalStatefulTestDebug:
# needs: [BuilderDebDebug]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Functional test
# env:
# TEMP_PATH: ${{runner.temp}}/stateful_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stateful tests (debug, actions)'
# REPO_COPY: ${{runner.temp}}/stateful_debug/ClickHouse
# KILL_TIMEOUT: 3600
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 functional_test_check.py "$CHECK_NAME" $KILL_TIMEOUT
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
###############################################################################################
########################################## STRESS TESTS #######################################
###############################################################################################
# StressTestAsan:
# needs: [BuilderDebAsan]
# runs-on: [self-hosted, stress-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Stress test
# env:
# TEMP_PATH: ${{runner.temp}}/stress_thread
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stress test (address, actions)'
# REPO_COPY: ${{runner.temp}}/stress_thread/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 stress_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# StressTestTsan:
# needs: [BuilderDebTsan]
# runs-on: [self-hosted, stress-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Stress test
# env:
# TEMP_PATH: ${{runner.temp}}/stress_thread
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stress test (thread, actions)'
# REPO_COPY: ${{runner.temp}}/stress_thread/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 stress_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# StressTestMsan:
# needs: [BuilderDebMsan]
# runs-on: [self-hosted, stress-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Stress test
# env:
# TEMP_PATH: ${{runner.temp}}/stress_memory
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stress test (memory, actions)'
# REPO_COPY: ${{runner.temp}}/stress_memory/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 stress_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# StressTestUBsan:
# needs: [BuilderDebUBsan]
# runs-on: [self-hosted, stress-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Stress test
# env:
# TEMP_PATH: ${{runner.temp}}/stress_undefined
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stress test (undefined, actions)'
# REPO_COPY: ${{runner.temp}}/stress_undefined/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 stress_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# StressTestDebug:
# needs: [BuilderDebDebug]
# runs-on: [self-hosted, stress-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Stress test
# env:
# TEMP_PATH: ${{runner.temp}}/stress_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Stress test (debug, actions)'
# REPO_COPY: ${{runner.temp}}/stress_debug/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 stress_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
###############################################################################################
###################################### AST FUZZERS ############################################
###############################################################################################
# ASTFuzzerTestAsan:
# needs: [BuilderDebAsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Fuzzer
# env:
# TEMP_PATH: ${{runner.temp}}/ast_fuzzer_asan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'AST fuzzer (ASan, actions)'
# REPO_COPY: ${{runner.temp}}/ast_fuzzer_asan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 ast_fuzzer_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# ASTFuzzerTestTsan:
# needs: [BuilderDebTsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Fuzzer
# env:
# TEMP_PATH: ${{runner.temp}}/ast_fuzzer_tsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'AST fuzzer (TSan, actions)'
# REPO_COPY: ${{runner.temp}}/ast_fuzzer_tsan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 ast_fuzzer_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# ASTFuzzerTestUBSan:
# needs: [BuilderDebUBsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Fuzzer
# env:
# TEMP_PATH: ${{runner.temp}}/ast_fuzzer_ubsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'AST fuzzer (UBSan, actions)'
# REPO_COPY: ${{runner.temp}}/ast_fuzzer_ubsan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 ast_fuzzer_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# ASTFuzzerTestMSan:
# needs: [BuilderDebMsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Fuzzer
# env:
# TEMP_PATH: ${{runner.temp}}/ast_fuzzer_msan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'AST fuzzer (MSan, actions)'
# REPO_COPY: ${{runner.temp}}/ast_fuzzer_msan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 ast_fuzzer_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# ASTFuzzerTestDebug:
# needs: [BuilderDebDebug]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Fuzzer
# env:
# TEMP_PATH: ${{runner.temp}}/ast_fuzzer_debug
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'AST fuzzer (debug, actions)'
# REPO_COPY: ${{runner.temp}}/ast_fuzzer_debug/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 ast_fuzzer_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
##############################################################################################
############################## INTEGRATION TESTS #############################################
##############################################################################################
IntegrationTestsAsan:
needs: [BuilderDebAsan]
runs-on: [self-hosted, stress-tester]
steps:
- name: Download json reports
uses: actions/download-artifact@v2
with:
path: ${{runner.temp}}/reports_dir
- name: Check out repository code
uses: actions/checkout@v2
- name: Integration test
env:
TEMP_PATH: ${{runner.temp}}/integration_tests_asan
REPORTS_PATH: ${{runner.temp}}/reports_dir
CHECK_NAME: 'Integration tests (asan, actions)'
REPO_COPY: ${{runner.temp}}/integration_tests_asan/ClickHouse
run: |
sudo rm -fr $TEMP_PATH
mkdir -p $TEMP_PATH
cp -r $GITHUB_WORKSPACE $TEMP_PATH
cd $REPO_COPY/tests/ci
python3 integration_test_check.py "$CHECK_NAME"
- name: Cleanup
if: always()
run: |
docker kill $(docker ps -q) ||:
docker rm -f $(docker ps -a -q) ||:
sudo rm -fr $TEMP_PATH
##############################################################################################
##################################### UNIT TESTS #############################################
##############################################################################################
# UnitTestsAsan:
# needs: [BuilderDebAsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Unit test
# env:
# TEMP_PATH: ${{runner.temp}}/unit_tests_asan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Unit tests (asan, actions)'
# REPO_COPY: ${{runner.temp}}/unit_tests_asan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 unit_tests_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# UnitTestsReleaseClang:
# needs: [BuilderBinRelease]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Unit test
# env:
# TEMP_PATH: ${{runner.temp}}/unit_tests_asan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Unit tests (release-clang, actions)'
# REPO_COPY: ${{runner.temp}}/unit_tests_asan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 unit_tests_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# UnitTestsTsan:
# needs: [BuilderDebTsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Unit test
# env:
# TEMP_PATH: ${{runner.temp}}/unit_tests_tsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Unit tests (tsan, actions)'
# REPO_COPY: ${{runner.temp}}/unit_tests_tsan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 unit_tests_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# UnitTestsMsan:
# needs: [BuilderDebMsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Unit test
# env:
# TEMP_PATH: ${{runner.temp}}/unit_tests_msan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Unit tests (msan, actions)'
# REPO_COPY: ${{runner.temp}}/unit_tests_msan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 unit_tests_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# UnitTestsUBsan:
# needs: [BuilderDebUBsan]
# runs-on: [self-hosted, func-tester]
# steps:
# - name: Download json reports
# uses: actions/download-artifact@v2
# with:
# path: ${{runner.temp}}/reports_dir
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Unit test
# env:
# TEMP_PATH: ${{runner.temp}}/unit_tests_ubsan
# REPORTS_PATH: ${{runner.temp}}/reports_dir
# CHECK_NAME: 'Unit tests (msan, actions)'
# REPO_COPY: ${{runner.temp}}/unit_tests_ubsan/ClickHouse
# run: |
# sudo rm -fr $TEMP_PATH
# mkdir -p $TEMP_PATH
# cp -r $GITHUB_WORKSPACE $TEMP_PATH
# cd $REPO_COPY/tests/ci
# python3 unit_tests_check.py "$CHECK_NAME"
# - name: Cleanup
# if: always()
# run: |
# docker kill $(docker ps -q) ||:
# docker rm -f $(docker ps -a -q) ||:
# sudo rm -fr $TEMP_PATH
# FinishCheck:
# needs:
# - StyleCheck
# - DockerHubPush
# - CheckLabels
# - BuilderReport
# - FastTest
# - FunctionalStatelessTestDebug
# - FunctionalStatelessTestRelease
# - FunctionalStatelessTestAsan
# - FunctionalStatelessTestTsan
# - FunctionalStatelessTestMsan
# - FunctionalStatelessTestUBsan
# - FunctionalStatefulTestDebug
# - FunctionalStatefulTestRelease
# - FunctionalStatefulTestAsan
# - FunctionalStatefulTestTsan
# - FunctionalStatefulTestMsan
# - FunctionalStatefulTestUBsan
# - DocsCheck
# - StressTestDebug
# - StressTestAsan
# - StressTestTsan
# - StressTestMsan
# - StressTestUBsan
# - ASTFuzzerTestDebug
# - ASTFuzzerTestAsan
# - ASTFuzzerTestTsan
# - ASTFuzzerTestMSan
# - ASTFuzzerTestUBSan
# - PVSCheck
# - UnitTestsAsan
# - UnitTestsTsan
# - UnitTestsMsan
# - UnitTestsUBsan
# - UnitTestsReleaseClang
# - SplitBuildSmokeTest
# - CompatibilityCheck
# runs-on: [self-hosted, style-checker]
# steps:
# - name: Check out repository code
# uses: actions/checkout@v2
# - name: Finish label
# run: |
# cd $GITHUB_WORKSPACE/tests/ci
# python3 finish_check.py