Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-32332

ssl-mitm.pl requires autodie module not available by default on some platforms

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • N/A
    • N/A
    • Tests
    • None

    Description

      main.ssl_autoverify fails on some buildbot builders in a dirty fashion:

      preview-11.3-preview b09e99ff759f66c29e3f67911ef4c7c0591c8a4e

      main.ssl_autoverify 'pem,unix'           w3 [ fail ]
              Test ended at 2023-09-17 10:00:00
       
      CURRENT_TEST: main.ssl_autoverify
      Can't locate autodie.pm in @INC (you may need to install the autodie module) (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at lib/ssl-mitm.pl line 7.
      BEGIN failed--compilation aborted at lib/ssl-mitm.pl line 7.
      mysqltest: At line 89: exec of 'perl lib/ssl-mitm.pl --listen-on 16221 --connect-to 16220 --ssl-ca std_data/cacert.pem --ssl-key std_data/server-new-key.pem --ssl-cert std_data/server-new-cert.pem' failed, error: 512, status: 2, errno: 0
      Output from before failure:
      test.have_ssl()
      yes
      

      It happened in the old buildbot on kvm-deb-buster-aarch64 and kvm-deb-sid-amd64, and on a bunch of builders in the new buildbot (aarch64-centos-stream8, aarch64-rhel-8, amd64-centos-7, amd64-centos-7-bintar, amd64-centos-stream8, amd64-centos-stream9, amd64-fedora-37, amd64-fedora-38, amd64-opensuse-15, amd64-rhel-7, amd64-rhel-8, ppc64le-centos-stream8, ppc64le-centos-stream9, ppc64le-rhel-8, ppc64le-rhel-9, s390x-rhel-8, s390x-sles-15)

      Attachments

        Activity

          Net::SSLeay is also missing on some builders, e.g. on buster-aarch64

          serg Sergei Golubchik added a comment - Net::SSLeay is also missing on some builders, e.g. on buster-aarch64
          danblack Daniel Black added a comment -

          RPM where easy to fix: https://github.com/MariaDB/buildbot/pull/176

          opensuse/sles is missing Net/SSLeay.pm rather than autodie.

          danblack Daniel Black added a comment - RPM where easy to fix: https://github.com/MariaDB/buildbot/pull/176 opensuse/sles is missing Net/SSLeay.pm rather than autodie.

          Should be fixed on the new BB now.
          OpenSuse fix is in https://github.com/MariaDB/buildbot/pull/184 and sles image was re-generated manually.

          faust Faustin Lammler added a comment - Should be fixed on the new BB now. OpenSuse fix is in https://github.com/MariaDB/buildbot/pull/184 and sles image was re-generated manually.

          There is still the question whether a test should be skipped rather than aborted when a non-default module isn't found. For the internal testing, failing is better because otherwise we will never know that a test doesn't run somewhere. But the tests are provided with the server, and for a user it is probably better if a test is skipped, especially if the perl packages aren't pulled as a dependency.

          elenst Elena Stepanova added a comment - There is still the question whether a test should be skipped rather than aborted when a non-default module isn't found. For the internal testing, failing is better because otherwise we will never know that a test doesn't run somewhere. But the tests are provided with the server, and for a user it is probably better if a test is skipped, especially if the perl packages aren't pulled as a dependency.

          both perl(autodie) and perl(Net::SSLeay) are added to rpm package dependencies automatically. on deb they aren't, but deb packages don't have any perl package dependencies at all, not even those that mtr requires and fails without.

          So, I think, these two didn't change anything. On rpm-based system they'll get installed automatically, like all other packages that mtr depends on. On deb-based system they won't be installed automatically, like all other packages that mtr depends on, so it'll be on the user, just as it always was.

          serg Sergei Golubchik added a comment - both perl(autodie) and perl(Net::SSLeay) are added to rpm package dependencies automatically. on deb they aren't, but deb packages don't have any perl package dependencies at all, not even those that mtr requires and fails without. So, I think, these two didn't change anything. On rpm-based system they'll get installed automatically, like all other packages that mtr depends on. On deb-based system they won't be installed automatically, like all other packages that mtr depends on, so it'll be on the user, just as it always was.

          fixed by installing autodie as needed

          serg Sergei Golubchik added a comment - fixed by installing autodie as needed

          People

            serg Sergei Golubchik
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.