The branch, master has been updated
       via  a882e861047 gitlab-ci: Fix building debian 32bit images
       via  475896028b2 gitlab-ci: Move to Fedora 41
       via  be5531aaec7 selftest: Allow to use SHA1 with OpenSSL for selftest
       via  6c619c77c9b python: Fix length of Common Name x509 attribute
      from  3294fb0667d autobuild: Run the samba-minimal-smbd build jobs with 
-j 2

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit a882e8610477b5c124bf4e3ec44fd7932a138ac7
Author: Andreas Schneider <[email protected]>
Date:   Tue Nov 26 19:38:40 2024 +0100

    gitlab-ci: Fix building debian 32bit images
    
    Trying to pull registry-1.docker.io/i386/debian:12...
    Error: creating build container: choosing an image from manifest list
    docker://registry-1.docker.io/i386/debian:12: no image found in image index 
for
    architecture "amd64", variant "", OS "linux"
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Stefan Metzmacher <[email protected]>
    
    Autobuild-User(master): Andreas Schneider <[email protected]>
    Autobuild-Date(master): Wed Nov 27 16:32:07 UTC 2024 on atb-devel-224

commit 475896028b292d86331f51e7aa619a98d931094d
Author: Andreas Schneider <[email protected]>
Date:   Wed Nov 20 15:43:13 2024 +0100

    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 <[email protected]>
    Reviewed-by: Stefan Metzmacher <[email protected]>

commit be5531aaec7b2332ac288b64c86ec8f8cb6c85b6
Author: Andreas Schneider <[email protected]>
Date:   Wed Nov 27 11:17:27 2024 +0100

    selftest: Allow to use SHA1 with OpenSSL for selftest
    
    This is needed for samba.tests.krb5.pkinit_tests with sha1.
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Stefan Metzmacher <[email protected]>

commit 6c619c77c9bab8b659b8bffc21c3b9303c1566f2
Author: Andreas Schneider <[email protected]>
Date:   Wed Nov 27 10:15:45 2024 +0100

    python: Fix length of Common Name x509 attribute
    
    File "bin/python/samba/tests/krb5/pkinit_tests.py", line 1496, in
    create_certificate
      x509.NameAttribute(NameOID.COMMON_NAME,
      ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
                         f'{cert_name}/emailAddress={cert_name}'),
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib64/python3.13/site-packages/cryptography/x509/name.py",
    line 152, in __init__
      raise ValueError(msg)
    ValueError: Attribute's length must be >= 1 and <= 64, but it was 84
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Stefan Metzmacher <[email protected]>

-----------------------------------------------------------------------

Summary of changes:
 .gitlab-ci-main.yml                                      | 16 ++++++++--------
 bootstrap/.gitlab-ci.yml                                 |  6 ++++--
 bootstrap/config.py                                      | 15 +++++++++++----
 bootstrap/generated-dists/Vagrantfile                    | 10 +++++-----
 bootstrap/generated-dists/debian11-32bit/Dockerfile      |  2 +-
 .../generated-dists/{fedora40 => fedora41}/Dockerfile    |  2 +-
 .../generated-dists/{fedora40 => fedora41}/bootstrap.sh  |  1 +
 .../generated-dists/{fedora40 => fedora41}/locale.sh     |  0
 .../generated-dists/{fedora40 => fedora41}/packages.yml  |  1 +
 bootstrap/sha1sum.txt                                    |  2 +-
 python/samba/tests/krb5/pkinit_tests.py                  |  3 +--
 selftest/selftest.pl                                     |  4 ++++
 12 files changed, 38 insertions(+), 24 deletions(-)
 rename bootstrap/generated-dists/{fedora40 => fedora41}/Dockerfile (91%)
 rename bootstrap/generated-dists/{fedora40 => fedora41}/bootstrap.sh (96%)
 rename bootstrap/generated-dists/{fedora40 => fedora41}/locale.sh (100%)
 rename bootstrap/generated-dists/{fedora40 => fedora41}/packages.yml (98%)


Changeset truncated at 500 lines:

diff --git a/.gitlab-ci-main.yml b/.gitlab-ci-main.yml
index 8220840d741..a4bfc48d6ba 100644
--- a/.gitlab-ci-main.yml
+++ b/.gitlab-ci-main.yml
@@ -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: d101907857587b6421907c45676497c336d45ea7
   #
   # 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 ...
diff --git a/bootstrap/.gitlab-ci.yml b/bootstrap/.gitlab-ci.yml
index ac2b4ebed09..0b37863d35a 100644
--- a/bootstrap/.gitlab-ci.yml
+++ b/bootstrap/.gitlab-ci.yml
@@ -10,6 +10,7 @@
   variables:
     SAMBA_CI_IS_BROKEN_IMAGE: "no"
     SAMBA_CI_TEST_JOB: "samba-o3"
+    SAMBA_CI_PLATFORM: "linux/amd64"
   before_script:
     # install prerequisites
     - dnf install -qy diffutils
@@ -27,7 +28,7 @@
   script: |
     set -xueo pipefail
     ci_image_name=samba-ci-${CI_JOB_NAME}
-    podman build -t ${ci_image_name} --build-arg 
SHA1SUM=${SAMBA_CI_CONTAINER_TAG} bootstrap/generated-dists/${CI_JOB_NAME}
+    podman build --platform ${SAMBA_CI_PLATFORM} --tag ${ci_image_name} 
--build-arg SHA1SUM=${SAMBA_CI_CONTAINER_TAG} 
bootstrap/generated-dists/${CI_JOB_NAME}
     ci_image_path="${SAMBA_CI_CONTAINER_REGISTRY}/${ci_image_name}"
     timestamp=$(date +%Y%m%d%H%M%S)
     container_hash=$(podman image inspect --format='{{ .Id }}' 
${ci_image_name} | cut -c 1-9)
@@ -98,13 +99,14 @@ debian11:
 debian12:
   extends: .build_image_template
 
-fedora40:
+fedora41:
   extends: .build_image_template
 
 debian11-32bit:
   extends: .build_image_template
   variables:
     SAMBA_CI_TEST_JOB: "samba-32bit"
+    SAMBA_CI_PLATFORM: "linux/i386"
 
 rocky8:
   extends: .build_image_template
diff --git a/bootstrap/config.py b/bootstrap/config.py
index 8b2672f9ddd..e7c0a0deb51 100644
--- a/bootstrap/config.py
+++ b/bootstrap/config.py
@@ -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', ''),
@@ -457,7 +461,7 @@ DEB_DISTS = {
         }
     },
     'debian11-32bit': {
-        'docker_image': 'registry-1.docker.io/i386/debian:11',
+        'docker_image': 'debian:11',  # specify the platform in .gitlab-ci.yaml
         'vagrant_box': 'debian/bullseye32',
         'replace': {
             'language-pack-en': '',   # included in locales
@@ -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',
diff --git a/bootstrap/generated-dists/Vagrantfile 
b/bootstrap/generated-dists/Vagrantfile
index c1809cfe6b8..d4d3c29580c 100644
--- a/bootstrap/generated-dists/Vagrantfile
+++ b/bootstrap/generated-dists/Vagrantfile
@@ -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|
diff --git a/bootstrap/generated-dists/debian11-32bit/Dockerfile 
b/bootstrap/generated-dists/debian11-32bit/Dockerfile
index d0133bd41c6..90a961f5345 100644
--- a/bootstrap/generated-dists/debian11-32bit/Dockerfile
+++ b/bootstrap/generated-dists/debian11-32bit/Dockerfile
@@ -3,7 +3,7 @@
 # See also bootstrap/config.py
 #
 
-FROM registry-1.docker.io/i386/debian:11
+FROM debian:11
 
 # pass in with --build-arg while build
 ARG SHA1SUM
diff --git a/bootstrap/generated-dists/fedora40/Dockerfile 
b/bootstrap/generated-dists/fedora41/Dockerfile
similarity index 91%
rename from bootstrap/generated-dists/fedora40/Dockerfile
rename to bootstrap/generated-dists/fedora41/Dockerfile
index 40f4981db12..b45f8243f32 100644
--- a/bootstrap/generated-dists/fedora40/Dockerfile
+++ b/bootstrap/generated-dists/fedora41/Dockerfile
@@ -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
diff --git a/bootstrap/generated-dists/fedora40/bootstrap.sh 
b/bootstrap/generated-dists/fedora41/bootstrap.sh
similarity index 96%
rename from bootstrap/generated-dists/fedora40/bootstrap.sh
rename to bootstrap/generated-dists/fedora41/bootstrap.sh
index 22d2fa89745..941f7b32185 100755
--- a/bootstrap/generated-dists/fedora40/bootstrap.sh
+++ b/bootstrap/generated-dists/fedora41/bootstrap.sh
@@ -92,6 +92,7 @@ dnf install -y \
     procps-ng \
     psmisc \
     python3 \
+    python3-crypt-r \
     python3-cryptography \
     python3-dateutil \
     python3-devel \
diff --git a/bootstrap/generated-dists/fedora40/locale.sh 
b/bootstrap/generated-dists/fedora41/locale.sh
similarity index 100%
rename from bootstrap/generated-dists/fedora40/locale.sh
rename to bootstrap/generated-dists/fedora41/locale.sh
diff --git a/bootstrap/generated-dists/fedora40/packages.yml 
b/bootstrap/generated-dists/fedora41/packages.yml
similarity index 98%
rename from bootstrap/generated-dists/fedora40/packages.yml
rename to bootstrap/generated-dists/fedora41/packages.yml
index 532ac877fdd..f00bacbd988 100644
--- a/bootstrap/generated-dists/fedora40/packages.yml
+++ b/bootstrap/generated-dists/fedora41/packages.yml
@@ -81,6 +81,7 @@ packages:
   - procps-ng
   - psmisc
   - python3
+  - python3-crypt-r
   - python3-cryptography
   - python3-dateutil
   - python3-devel
diff --git a/bootstrap/sha1sum.txt b/bootstrap/sha1sum.txt
index 25a8e482d2c..401c5fda44b 100644
--- a/bootstrap/sha1sum.txt
+++ b/bootstrap/sha1sum.txt
@@ -1 +1 @@
-936722ecb26bedf6ea0acd9228963ce45ed419d4
+d101907857587b6421907c45676497c336d45ea7
diff --git a/python/samba/tests/krb5/pkinit_tests.py 
b/python/samba/tests/krb5/pkinit_tests.py
index dbd158b2dc2..5278d4945cf 100755
--- a/python/samba/tests/krb5/pkinit_tests.py
+++ b/python/samba/tests/krb5/pkinit_tests.py
@@ -1493,8 +1493,7 @@ class PkInitTests(KDCBaseTest):
             x509.NameAttribute(NameOID.STATE_OR_PROVINCE_NAME, 'SambaState'),
             x509.NameAttribute(NameOID.ORGANIZATION_NAME, 'SambaSelfTesting'),
             x509.NameAttribute(NameOID.ORGANIZATIONAL_UNIT_NAME, 'Users'),
-            x509.NameAttribute(NameOID.COMMON_NAME,
-                               f'{cert_name}/emailAddress={cert_name}'),
+            x509.NameAttribute(NameOID.COMMON_NAME, f'{cert_name}'),
         ]))
 
         # The new certificate must be issued by the root CA.
diff --git a/selftest/selftest.pl b/selftest/selftest.pl
index a0c4ec80f59..2455b75a36e 100755
--- a/selftest/selftest.pl
+++ b/selftest/selftest.pl
@@ -455,6 +455,10 @@ if ($opt_mitkrb5 == 1) {
        $ENV{KRB5RCACHETYPE} = "none";
 }
 
+# Enable support for SHA1 in OpenSSL
+# This is required e.g. for pkinit sha1 tests
+$ENV{OPENSSL_ENABLE_SHA1_SIGNATURES} = 1;
+
 # After this many seconds, the server will self-terminate.  All tests
 # must terminate in this time, and testenv will only stay alive this
 # long


-- 
Samba Shared Repository

Reply via email to