Reposado setup - getting "The operation could not be completed. (NSURLErrorDomain error -1100.)"

mm2270
Legendary Contributor III

Hi all,

I'm running into a perplexing problem that I've not been able to solve yet, so I'm asking here if anyone has some insight into how to solve this one.

Background: I'm moving off of using Apple's macOS Server SUS in favor of reposado + margarita, as I've become a bit tired of fighting odd issues with Apple's SUS. Setting up reposado and getting updates to sync to the boxes has not been an issue. Everything went pretty smoothly with it for the most part.

The problem: At first, the catalog URLs I set up were working great when I pointed my Mac to them in the com.apple.SoftwareUpdate.plist. I was able to run sudo softwareupdate -l and confirm that it was seeing updates hosted on the Mac running reposado. So far so good, right?
Well, somewhere along the line, this broke on me. Now whenever I run sudo softwareupdate -l it looks like it's checking for updates and then it comes back with

The operation could not be completed. (NSURLErrorDomain error -1100.)

As a test, I pointed my Mac back to Apple and ran the command again, and this time it successfully showed me some available updates. So that kind of ruled out a general issue with the softwareupdate command. To confirm I wasn't crazy, I plugged the reposado generated URL my Mac was pointed to into Safari and it loads, perfectly. Even shows as an xml file and everything.

But no matter what I've done, reboots on the server, rebooting my Mac, re-running the repoutil --configure and repo_sync commands, whatever, the above error keeps coming up when I run the softwareupdate --list command on it.

So next I started to think this was an issue with my primary Mac, so I took another test system, running 10.12.6, and pointed it to the same URL. I get the same error when asking it to check for updates. So this means it's not my Mac, but something with reposado or the web site being served. Yet, the full URL loads fine in a browser. Strange!

I have more than one server serving out updates, so I have one or two other servers also synced with updates in reposado. I tried pointing to one of them, despite the server being physically further away from me in EU. Oddly, I get the same error! This means anything running reposado seems to having this problem. I can't fathom why though!
At this point, i'm truly stumped! I just can't figure out what's going on here. These were working fine before and suddenly stopped working, and no measures done so far have brought it back to functionality, on any of the servers I set the product up on.

I've done some searches here and on the web in general, and I pulled up a couple of very old threads of folks facing the same problem, but unfortunately there was no resolution posted on those threads.
Has anyone seen this, and figured out what causes it?

I'm tempted to blow everything away from one of the servers re: reposado and start over, but the repo_sync takes literally days to complete, so I'm really hoping I don't need to do that.

Any suggestions would be greatly appreciated, or I may have to abandon trying to use it if I can't figure out why this isn't working. :(

6 REPLIES 6

mm2270
Legendary Contributor III

So, for as much as I didn't want to do this, I'm in the process of repo_sync downloading all the updates again into a mostly fresh setup on one of the servers. It'll take a while to complete, but I'm hoping this will solve the issue at least. I'll post back with results. If it does work, then I will likely need to go thru the same process on the other boxes - a real time sink, but whatever.
If this doesn't work, then I guess I will need to rethink the whole shebang since I'm not sure what's up at that point.

Would still appreciate any thoughts, ideas or things to try (assuming I missed some things to try) if anyone has any.

Thanks for reading.

Nix4Life
Valued Contributor

@mm2270 Hey Mike, are managing your clients with a profile? if so it could be the plist you used to create the profile. I can provide more info if this is the case

mm2270
Legendary Contributor III

Hi @Nix4Life thanks for your post. No, actually we don't have a Config Profile pointing Macs to our SUS address. It's done manually, at least in the cases that I've been testing with. For example, I would run sudo softwareupdate --set-catalog <full catalog URL> and can later confirm it has the address in the plist by running defaults read /Library/Preferences/com.apple.SoftwareUpdate.plist CatalogURL

So to give an update on this, sadly, a full re-download of all packages using sudo repo_sync and setting this all up again has yielded the same error :(
I'm truly at a loss. I just don't understand what could be set up wrong where softwareupdate refuses to load the catalog. And again, this loads fine in a browser, so I know the address is valid. I just can't convince the softwareudpate tool to see it as valid.

I'll ask once again, if anyone has ideas, please let me know. I was really hoping to be able to use reposado for this, but it's just not cooperating for some reason.

Nix4Life
Valued Contributor

Hey @mm2270 I'm sure you have done it, but did you check:

  1. permissions on html
  2. localcatalog/url
  3. outbound ports
  4. I am on slack if you want me to take a look or post in the #reposado channel you are close man, hang in there

mm2270
Legendary Contributor III

@Nix4Life Thanks. Permissions on html is one of the things I looked at, but, I have to be honest, even after looking thru some of the documentation, I'm a little unclear on what it's supposed to be exactly. I assume full read for all users, and write perms to the main account on the server, which it is set at, but, maybe I've got something wrong on that. I don't know.

Nix4Life
Valued Contributor

hey Mike, in meetings all day. My mistake I meant the security permissions on html