1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-18 06:04:06 +03:00

gitlab-ci: Move to Fedora 41

Python 3.13 removed the `crypt` module. I can work around it on Fedora 41, but
we need to address this better sooner than later.

See also https://bugzilla.samba.org/show_bug.cgi?id=15756

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
This commit is contained in:
Andreas Schneider 2024-11-20 15:43:13 +01:00 committed by Andreas Schneider
parent be5531aaec
commit 475896028b
9 changed files with 28 additions and 19 deletions

View File

@ -47,7 +47,7 @@ variables:
# Set this to the contents of bootstrap/sha1sum.txt
# which is generated by bootstrap/template.py --render
#
SAMBA_CI_CONTAINER_TAG: 936722ecb26bedf6ea0acd9228963ce45ed419d4
SAMBA_CI_CONTAINER_TAG: b86ed4890ab0f95b15d3f3b11d1cd21327ac045f
#
# We use the ubuntu2204 image as default as
# it matches what we have on atb-devel-224
@ -66,7 +66,7 @@ variables:
SAMBA_CI_CONTAINER_IMAGE_opensuse155: opensuse155
SAMBA_CI_CONTAINER_IMAGE_rocky8: rocky8
SAMBA_CI_CONTAINER_IMAGE_centos9s: centos9s
SAMBA_CI_CONTAINER_IMAGE_fedora40: fedora40
SAMBA_CI_CONTAINER_IMAGE_fedora41: fedora41
include:
# The image creation details are specified in a separate file
@ -267,13 +267,13 @@ samba-def-build:
samba-mit-build:
extends: .shared_template_build_only
variables:
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora40}
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora41}
stage: build_first
.needs_samba-mit-build:
extends: .shared_template_test_only
variables:
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora40}
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora41}
needs:
- job: samba-mit-build
artifacts: true
@ -321,7 +321,7 @@ samba:
samba-mitkrb5:
extends: .shared_template
variables:
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora40}
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora41}
samba-minimal-smbd:
extends: .shared_template
@ -391,7 +391,7 @@ samba-addc-mit-4b:
samba-fips:
extends: .shared_template
variables:
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora40}
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora41}
samba-codecheck:
extends: .shared_template
@ -672,10 +672,10 @@ centos9s-samba-o3:
variables:
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_centos9s}
fedora40-samba-o3:
fedora41-samba-o3:
extends: .samba-o3-template
variables:
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora40}
SAMBA_CI_JOB_IMAGE: ${SAMBA_CI_CONTAINER_IMAGE_fedora41}
#
# Keep the samba-o3 sections at the end ...

View File

@ -98,7 +98,7 @@ debian11:
debian12:
extends: .build_image_template
fedora40:
fedora41:
extends: .build_image_template
debian11-32bit:

View File

@ -159,6 +159,10 @@ PKGS = [
('', 'python3-libsemanage'),
('', 'python3-policycoreutils'),
# A copy of the `crypt` module that was removed in Python 3.13
# See also https://bugzilla.samba.org/show_bug.cgi?id=15756
('', 'python3-crypt-r'),
# perl
('libparse-yapp-perl', 'perl-Parse-Yapp'),
('perl-modules', ''),
@ -534,6 +538,7 @@ RPM_DISTS = {
'ShellCheck': '',
'shfmt': '',
'codespell': '',
'python3-crypt-r': '',
}
},
'centos9s': {
@ -553,11 +558,12 @@ RPM_DISTS = {
'codespell': '',
'libcephfs-devel': '', # not available anymore
'curl': '', # Use installed curl-minimal
'python3-crypt-r': '',
}
},
'fedora40': {
'docker_image': 'quay.io/fedora/fedora:40',
'vagrant_box': 'fedora/40-cloud-base',
'fedora41': {
'docker_image': 'quay.io/fedora/fedora:41',
'vagrant_box': 'fedora/41-cloud-base',
'bootstrap': DNF_BOOTSTRAP,
'replace': {
'lsb-release': 'redhat-lsb',
@ -581,6 +587,7 @@ RPM_DISTS = {
'keyutils-libs-devel': 'keyutils-devel',
'krb5-workstation': 'krb5-client',
'python3-libsemanage': 'python3-semanage',
'python3-crypt-r': '',
'openldap-devel': 'openldap2-devel',
'perl-Archive-Tar': 'perl-Archive-Tar-Wrapper',
'perl-JSON-Parse': 'perl-JSON-XS',

View File

@ -45,11 +45,11 @@ Vagrant.configure("2") do |config|
v.vm.provision :shell, path: "debian12-32bit/locale.sh"
end
config.vm.define "fedora40" do |v|
v.vm.box = "fedora/40-cloud-base"
v.vm.hostname = "fedora40"
v.vm.provision :shell, path: "fedora40/bootstrap.sh"
v.vm.provision :shell, path: "fedora40/locale.sh"
config.vm.define "fedora41" do |v|
v.vm.box = "fedora/41-cloud-base"
v.vm.hostname = "fedora41"
v.vm.provision :shell, path: "fedora41/bootstrap.sh"
v.vm.provision :shell, path: "fedora41/locale.sh"
end
config.vm.define "opensuse155" do |v|

View File

@ -3,7 +3,7 @@
# See also bootstrap/config.py
#
FROM quay.io/fedora/fedora:40
FROM quay.io/fedora/fedora:41
# pass in with --build-arg while build
ARG SHA1SUM

View File

@ -92,6 +92,7 @@ dnf install -y \
procps-ng \
psmisc \
python3 \
python3-crypt-r \
python3-cryptography \
python3-dateutil \
python3-devel \

View File

@ -81,6 +81,7 @@ packages:
- procps-ng
- psmisc
- python3
- python3-crypt-r
- python3-cryptography
- python3-dateutil
- python3-devel

View File

@ -1 +1 @@
936722ecb26bedf6ea0acd9228963ce45ed419d4
b86ed4890ab0f95b15d3f3b11d1cd21327ac045f