Skip to main content
Solved

File Cannot be processed

  • October 18, 2025
  • 8 replies
  • 90 views

karman
Forum|alt.badge.img+1
  • New Contributor
  • 4 replies

Hello,

 

I am trying to create a configuration profile on Jamf to deploy it to my mac laptop.

The .mobileconfig is built using the template mentioned here (docker.mobileconfig): https://docs.docker.com/enterprise/security/enforce-sign-in/methods/#macos-configuration-profiles-method-recommended 

When I try to upload this in Jamf (we use Jamf Pro) using the “Upload” option shown below, it fails with the error “File Cannot be processed”

 

I am able to create the profile using the “New” button where I copy and paste my profile in the Property List box.

I don’t suspect anything wrong with the template structure as using “New” button I am able to upload it and also I am  able to directly add my profile on my mac laptop.

Any idea why I am getting “File Cannot be processed” error when I use “Upload” option ?

I have reviewed few old posts reporting similar error, but they are slightly different than my issue.

Appreciate any help.

Best answer by Chubs

I would also like to know if Jamf logs any more details on the “File cannot be processed” error, just to understand why it couldn’t.


First place to look is in the JSS Logs.

Usually it means that the file is either:

  1. XML is formatted incorrectly (inadvertent spaces, missing pieces, etc. etc.)
  2. A utility wasn’t leveraged to convert it to a mobileconfig file

 

Check into the use of plutil. I believe there’s a convert option on it (been many moons since I’ve used it) or possibly even a linting option via that utility to validate the mobileconfig. I quit making custom mobileconfigs long ago due to the schemas options. 

8 replies

Chubs
Forum|alt.badge.img+20
  • Jamf Heroes
  • 241 replies
  • October 18, 2025

instead of using what docker said, you can follow these instructions with that plist they gave:

https://learn.jamf.com/en-US/bundle/technical-articles/page/Deploying_Custom_Computer_Configuration_Profiles_Using_the_Application_and_Custom_Settings_Payload.html

 

Or better still, create a custom profile schema so you can edit it in the gui instead of a plist.  I’ll end up creating a schema before too long and I’ll post it here if I remember to do so.

 


karman
Forum|alt.badge.img+1
  • Author
  • New Contributor
  • 4 replies
  • October 18, 2025

@Chubs Thank you. I will  follow the instructions from the link you shared and give it a try.

In case you didn’t get a chance to create a schema, appreciate if you can point me to some references on how to go about it. Thank you.

edit: found some info on custom schemas here: https://github.com/Jamf-Custom-Profile-Schemas Will give it a try.


karman
Forum|alt.badge.img+1
  • Author
  • New Contributor
  • 4 replies
  • October 19, 2025

I would also like to know if Jamf logs any more details on the “File cannot be processed” error, just to understand why it couldn’t.


Chubs
Forum|alt.badge.img+20
  • Jamf Heroes
  • 241 replies
  • Answer
  • October 19, 2025

I would also like to know if Jamf logs any more details on the “File cannot be processed” error, just to understand why it couldn’t.


First place to look is in the JSS Logs.

Usually it means that the file is either:

  1. XML is formatted incorrectly (inadvertent spaces, missing pieces, etc. etc.)
  2. A utility wasn’t leveraged to convert it to a mobileconfig file

 

Check into the use of plutil. I believe there’s a convert option on it (been many moons since I’ve used it) or possibly even a linting option via that utility to validate the mobileconfig. I quit making custom mobileconfigs long ago due to the schemas options. 


karman
Forum|alt.badge.img+1
  • Author
  • New Contributor
  • 4 replies
  • October 23, 2025

An update on this. It was indeed an inadvertent space in the .mobileconfig file. There was an extra white space on the first line at the beginning

 <?xml version

Once removed everything worked fine. plutil didn’t complain about the white space. Not sure why JamF couldn’t handle it. If anyone from JamF is here, appreciate if the user facing error reporting can be improved.

 

Thanks to ​@Chubs  for suggesting the Custom Schema approach. I tried it out, and it’s a much simpler, cleaner method — and it worked perfectly!


Chubs
Forum|alt.badge.img+20
  • Jamf Heroes
  • 241 replies
  • October 23, 2025

I should have a schema this week if you want to give it a go. Surprised no one has made one yet. We’re just now wrapping docker desktop into our managed fold since the TOS was broken by like 300 of our employees 👀


Chubs
Forum|alt.badge.img+20
  • Jamf Heroes
  • 241 replies
  • October 23, 2025

@karman while I don’t have a good way to test this yet, I just threw this together - so give it a whirl and see if it works for ya!

 

{
"title": "Docker Desktop Configuration Schema",
"description": "Schema for managing Docker Desktop settings via a Custom Configuration Profile Payload.",
"required": [],
"type": "object",
"properties": {
"PayloadDisplayName": {
"type": "string",
"title": "Payload Display Name",
"description": "The display name for the embedded payload.",
"default": "Docker Desktop Configuration"
},
"PayloadDescription": {
"type": "string",
"title": "Payload Description",
"description": "Description of the embedded payload.",
"default": "Configuration profile to manage Docker Desktop settings."
},
"allowedOrgs": {
"type": "string",
"title": "Allowed Organizations",
"description": "Semicolon-separated list of organizations allowed to use Docker Desktop (e.g., first_org;second_org).",
"default": ""
},
"overrideProxyHTTP": {
"type": "string",
"title": "Override HTTP Proxy",
"description": "Custom HTTP proxy setting for Docker Desktop (e.g., http://company.proxy:port).",
"default": ""
},
"overrideProxyHTTPS": {
"type": "string",
"title": "Override HTTPS Proxy",
"description": "Custom HTTPS proxy setting for Docker Desktop (e.g., https://company.proxy:port).",
"default": ""
}
}
}

 


karman
Forum|alt.badge.img+1
  • Author
  • New Contributor
  • 4 replies
  • October 23, 2025

@Chubs thank you.

I had written this one yesterday which worked fine for me. Almost same as yours, except this mandates only one of the 3 configs.

{
"title": "Docker Desktop Proxy and AllowedOrg Configuration",
"description": "Defines three string-based configuration keys to configure proxy server and allowedOrgs for Docker Desktop. All fields default to empty strings, and at least one must be provided.",
"type": "object",
"properties": {
"allowedOrgs": {
"title": "Allowed Organizations",
"type": "string",
"description": "one or more organization names, separated by semicolon",
"default": ""
},
"overrideProxyHTTP": {
"title": "Override HTTP Proxy",
"type": "string",
"description": "Hostname or URL of the HTTP proxy to override system defaults.",
"default": ""
},
"overrideProxyHTTPS": {
"title": "Override HTTPS Proxy",
"type": "string",
"description": "Hostname or URL of the HTTPS proxy to override system defaults.",
"default": ""
}
},
"anyOf": [
{ "required": ["allowedOrgs"] },
{ "required": ["overrideProxyHTTP"] },
{ "required": ["overrideProxyHTTPS"] }
]
}