Skip to content

Commit cda072b

Browse files
committed
Deb: Sync build and runtime dependencies from downstream to upstream
- Go back to using $MAJOR_VER instead of hard-coded version strings where possible. - Default to 'auto' in NUMJOBS instead of just 1. Will make mysql-test-run faster. - Unify autopkgtest with latest version in Debian, use eatmydata to make mysql-test-run faster. - Salsa-CI: Remove obsolete 'artifacts: true' as that is the default value. - Salsa-CI: Clean away obsolete temporary fixes. - Salsa-CI: Unify with salsa-ci.yml in Debian, including test upgrades from Bullseye to Debian unstable.
1 parent 9bb6520 commit cda072b

File tree

9 files changed

+84
-47
lines changed

9 files changed

+84
-47
lines changed

debian/control

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -492,7 +492,7 @@ Recommends: libhtml-template-perl
492492
Pre-Depends: adduser (>= 3.40),
493493
debconf,
494494
mariadb-common (>= ${source:Version})
495-
Depends: galera-4 (>=26.4),
495+
Depends: galera-4 (>= 26.4),
496496
gawk,
497497
iproute2 [linux-any],
498498
libdbi-perl,

debian/mariadb-server-10.5.postinst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ EOF
161161
# Clean up old flags before setting new one
162162
rm -f $mysql_datadir/debian-*.flag
163163
# Flag data dir to avoid downgrades
164-
touch $mysql_datadir/debian-10.5.flag
164+
touch "$mysql_datadir/debian-$MAJOR_VER.flag"
165165

166166
# initiate databases. Output is not allowed by debconf :-(
167167
# This will fail if we are upgrading an existing database; in this case

debian/po/de.po

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ msgstr ""
1010
"POT-Creation-Date: 2019-07-23 19:16-0300\n"
1111
"PO-Revision-Date: 2016-05-12 22:39+0100\n"
1212
"Last-Translator: Chris Leick <c.leick@vollbio.de>\n"
13-
"Language-Team: german <debian-l10n-german@lists.debian.org>\n"
13+
"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
1414
"Language: \n"
1515
"MIME-Version: 1.0\n"
1616
"Content-Type: text/plain; charset=UTF-8\n"

debian/po/es.po

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# mariadb translation to spanish
1+
# MariaDB translation to Spanish
22
# Copyright (C) 2005-2016 Software in the Public Interest, SPI Inc.
33
# This file is distributed under the same license as the mariadb package.
44
#

debian/po/it.po

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#
55
msgid ""
66
msgstr ""
7-
"Project-Id-Version: mariadb-10.5 10.0.13 italian debconf templates\n"
7+
"Project-Id-Version: mariadb-10.5 10.0.13 Italian debconf templates\n"
88
"Report-Msgid-Bugs-To: mariadb-10.5@packages.debian.org\n"
99
"POT-Creation-Date: 2019-07-23 19:16-0300\n"
1010
"PO-Revision-Date: 2017-083-20 20:29+0100\n"

debian/rules

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
3434
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
3535
MAKEFLAGS += -j$(NUMJOBS)
3636
else
37-
# NUMJOBS cannot be empty as it is used as a parameter to mtr, default to 1.
38-
NUMJOBS = 1
37+
# NUMJOBS cannot be empty as it is used as a parameter to mtr, default to 'auto'.
38+
NUMJOBS = auto
3939
endif
4040

4141
# RocksDB cannot build on 32-bit platforms

debian/salsa-ci.yml

Lines changed: 72 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ stages:
2121
- build
2222
- test
2323
- upgrade in Sid
24-
- upgrade from Buster/Stretch
24+
- upgrade from Bullseye/Buster/Stretch
2525
- upgrade extras
2626
- test extras
2727
- publish # Stage referenced by Salsa-CI template aptly stanza, so must exist even though not used
@@ -46,6 +46,11 @@ build:
4646
- ccache -s # Show ccache stats to validate it worked
4747
- mv ${CCACHE_TMP_DIR} ${CCACHE_WORK_DIR} || true
4848

49+
build bullseye-backports:
50+
extends: .build-package
51+
variables:
52+
RELEASE: bullseye-backports
53+
4954
build buster-backports:
5055
extends: .build-package
5156
script:
@@ -121,7 +126,6 @@ blhc:
121126
stage: test extras
122127
needs:
123128
- job: build native deb
124-
artifacts: true
125129

126130
# In addition to Salsa-CI, also run these fully MariaDB specific build jobs
127131

@@ -148,9 +152,10 @@ blhc:
148152
dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed
149153
service mysql status || service mariadb status # Early MariaDB 10.5 only had 'mariadb'
150154
mysql --skip-column-names -e "select @@version, @@version_comment" # Show version
151-
echo 'SHOW DATABASES;' | mysql # List databases before upgrade
152-
mysql -e "SELECT Host, User, plugin,authentication_string FROM user;" mysql
153-
mysql -e "SELECT * FROM plugin;" mysql
155+
mysql --table -e 'SHOW DATABASES;' # List databases before upgrade
156+
mysql --table -e "SELECT host,user,plugin,authentication_string FROM user;" mysql
157+
mysql --table -e "SELECT * FROM plugin;" mysql
158+
mysql --table -e "SHOW PLUGINS;" mysql
154159

155160
.test-enable-sid-repos: &test-enable-sid-repos |
156161
# Replace any old repos with just Sid
@@ -172,10 +177,12 @@ blhc:
172177
cp -ra /etc/mysql debug/etc-mysql
173178
cp -ra /var/log/mysql debug/var-log-mysql
174179
mariadb --skip-column-names -e "select @@version, @@version_comment" # Show version
175-
echo 'SHOW DATABASES;' | mariadb # List databases
176-
mariadb -e "create database test; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t; drop database test;" # Test that InnoDB works
177-
mariadb -e "SELECT Host, User, plugin,authentication_string FROM user;" mysql
178-
mariadb -e "SELECT * FROM plugin;" mysql
180+
mariadb --table -e 'SHOW DATABASES;' # List databases
181+
mariadb --table -e "SELECT host,user,plugin,authentication_string FROM user;" mysql
182+
mariadb --table -e "SELECT * FROM plugin;" mysql
183+
mariadb --table -e "SHOW PLUGINS;" mysql
184+
# Test that InnoDB works and that command 'mysql' is also still usable
185+
mysql -e "CREATE DATABASE test; USE test; CREATE TABLE t(a INT PRIMARY KEY) ENGINE=INNODB; INSERT INTO t VALUEs (1); SELECT * FROM t; DROP TABLE t; DROP DATABASE test;"
179186

180187
.test-verify-libs: &test-verify-libs
181188
# Don't use a collapsed command as Gitlab-CI would hide each command from the output
@@ -193,7 +200,6 @@ fresh install:
193200
stage: test
194201
needs:
195202
- job: build
196-
artifacts: true
197203
image: debian:${RELEASE}
198204
artifacts:
199205
when: always
@@ -215,7 +221,6 @@ mariadb-10.5 Sid upgrade:
215221
stage: upgrade in Sid
216222
needs:
217223
- job: build
218-
artifacts: true
219224
image: debian:${RELEASE}
220225
artifacts:
221226
when: always
@@ -233,11 +238,36 @@ mariadb-10.5 Sid upgrade:
233238
variables:
234239
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
235240

241+
mariadb-10.5 Bullseye to mariadb-10.5 upgrade:
242+
stage: upgrade from Bullseye/Buster/Stretch
243+
needs:
244+
- job: build
245+
image: debian:bullseye
246+
artifacts:
247+
when: always
248+
name: "$CI_BUILD_NAME"
249+
paths:
250+
- ${WORKING_DIR}/debug
251+
script:
252+
- *test-prepare-container
253+
# Install everything MariaDB currently in Debian Bullseye
254+
- apt-get install -y 'default-mysql*' 'mariadb-*' 'libmariadb*'
255+
# Verify installation of MariaDB from Bullseye
256+
- *test-verify-initial
257+
- *test-enable-sid-repos
258+
- *test-install
259+
- service mariadb status
260+
- *test-verify-final
261+
variables:
262+
GIT_STRATEGY: none
263+
except:
264+
variables:
265+
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
266+
236267
mariadb-10.3 Buster to mariadb-10.5 upgrade:
237-
stage: upgrade from Buster/Stretch
268+
stage: upgrade from Bullseye/Buster/Stretch
238269
needs:
239270
- job: build
240-
artifacts: true
241271
image: debian:buster
242272
artifacts:
243273
when: always
@@ -261,10 +291,9 @@ mariadb-10.3 Buster to mariadb-10.5 upgrade:
261291
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
262292

263293
mariadb-10.1 Stretch to mariadb-10.5 upgrade:
264-
stage: upgrade from Buster/Stretch
294+
stage: upgrade from Bullseye/Buster/Stretch
265295
needs:
266296
- job: build
267-
artifacts: true
268297
image: debian:stretch
269298
artifacts:
270299
when: always
@@ -278,8 +307,7 @@ mariadb-10.1 Stretch to mariadb-10.5 upgrade:
278307
- apt-get install -y 'default-mysql*' 'mariadb-*' 'libmariadbd*' 'libmariadbclient*'
279308
# Verify installation of MariaDB from Stretch
280309
- *test-verify-initial
281-
# Remove manpages 4.10 that conflicts with manpages-dev 5.10 on console_ioctl.4.gz
282-
- apt-get remove -y manpages
310+
- apt-get remove -y manpages # Workaround for Bug#99375
283311
- *test-enable-sid-repos
284312
- *test-install
285313
- service mysql status
@@ -294,7 +322,6 @@ test basic features:
294322
stage: test
295323
needs:
296324
- job: build
297-
artifacts: true
298325
image: debian:${RELEASE}
299326
artifacts:
300327
when: always
@@ -378,7 +405,6 @@ build mariadbclient consumer Python-MySQLdb:
378405
stage: test
379406
needs:
380407
- job: build
381-
artifacts: true
382408
image: debian:${RELEASE}
383409
script:
384410
- *test-prepare-container
@@ -400,7 +426,6 @@ libmysql* to libmariadb* upgrade:
400426
stage: upgrade in Sid
401427
needs:
402428
- job: build
403-
artifacts: true
404429
image: debian:${RELEASE}
405430
artifacts:
406431
when: always
@@ -434,7 +459,6 @@ default-libmysqlclient-dev Sid upgrade:
434459
stage: upgrade in Sid
435460
needs:
436461
- job: build
437-
artifacts: true
438462
image: debian:${RELEASE}
439463
artifacts:
440464
when: always
@@ -452,10 +476,9 @@ default-libmysqlclient-dev Sid upgrade:
452476
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
453477

454478
default-libmysqlclient-dev Buster upgrade:
455-
stage: upgrade from Buster/Stretch
479+
stage: upgrade from Bullseye/Buster/Stretch
456480
needs:
457481
- job: build
458-
artifacts: true
459482
image: debian:buster
460483
artifacts:
461484
when: always
@@ -474,10 +497,9 @@ default-libmysqlclient-dev Buster upgrade:
474497
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
475498

476499
default-libmysqlclient-dev Stretch upgrade:
477-
stage: upgrade from Buster/Stretch
500+
stage: upgrade from Bullseye/Buster/Stretch
478501
needs:
479502
- job: build
480-
artifacts: true
481503
image: debian:stretch
482504
artifacts:
483505
when: always
@@ -488,22 +510,44 @@ default-libmysqlclient-dev Stretch upgrade:
488510
- *test-prepare-container
489511
- apt-get install -y pkg-config default-libmysqlclient-dev
490512
- pkg-config --list-all
491-
# Remove manpages 4.10 that conflicts with manpages-dev 5.10 on console_ioctl.4.gz
492-
- apt-get remove -y manpages
513+
- apt-get remove -y manpages # Workaround for Bug#99375
493514
- *test-enable-sid-repos
494515
- *test-install-all-libs
495516
- *test-verify-libs
496517
except:
497518
variables:
498519
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
499520

521+
mariadb-connector-c Stretch upgrade:
522+
stage: upgrade from Bullseye/Buster/Stretch
523+
needs:
524+
- job: build
525+
image: debian:stretch
526+
artifacts:
527+
when: always
528+
name: "$CI_BUILD_NAME"
529+
paths:
530+
- ${WORKING_DIR}/debug
531+
script:
532+
- *test-prepare-container
533+
- apt-get install -y pkg-config libmariadb2 libmariadb-dev libmariadb-dev-compat
534+
- pkg-config --list-all
535+
- apt-get remove -y manpages # Workaround for Bug#99375
536+
- *test-enable-sid-repos
537+
- *test-install-all-libs
538+
- *test-verify-libs
539+
except:
540+
variables:
541+
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
542+
allow_failure: true
543+
# Upgrading libc from Stretch to Bookworm is not possible due to Bug#993755
544+
500545
# Upgrading from MySQL 8.0 with datadir in place is not possible. Users need to do a data dump.
501546
# The Debian maintainer scripts detect this situation and simply moves old datadir aside and start fresh.
502547
mysql-8.0 Sid to mariadb-10.5 upgrade:
503548
stage: upgrade in Sid
504549
needs:
505550
- job: build
506-
artifacts: true
507551
image: debian:sid
508552
artifacts:
509553
when: always
@@ -531,7 +575,6 @@ mysql-8.0 Focal to mariadb-10.5 upgrade:
531575
stage: upgrade extras
532576
needs:
533577
- job: build buster-backports
534-
artifacts: true
535578
image: debian:buster
536579
artifacts:
537580
when: always
@@ -565,7 +608,6 @@ mysql-5.7 Bionic to mariadb-10.5 upgrade:
565608
stage: upgrade extras
566609
needs:
567610
- job: build stretch-backports
568-
artifacts: true
569611
image: debian:stretch
570612
artifacts:
571613
when: always
@@ -601,7 +643,6 @@ mariadb.org-10.5 to mariadb-10.5 upgrade:
601643
stage: upgrade extras
602644
needs:
603645
- job: build
604-
artifacts: true
605646
image: debian:sid
606647
artifacts:
607648
when: always
@@ -614,7 +655,6 @@ mariadb.org-10.5 to mariadb-10.5 upgrade:
614655
- curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc
615656
- echo 'deb http://mirror.one.com/mariadb/repo/10.5/debian sid main' > /etc/apt/sources.list.d/mariadb.list
616657
- apt-get update
617-
- *test-install-readline-in-sid-for-backwards-compat
618658
# The 10.5.9 release is missing mariadb-plugin-columnstore, define all other packages but it to avoid hitting the error:
619659
# The following packages have unmet dependencies:
620660
# mariadb-plugin-columnstore : Depends: mariadb-server-10.5 (= 1:10.5.8+maria~sid) but 1:10.5.9+maria~sid is to be installed
@@ -641,7 +681,6 @@ mariadb.org-10.4 to mariadb-10.5 upgrade:
641681
stage: upgrade extras
642682
needs:
643683
- job: build
644-
artifacts: true
645684
image: debian:sid
646685
artifacts:
647686
when: always
@@ -675,7 +714,6 @@ mariadb.org-10.3 to mariadb-10.5 upgrade:
675714
stage: upgrade extras
676715
needs:
677716
- job: build
678-
artifacts: true
679717
image: debian:sid
680718
artifacts:
681719
when: always
@@ -712,7 +750,6 @@ mariadb.org-10.2 to mariadb-10.5 upgrade:
712750
stage: upgrade extras
713751
needs:
714752
- job: build
715-
artifacts: true
716753
image: debian:sid
717754
artifacts:
718755
when: always
@@ -749,7 +786,6 @@ mysql.com-5.7 to mariadb-10.5 upgrade:
749786
stage: upgrade extras
750787
needs:
751788
- job: build buster-backports
752-
artifacts: true
753789
image: debian:buster
754790
artifacts:
755791
when: always
@@ -781,7 +817,6 @@ percona-xtradb-5.7 to mariadb-10.5 upgrade (MDEV-22679):
781817
stage: upgrade extras
782818
needs:
783819
- job: build buster-backports
784-
artifacts: true
785820
image: debian:buster
786821
artifacts:
787822
when: always

debian/tests/control

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ Depends: mariadb-plugin-rocksdb | mariadb-server-10.5
77
Restrictions: allow-stderr needs-root isolation-container
88

99
Tests: upstream
10-
Depends: mariadb-test
10+
Depends: mariadb-test, eatmydata
1111
Restrictions: allow-stderr breaks-testbed

debian/tests/upstream

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,9 @@ fi
6060

6161
cd /usr/share/mysql/mysql-test
6262
echo "starting mysql-test-tun.pl..."
63-
perl -I. ./mysql-test-run.pl --suite=main --vardir="$WORKDIR/var" --tmpdir="$WORKDIR/tmp" \
63+
eatmydata perl -I. ./mysql-test-run.pl --suite=main \
64+
--vardir="$WORKDIR/var" --tmpdir="$WORKDIR/tmp" \
6465
--parallel=auto --skip-rpl \
65-
--force --skip-test-list=$SKIP_TEST_LST $@ 2>&1
66+
--force --skip-test-list=$SKIP_TEST_LST \
67+
--xml-report=$AUTOPKGTEST_ARTIFACTS/mysql-test-run-junit.xml $@ 2>&1
6668
echo "run: OK"

0 commit comments

Comments
 (0)