Skip to content

Migrated Linux CIs to use containers from a separate repo #491

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 34 additions & 35 deletions .drone.star
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,11 @@
#

_triggers = { "branch": [ "master", "develop" ] }
_container_tag = 'e9696175806589fc91e160399eedeac8fdc88c68'
_win_container_tag = 'e7bd656c3515263f9b3c69a2d73d045f6a0fed72'


def _image(name):
return 'ghcr.io/anarthal-containers/{}:{}'.format(name, _container_tag)
return 'ghcr.io/anarthal/cpp-ci-containers/{}'.format(name)

def _win_image(name):
return 'ghcr.io/anarthal-containers/{}:{}'.format(name, _win_container_tag)
Expand Down Expand Up @@ -122,7 +121,7 @@ def _pipeline(
"steps": steps,
"services": [{
"name": "mysql",
"image": "ghcr.io/anarthal-containers/ci-db:{}-{}".format(db, _container_tag),
"image": "ghcr.io/anarthal/cpp-ci-containers/{}".format(db),
"volumes": [{
"name": "mysql-socket",
"path": "/var/run/mysqld"
Expand Down Expand Up @@ -150,7 +149,7 @@ def linux_b2(
valgrind=0,
arch='amd64',
fail_if_no_openssl=1,
db='mysql-8.4.1',
db='mysql-8_4_1:1',
):
command = _b2_command(
source_dir='$(pwd)',
Expand Down Expand Up @@ -202,7 +201,7 @@ def windows_b2(
def linux_cmake(
name,
image,
db='mysql-8.4.1',
db='mysql-8_4_1:1',
build_shared_libs=0,
cmake_build_type='Debug',
cxxstd='20',
Expand All @@ -224,15 +223,15 @@ def linux_cmake_noopenssl(name):
'--source-dir=$(pwd) ' + \
'cmake-noopenssl ' + \
'--generator=Ninja '
return _pipeline(name=name, image=_image('build-noopenssl'), os='linux', command=command, db=None)
return _pipeline(name=name, image=_image('build-noopenssl:1'), os='linux', command=command, db=None)


def linux_cmake_nointeg(name):
command = 'python tools/ci/main.py ' + \
'--source-dir=$(pwd) ' + \
'cmake-nointeg ' + \
'--generator=Ninja '
return _pipeline(name=name, image=_image('build-gcc13'), os='linux', command=command, db=None)
return _pipeline(name=name, image=_image('build-gcc13:1'), os='linux', command=command, db=None)


def windows_cmake(
Expand All @@ -256,7 +255,7 @@ def windows_cmake(

def find_package_b2_linux(name):
command = _find_package_b2_command(source_dir='$(pwd)', generator='Ninja')
return _pipeline(name=name, image=_image('build-gcc13'), os='linux', command=command, db=None)
return _pipeline(name=name, image=_image('build-gcc13:1'), os='linux', command=command, db=None)


def find_package_b2_windows(name):
Expand All @@ -271,7 +270,7 @@ def bench(name):
'--server-host=mysql ' + \
'--connection-pool-iters=1 ' + \
'--protocol-iters=1 '
return _pipeline(name=name, image=_image('build-bench'), os='linux', command=command, db='mysql-8.4.1')
return _pipeline(name=name, image=_image('build-bench:1'), os='linux', command=command, db='mysql-8_4_1:1')


def docs(name):
Expand All @@ -287,11 +286,11 @@ def docs(name):
def main(ctx):
return [
# CMake Linux
linux_cmake('Linux CMake MySQL 5.x', _image('build-gcc14'), db='mysql-5.7.41', build_shared_libs=0),
linux_cmake('Linux CMake MariaDB', _image('build-gcc14'), db='mariadb-11.4.2', build_shared_libs=1),
linux_cmake('Linux CMake cmake 3.8', _image('build-cmake3_8'), cxxstd='11', install_test=0),
linux_cmake('Linux CMake gcc Release', _image('build-gcc14'), cmake_build_type='Release'),
linux_cmake('Linux CMake gcc MinSizeRel', _image('build-gcc14'), cmake_build_type='MinSizeRel'),
linux_cmake('Linux CMake MySQL 5.x', _image('build-gcc14:1'), db='mysql-5_7_41:1', build_shared_libs=0),
linux_cmake('Linux CMake MariaDB', _image('build-gcc14:1'), db='mariadb-11_4_2:1', build_shared_libs=1),
linux_cmake('Linux CMake cmake 3.8', _image('build-cmake3_8:2'), cxxstd='11', install_test=0),
linux_cmake('Linux CMake gcc Release', _image('build-gcc14:1'), cmake_build_type='Release'),
linux_cmake('Linux CMake gcc MinSizeRel', _image('build-gcc14:1'), cmake_build_type='MinSizeRel'),
linux_cmake_noopenssl('Linux CMake no OpenSSL'),
linux_cmake_nointeg('Linux CMake without integration tests'),

Expand All @@ -305,27 +304,27 @@ def main(ctx):

# B2 Linux
# linux_b2('Linux B2 clang-3.6', _image('build-clang3_6'), toolset='clang-3.6', cxxstd='11,14'),
linux_b2('Linux B2 clang-7', _image('build-clang7'), toolset='clang-7', cxxstd='14,17'),
linux_b2('Linux B2 clang-11', _image('build-clang11'), toolset='clang-11', cxxstd='20'),
linux_b2('Linux B2 clang-14-header-only', _image('build-clang14'), toolset='clang-14', cxxstd='11,20', separate_compilation=0),
linux_b2('Linux B2 clang-14-libc++', _image('build-clang14'), toolset='clang-14', cxxstd='20', stdlib='libc++'),
linux_b2('Linux B2 clang-14-arm64', _image('build-clang14'), toolset='clang-14', cxxstd='20', arch='arm64'),
linux_b2('Linux B2 clang-16-sanit', _image('build-clang16'), toolset='clang-16', cxxstd='20', address_sanitizer=1, undefined_sanitizer=1),
linux_b2('Linux B2 clang-16-i386-sanit', _image('build-clang16-i386'), toolset='clang-16', cxxstd='20', address_model='32', address_sanitizer=1, undefined_sanitizer=1),
linux_b2('Linux B2 clang-17', _image('build-clang17'), toolset='clang-17', cxxstd='20'),
linux_b2('Linux B2 clang-18', _image('build-clang18'), toolset='clang-18', cxxstd='23'),
linux_b2('Linux B2 gcc-5', _image('build-gcc5'), toolset='gcc-5', cxxstd='11'), # gcc-5 C++14 doesn't like my constexpr field_view
linux_b2('Linux B2 gcc-5-ts-executor', _image('build-gcc5'), toolset='gcc-5', cxxstd='11', use_ts_executor=1),
linux_b2('Linux B2 gcc-6', _image('build-gcc6'), toolset='gcc-6', cxxstd='14,17'),
linux_b2('Linux B2 gcc-10', _image('build-gcc10'), toolset='gcc-10', cxxstd='17,20'),
linux_b2('Linux B2 gcc-11', _image('build-gcc11'), toolset='gcc-11', cxxstd='20'),
linux_b2('Linux B2 gcc-11-arm64', _image('build-gcc11'), toolset='gcc-11', cxxstd='11,20', arch='arm64', variant='release'),
linux_b2('Linux B2 gcc-11-arm64-sanit', _image('build-gcc11'), toolset='gcc-11', cxxstd='20', arch='arm64', variant='debug'),
linux_b2('Linux B2 gcc-13', _image('build-gcc13'), toolset='gcc-13', cxxstd='20', variant='release'),
linux_b2('Linux B2 gcc-14', _image('build-gcc14'), toolset='gcc-14', cxxstd='23', variant='release'),
linux_b2('Linux B2 gcc-14-sanit', _image('build-gcc14'), toolset='gcc-14', cxxstd='23', variant='debug', address_sanitizer=1, undefined_sanitizer=1),
linux_b2('Linux B2 gcc-14-valgrind', _image('build-gcc14'), toolset='gcc-14', cxxstd='23', variant='debug', valgrind=1),
linux_b2('Linux B2 noopenssl', _image('build-noopenssl'), toolset='gcc', cxxstd='11', fail_if_no_openssl=0),
linux_b2('Linux B2 clang-7', _image('build-clang7:1'), toolset='clang-7', cxxstd='14,17'),
linux_b2('Linux B2 clang-11', _image('build-clang11:1'), toolset='clang-11', cxxstd='20'),
linux_b2('Linux B2 clang-14-header-only', _image('build-clang14:1'), toolset='clang-14', cxxstd='11,20', separate_compilation=0),
linux_b2('Linux B2 clang-14-libc++', _image('build-clang14:1'), toolset='clang-14', cxxstd='20', stdlib='libc++'),
linux_b2('Linux B2 clang-14-arm64', _image('build-clang14:1'), toolset='clang-14', cxxstd='20', arch='arm64'),
linux_b2('Linux B2 clang-16-sanit', _image('build-clang16:1'), toolset='clang-16', cxxstd='20', address_sanitizer=1, undefined_sanitizer=1),
linux_b2('Linux B2 clang-16-i386-sanit', _image('build-clang16-i386:1'), toolset='clang-16', cxxstd='20', address_model='32', address_sanitizer=1, undefined_sanitizer=1),
linux_b2('Linux B2 clang-17', _image('build-clang17:1'), toolset='clang-17', cxxstd='20'),
linux_b2('Linux B2 clang-18', _image('build-clang18:1'), toolset='clang-18', cxxstd='23'),
linux_b2('Linux B2 gcc-5', _image('build-gcc5:1'), toolset='gcc-5', cxxstd='11'), # gcc-5 C++14 doesn't like my constexpr field_view
linux_b2('Linux B2 gcc-5-ts-executor', _image('build-gcc5:1'), toolset='gcc-5', cxxstd='11', use_ts_executor=1),
linux_b2('Linux B2 gcc-6', _image('build-gcc6:1'), toolset='gcc-6', cxxstd='14,17'),
linux_b2('Linux B2 gcc-10', _image('build-gcc10:1'), toolset='gcc-10', cxxstd='17,20'),
linux_b2('Linux B2 gcc-11', _image('build-gcc11:1'), toolset='gcc-11', cxxstd='20'),
linux_b2('Linux B2 gcc-11-arm64', _image('build-gcc11:1'), toolset='gcc-11', cxxstd='11,20', arch='arm64', variant='release'),
linux_b2('Linux B2 gcc-11-arm64-sanit', _image('build-gcc11:1'), toolset='gcc-11', cxxstd='20', arch='arm64', variant='debug'),
linux_b2('Linux B2 gcc-13', _image('build-gcc13:1'), toolset='gcc-13', cxxstd='20', variant='release'),
linux_b2('Linux B2 gcc-14', _image('build-gcc14:1'), toolset='gcc-14', cxxstd='23', variant='release'),
linux_b2('Linux B2 gcc-14-sanit', _image('build-gcc14:1'), toolset='gcc-14', cxxstd='23', variant='debug', address_sanitizer=1, undefined_sanitizer=1),
linux_b2('Linux B2 gcc-14-valgrind', _image('build-gcc14:1'), toolset='gcc-14', cxxstd='23', variant='debug', valgrind=1),
linux_b2('Linux B2 noopenssl', _image('build-noopenssl:1'), toolset='gcc', cxxstd='11', fail_if_no_openssl=0),

# B2 Windows
windows_b2('Windows B2 msvc14.1 32-bit', _win_image('build-msvc14_1'), toolset='msvc-14.1', cxxstd='11,14,17', variant='release', address_model='32'),
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@ jobs:
coverage:
runs-on: ubuntu-latest
container:
image: ghcr.io/anarthal-containers/build-gcc14:e9696175806589fc91e160399eedeac8fdc88c68
image: ghcr.io/anarthal/cpp-ci-containers/build-gcc14:1
volumes:
- /var/run/mysqld:/var/run/mysqld
services:
mysql:
image: ghcr.io/anarthal-containers/ci-db:mysql-8.4.1-e9696175806589fc91e160399eedeac8fdc88c68
image: ghcr.io/anarthal/cpp-ci-containers/mysql-8_4_1:1
ports:
- 3306:3306
volumes:
Expand Down
109 changes: 0 additions & 109 deletions .github/workflows/docker-linux.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .github/workflows/fuzz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ jobs:
fuzz:
runs-on: ubuntu-latest
container:
image: ghcr.io/anarthal-containers/build-clang18:e9696175806589fc91e160399eedeac8fdc88c68
image: ghcr.io/anarthal/cpp-ci-containers/build-clang18:1
volumes:
- /var/run/mysqld:/var/run/mysqld
services:
mysql:
image: ghcr.io/anarthal-containers/ci-db:mysql-8.4.1-e9696175806589fc91e160399eedeac8fdc88c68
image: ghcr.io/anarthal/cpp-ci-containers/mysql-8_4_1:1
ports:
- 3306:3306
volumes:
Expand Down
42 changes: 0 additions & 42 deletions tools/docker/build-bench.dockerfile

This file was deleted.

24 changes: 0 additions & 24 deletions tools/docker/build-clang11.dockerfile

This file was deleted.

29 changes: 0 additions & 29 deletions tools/docker/build-clang14.dockerfile

This file was deleted.

Loading
Loading