Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Node.js Munki Recipe is failing with "curl: (56) The requested URL returned error: 412" #261

Open
fseesink opened this issue Feb 2, 2025 · 0 comments

Comments

@fseesink
Copy link

fseesink commented Feb 2, 2025

With RELEASE set to "latest-v22.x" in my override of node.munki, as it has been for some time, this recipe is now failing. When running it in Terminal with

autopkg run -vvv node.munki.recipe

the (slightly sanitized) output in part shows the output below. What is odd is that the URL it appears to construct is accurate (https://nodejs.org/dist/latest-v22.x/node-v22.13.1.pkg), and if I simply copy/paste that into a browser, sure enough it downloads the file. So scratching my head as to why this exception is kicking off.

I haven't touched this recipe in some time, and other than the usual OS updates (the box running this is on macOS 15.3), it's a pretty static setup. But just thought I should mention this as until recently, it's been working fine. So much so that this same version of Node.js (22.13.1) is what is installed on the Macs that have this installed through Munki.

I only noticed this because AutoPkgr kicked up an error that it reported to me via Slack which simply said "curl: (56) The requested URL returned error: 412". That made me go back and find that it was this recipe triggering that.

...
 'RELEASE': 'latest-v22.x',
 'pkginfo': {'blocking_applications': ['node', 'npm'],
             'catalogs': ['testing'],
             'category': 'Programming',
             'description': "Node.js® is a platform built on Chrome's "
                            'JavaScript runtime for easily building fast, '
                            'scalable network applications.<br><br>\n'
                            '\t\t\t<img '
                            'src="https://<myserverpath>/node.png">',
             'developer': 'Node.js Foundation',
             'display_name': 'Node.js',
             'name': 'node',
             'unattended_install': True},
 'verbose': 3}
URLTextSearcher
{'Input': {'re_pattern': 'node-v([0-9]+(\\.[0-9]+)+)\\.pkg',
           'result_output_var_name': 'version',
           'url': 'https://nodejs.org/dist/latest-v22.x'}}
URLTextSearcher: Found matching text (version): 22.13.1
{'Output': {'version': '22.13.1'}}
URLDownloader
{'Input': {'url': 'https://nodejs.org/dist/latest-v22.x/node-v22.13.1.pkg'}}
URLDownloader: No value supplied for prefetch_filename, setting default value of: False
URLDownloader: No value supplied for CHECK_FILESIZE_ONLY, setting default value of: False
URLDownloader: ERROR: (56) The requested URL returned error: 412

Traceback (most recent call last):
  File "/Library/AutoPkg/autopkglib/URLGetter.py", line 172, in execute_curl
    result = subprocess.run(
  File "/Library/AutoPkg/Python3/Python.framework/Versions/3.10/lib/python3.10/subprocess.py", line 524, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/bin/curl', '--silent', '--show-error', '--no-buffer', '--dump-header', '-', '--speed-time', '30', '--location', '--url', 'https://nodejs.org/dist/latest-v22.x/node-v22.13.1.pkg', '--fail', '--output', '/<pathto>/AutoPkg/Cache/local.munki.node/downloads/tmpqign_l3g', '--header', 'If-None-Match: "4d535afd174a766a3c972be123353cb6"', '--header', 'If-Modified-Since: Tue, 21 Jan 2025 04:33:13 GMT']' returned non-zero exit status 56.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Library/AutoPkg/autopkglib/__init__.py", line 840, in process
    self.env = processor.process()
  File "/Library/AutoPkg/autopkglib/__init__.py", line 626, in process
    self.main()
  File "/Library/AutoPkg/autopkglib/URLDownloader.py", line 331, in main
    raw_headers = self.download_with_curl(curl_cmd)
  File "/Library/AutoPkg/autopkglib/URLGetter.py", line 186, in download_with_curl
    proc_stdout, proc_stderr, retcode = self.execute_curl(curl_cmd, text)
  File "/Library/AutoPkg/autopkglib/URLGetter.py", line 181, in execute_curl
    raise ProcessorError(e.stderr) from e
autopkglib.ProcessorError: curl: (56) The requested URL returned error: 412

  File "/Library/AutoPkg/autopkglib/__init__.py", line 840, in process
    self.env = processor.process()
curl: (56) The requested URL returned error: 412

Failed.
Receipt written to /<pathto>/Library/AutoPkg/Cache/local.munki.node/receipts/node.munki-receipt-20250202-095723.plist

The following recipes failed:
    node.munki.recipe
        Error in local.munki.node: Processor: URLDownloader: Error: curl: (56) The requested URL returned error: 412

Nothing downloaded, packaged or imported.

@fseesink fseesink changed the title Recipe is failing with "curl: (56) The requested URL returned error: 412" Node.js Munki Recipe is failing with "curl: (56) The requested URL returned error: 412" Feb 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant