Testing macOS Mojave and Munki

Testing macOS Mojave and Munki

I started testing our deployment workflow this week with macOS 10.14. The first thing I do on a new machine is install munki, reboot, enter the client settings for munki, and then run sudo managedsoftwareupdate. Munki then runs and installs all the right things.

But this time it didn't work. I received this error message:

Traceback (most recent call last):
  File "/usr/local/munki/managedsoftwareupdate", line 58, in <module>
    from munkilib import appleupdates
  File "/usr/local/munki/munkilib/appleupdates/__init__.py", line 1, in <module>
    from .core import *
  File "/usr/local/munki/munkilib/appleupdates/core.py", line 22, in <module>
    from . import au
  File "/usr/local/munki/munkilib/appleupdates/au.py", line 39, in <module>
    from . import sync
  File "/usr/local/munki/munkilib/appleupdates/sync.py", line 41, in <module>
    from .. import fetch
  File "/usr/local/munki/munkilib/fetch.py", line 45, in <module>
    from . import keychain
  File "/usr/local/munki/munkilib/keychain.py", line 30, in <module>
    from OpenSSL.crypto import load_certificate, FILETYPE_PEM
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/OpenSSL/__init__.py", line 41, in <module>
    from OpenSSL import rand, SSL
ImportError: dlopen(/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/OpenSSL/SSL.so, 2): Symbol not found: _SSLv3_method
  Referenced from: /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/OpenSSL/SSL.so
  Expected in: flat namespace
 in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/OpenSSL/SSL.so

Ok - what's going on here? Looks like an issue with OpenSSL, SSLv3, or maybe Python 2.7? I'm not entirely sure.🤔
A quick Google search produced this helpful exchange on Munki's issue tracker on Github. Looks like clburlison figured how to fix it and his changes were committed. Thank you! 🎉

I want to test this fix now but the latest Munki version was released on May 9th, 2018 and doesn't contain this update. Thankfully munkibuilds.org auto builds from different branches of Munki. Navigating to the Munki3dev branch, I see a there's a new build of Munki (v3.4.03533) built on 6/12/2018. A quick download and test proves that it fixes the error message above. That's good enough for me, for now, during testing. 👍

Disclaimer: Pre-release builds should only be used for testing.

6/30/2018 Update: Munki v3.3.1 fixes this problem, as listed in the change notes.