Skip to content
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

MDBF-772: Test all past MariaDB version that they install #593

Draft
wants to merge 34 commits into
base: dev
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
c756540
MDBF-787 Add OpenEuler
grooverdan Sep 5, 2024
a23f3f3
MDBF-787: Add OpenEuler 24.03 as a rpm-autobake
grooverdan Sep 5, 2024
46c5899
MDBF-796 - openeuler doesn't have compat rpm
RazvanLiviuVarzaru Sep 20, 2024
2e1ba19
MDBF-794 - Link bintar binaries statically with libncurses
RazvanLiviuVarzaru Sep 19, 2024
bce7a44
MDBF-779 SLES/OpenSUSE 15.5 bb config
grooverdan Aug 1, 2024
0c23539
MDBF-779 Opensuse- rename 15 to 15.6
grooverdan Sep 18, 2024
3a98dcc
Add OpenSUSE 15.6 to release builds
grooverdan Sep 18, 2024
cfed574
MDBF-779 SLES-15.5 - temp disable on s390x - lack of hw
grooverdan Sep 18, 2024
be6f672
MDBF-779 SLES-15 -> SLES-15.6
grooverdan Sep 23, 2024
c980657
opensuse - 15.X name in os_info to match install/upgrade scripts
grooverdan Sep 23, 2024
877fafc
Fix type: rpm for openeuler after rebase
RazvanLiviuVarzaru Sep 23, 2024
6477da7
Fix for triggering sles 1506 on 10.11
RazvanLiviuVarzaru Sep 23, 2024
64d5aa7
MDBF-795: Add Fedora 41 (x86_64/Aarch64)
grooverdan Sep 16, 2024
ffc4ab6
Fix CS testing, rpm are not pulled
fauust Sep 30, 2024
97134c3
Add asio-devel to rpm based bb-worker images
grooverdan Sep 30, 2024
59c5bc5
OpenSuse / Sles 15.x - do not need MariaDB-compat
RazvanLiviuVarzaru Sep 30, 2024
5140e9c
MDBF-800 Extend minor upgrade tests to ensure transition from old bb
elenst Sep 29, 2024
f4e68db
MDBF-800 Extend package minor upgrade tests to ensure transition
elenst Sep 30, 2024
88a75b3
Support for PPC on Debian 11 is EOL
fauust Oct 1, 2024
a1542cc
Prevent MariaDB hanging service on Windows
RazvanLiviuVarzaru Sep 30, 2024
f8e5d7b
MDBF-802 - deb-upgrade.sh does not fetch Packages file from releases
RazvanLiviuVarzaru Oct 7, 2024
e340a43
MDBF-800 Extend package minor upgrade tests to ensure transition from…
elenst Oct 6, 2024
5bd165e
MDBF-800 Extend package minor upgrade tests to ensure transition from…
elenst Oct 6, 2024
dc1b355
MDBF-806 - Exclude LDD for mariadb-test packages
RazvanLiviuVarzaru Oct 8, 2024
dee303a
Disable previously enabled command logging in MariaDB#582
RazvanLiviuVarzaru Oct 8, 2024
8a3ad07
Make package name lowercase in LDD comparison
RazvanLiviuVarzaru Oct 8, 2024
0d5a226
[MDBF-800][Post-Fix] - Extra restart needed due to MDEV-23061
RazvanLiviuVarzaru Oct 9, 2024
c213db3
Decrease parallel for x86-debian-12-fulltest
vladbogo Oct 1, 2024
6e0a15b
MDEV-31050 Add cursor protocol to full test builders
grooverdan Oct 9, 2024
c8775dd
[Mdev 31050][Post-Fix] - Enable cursor test on x86-debian-12-fulltest
RazvanLiviuVarzaru Oct 9, 2024
2724384
[MDBF-800][Post-fix] - Filter RPM package_list in test_mode='ALL'
RazvanLiviuVarzaru Oct 11, 2024
9992cf4
CentOS based workflow is no longer present.
RazvanLiviuVarzaru Oct 14, 2024
2fe6de3
Dedicated builder for triggering Galera builds
RazvanLiviuVarzaru Oct 9, 2024
b685b80
MDBF-772: Test all past MariaDB version that they install
illuusio Oct 14, 2024
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
2 changes: 1 addition & 1 deletion .github/workflows/build-centos.pip-based.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:

- image: docker.io/openeuler/openeuler:24.03-lts
platforms: linux/amd64, linux/arm64/v8
tag: oe2403
tag: openeuler2403
nogalera: true

uses: ./.github/workflows/bbw_build_container_template.yml
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-debian-based.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
matrix:
include:
- image: debian:11
platforms: linux/amd64, linux/arm64/v8, linux/ppc64le
platforms: linux/amd64, linux/arm64/v8
branch: 10.11
nogalera: false

Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/build-fedora-based.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@ jobs:
platforms: linux/amd64, linux/arm64/v8
nogalera: false

- image: fedora:41
platforms: linux/amd64, linux/arm64/v8
nogalera: true

- image: fedora:40
platforms: linux/amd64
tag: fedora40-valgrind
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-opensuse.pip-based.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,12 @@ jobs:
include:
- image: opensuse/leap:15.5
platforms: linux/amd64
tag: opensuse15.5
tag: opensuse1505
nogalera: true

- image: opensuse/leap:15.6
platforms: linux/amd64
tag: opensuse15
tag: opensuse1506
nogalera: false

uses: ./.github/workflows/bbw_build_container_template.yml
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-sles.pip-based.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,12 @@ jobs:
include:
- image: registry.suse.com/bci/bci-base:15.5
platforms: linux/amd64, linux/s390x
tag: sles15.5
tag: sles1505
nogalera: true

- image: registry.suse.com/bci/bci-base:15.6
platforms: linux/amd64, linux/s390x
tag: sles15
tag: sles1506
nogalera: false

uses: ./.github/workflows/bbw_build_container_template.yml
Expand Down
9 changes: 0 additions & 9 deletions .github/workflows/build-workflow-dispatcher.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,6 @@ name: Dispatch all build container images workflows
on:
workflow_dispatch:
inputs:
build-centos-based:
description: 'Run CentOS-based builds'
required: true
default: false
type: boolean
build-centos7pip-based:
description: 'Run CentOS 7 pip-based builds'
required: true
Expand Down Expand Up @@ -55,10 +50,6 @@ on:
type: boolean

jobs:
build-centos-based:
if: ${{ inputs.build-centos-based }}
uses: ./.github/workflows/build-centos-based.yml
secrets: inherit
build-centos7pip-based:
if: ${{ inputs.build-centos7pip-based }}
uses: ./.github/workflows/build-centos7.pip-based.yml
Expand Down
1 change: 1 addition & 0 deletions ci_build_images/centos.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ RUN dnf -y install 'dnf-command(config-manager)' \
# not sure if needed \
# perl \
${extra} \
asio-devel \
bzip2 \
bzip2-devel \
ccache \
Expand Down
1 change: 1 addition & 0 deletions ci_build_images/fedora.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ RUN echo "fastestmirror=true" >> /etc/dnf/dnf.conf \
&& dnf -y builddep mariadb-server \
&& dnf -y install \
@development-tools \
asio-devel \
buildbot-worker \
bzip2 \
bzip2-devel \
Expand Down
2 changes: 1 addition & 1 deletion ci_build_images/rhel.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ RUN --mount=type=secret,id=rhel_orgid,target=/run/secrets/rhel_orgid \
&& case $BASE_IMAGE in \
ubi9) \
v=9; \
extra="fmt-devel buildbot-worker"; \
extra="asio-devel buildbot-worker fmt-devel"; \
;; \
ubi8) \
v=8; \
Expand Down
16 changes: 12 additions & 4 deletions constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@
"aarch64-fedora-39",
"aarch64-macos",
"aarch64-macos-compile-only",
"aarch64-openeuler-2403",
"aarch64-rhel-8",
"aarch64-rhel-9",
"aarch64-ubuntu-2004",
Expand All @@ -102,6 +103,7 @@
"amd64-fedora-39",
"amd64-fedora-40-valgrind",
"amd64-freebsd-14",
"amd64-openeuler-2403",
"amd64-rhel-7",
"amd64-rhel-8",
"amd64-rhel-9",
Expand All @@ -116,7 +118,6 @@
"amd64-windows-packages",
"ppc64be-aix-71",
"ppc64le-centos-stream9",
"ppc64le-debian-11",
"ppc64le-rhel-8",
"ppc64le-rhel-9",
"ppc64le-ubuntu-2004",
Expand All @@ -142,9 +143,12 @@

supportedPlatforms["10.6"] += [
"aarch64-ubuntu-2204",
"amd64-opensuse-1505",
"amd64-sles-1505",
"amd64-ubuntu-2204",
"ppc64le-ubuntu-2204",
"s390x-ubuntu-2204",
"s390x-sles-1505",
"x86-debian-12",
]

Expand All @@ -158,15 +162,17 @@
supportedPlatforms["10.11"] = [
"aarch64-debian-12",
"aarch64-fedora-40",
"aarch64-fedora-41",
"aarch64-ubuntu-2404",
"amd64-debian-12",
"amd64-debian-12-debug-embedded",
"amd64-fedora-40",
"amd64-opensuse-15",
"amd64-sles-15",
"amd64-fedora-41",
"amd64-opensuse-1506",
"amd64-sles-1506",
"amd64-ubuntu-2404",
"ppc64le-ubuntu-2404",
"s390x-sles-15",
"s390x-sles-1506",
"s390x-ubuntu-2404",
"ppc64le-debian-12",
]
Expand Down Expand Up @@ -207,6 +213,7 @@
# run `./mtr testname`, they need a special build
test_type_to_mtr_arg = {
"nm": "",
"cursor": "--cursor-protocol",
"ps": "--ps-protocol",
"connect": "--suite=connect",
"emb": "--embedded",
Expand All @@ -217,6 +224,7 @@
"ubsan": "",
"valgrind": "",
"debug": "",
"debug-cursor": "--cursor-protocol",
"debug-ps": "--ps-protocol",
"debug-emb": "--embedded",
"debug-emb-ps": "--embedded --ps-protocol",
Expand Down
12 changes: 8 additions & 4 deletions master-docker-nonstandard-2/master.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ addWorker(
1,
"-debian-12-32-bit",
os.getenv("CONTAINER_REGISTRY_URL", default="quay.io/mariadb-foundation/bb-worker:") + "debian12-386",
jobs=20,
jobs=10,
save_packages=False,
shm_size="30G",
)
Expand All @@ -152,7 +152,7 @@ addWorker(
2,
"-debian-12-32-bit",
os.getenv("CONTAINER_REGISTRY_URL", default="quay.io/mariadb-foundation/bb-worker:") + "debian12-386",
jobs=20,
jobs=10,
save_packages=False,
shm_size="30G",
)
Expand All @@ -162,8 +162,9 @@ addWorker(
3,
"-debian-12-32-bit",
os.getenv("CONTAINER_REGISTRY_URL", default="quay.io/mariadb-foundation/bb-worker:") + "debian12-386",
jobs=20,
jobs=10,
save_packages=False,
shm_size="30G",
)

addWorker(
Expand Down Expand Up @@ -567,7 +568,9 @@ def add_test_steps(factory, test_types):

# Custom parts of the command
extra_args = ""
if test_type == "emb":
if test_type == "cursor":
extra_args = "--cursor-protocol"
elif test_type == "emb":
extra_args = "--embedded-server"
elif test_type == "ps":
extra_args = "--ps-protocol"
Expand Down Expand Up @@ -676,6 +679,7 @@ f_full_test.addStep(

# List of test configurations: (test_type, output_dir, suite)
full_test_configs = [
"cursor",
"emb",
"nm",
"ps",
Expand Down
3 changes: 2 additions & 1 deletion master-docker-nonstandard/master.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -1045,6 +1045,7 @@ f_full_test.addStep(

# MTR steps
full_test_configs = {
"cursor": {},
"emb": {},
"nm": {},
"ps": {},
Expand Down Expand Up @@ -1322,7 +1323,7 @@ f_bintar.addStep(
"sh",
"-c",
util.Interpolate(
'cmake . -DWITH_READLINE=1 -DBUILD_CONFIG=mysql_release -DCMAKE_C_FLAGS="%(kw:gnutls_no_signal)s" -DCMAKE_CXX_FLAGS="%(kw:gnutls_no_signal)s" -DWITH_SSL=bundled -DPLATFORM=linux-systemd && make -j%(kw:jobs)s package',
'cmake . -DWITH_READLINE=1 -DCURSES_NEED_NCURSES=1 -DBUILD_CONFIG=mysql_release -DCMAKE_C_FLAGS="%(kw:gnutls_no_signal)s" -DCMAKE_CXX_FLAGS="%(kw:gnutls_no_signal)s" -DWITH_SSL=bundled -DPLATFORM=linux-systemd && make -j%(kw:jobs)s package',
perf_schema=util.Property("perf_schema", default="YES"),
build_type=util.Property("build_type", default="RelWithDebInfo"),
jobs=util.Property("jobs", default="$(getconf _NPROCESSORS_ONLN)"),
Expand Down
68 changes: 65 additions & 3 deletions master-galera/master.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ c = BuildmasterConfig = {}
config = {"private": {}}
exec(open("../master-private.cfg").read(), config, {})

FQDN = os.getenv("BUILDMASTER_WG_IP", default="100.64.100.1")

####### PROJECT IDENTITY

# the 'title' string will appear at the top of this buildbot installation's
Expand Down Expand Up @@ -89,9 +91,14 @@ schedulerTrigger = schedulers.AnyBranchScheduler(
repository="https://github.com/MariaDB/galera", branch_fn=upstream_branch_fn
),
treeStableTimer=60,
builderNames=builders_galera,
builderNames=["trigger-galera-builds"],
)
schedulerGaleraBuilders = schedulers.Triggerable(
name="s_galera_builders", builderNames=builders_galera
)

c["schedulers"].append(schedulerTrigger)
c["schedulers"].append(schedulerGaleraBuilders)

if os.getenv("ENVIRON") == "DEV":
schedulerTrigger = schedulers.AnyBranchScheduler(
Expand All @@ -101,7 +108,7 @@ if os.getenv("ENVIRON") == "DEV":
branch_fn=upstream_branch_fn,
),
treeStableTimer=60,
builderNames=builders_galera,
builderNames=["trigger-galera-builds"],
)
c["schedulers"].append(schedulerTrigger)

Expand All @@ -112,14 +119,45 @@ if os.getenv("ENVIRON") == "DEV":
# worker name and password must be configured on the worker.
c["workers"] = []

c["workers"].append(
worker.DockerLatentWorker(
"hz-bbw1-docker-galera-trigger",
None,
docker_host=config["private"]["docker_workers"]["hz-bbw1-docker"],
image=os.getenv("CONTAINER_REGISTRY_URL", default="quay.io/mariadb-foundation/bb-worker:") + "debian12",
followStartupLogs=False,
autopull=True,
alwaysPull=True,
masterFQDN=FQDN,
hostconfig={"shm_size": "1G"},
max_builds=1,
build_wait_timeout=0,
)
)

c["workers"].append(
worker.DockerLatentWorker(
"hz-bbw4-docker-galera-trigger",
None,
docker_host=config["private"]["docker_workers"]["hz-bbw4-docker"],
image=os.getenv("CONTAINER_REGISTRY_URL", default="quay.io/mariadb-foundation/bb-worker:") + "debian12",
followStartupLogs=False,
autopull=True,
alwaysPull=True,
masterFQDN=FQDN,
hostconfig={"shm_size": "1G"},
max_builds=1,
build_wait_timeout=0,
)
)

# Docker workers
GALERA_PACKAGES = os.getenv(
"GALERA_PACKAGES_DIR", default="/mnt/autofs/galera_packages"
)

workers = {}


def addWorker(
worker_name_prefix,
worker_id,
Expand Down Expand Up @@ -252,6 +290,16 @@ def rpmSave():

####### FACTORY CODE

f_trigger_builds = util.BuildFactory()
f_trigger_builds.addStep(
steps.Trigger(
schedulerNames=["s_galera_builders"],
waitForFinish=False,
updateSourceStamp=False,
doStepIf=waitIfStaging,
)
)

## f_deb_build - create source tarball
f_deb_build = util.BuildFactory()
f_deb_build.addStep(
Expand Down Expand Up @@ -387,6 +435,20 @@ f_rpm_build.addStep(
####### BUILDERS LIST
c["builders"] = []

c["builders"].append(
util.BuilderConfig(
name="trigger-galera-builds",
workernames=[
"hz-bbw1-docker-galera-trigger",
"hz-bbw4-docker-galera-trigger",
],
tags=["galera"],
collapseRequests=True,
nextBuild=nextBuild,
factory=f_trigger_builds,
)
)

for os_i in os_info:
if "install_only" in os_info[os_i] and os_info[os_i]["install_only"]:
continue
Expand Down
Loading