jssimporter / JSSImporter

JSSImporter is deprecated. Please see the wiki for alternatives
Apache License 2.0
145 stars 38 forks source link

[1.0.0] Error: Error Parsing XML: #119

Closed golbiga closed 4 years ago

golbiga commented 6 years ago

After installing 1.0.0 beta 1, I'm receiving the following error when running any recipe.

The following recipes failed: Google Chrome.jss.recipe Error in local.jss.Google Chrome: Processor: JSSImporter: Error: Error Parsing XML:

Not seeing anything else in the logs which would be of much help. I'm using 1.0.0 because 0.5.1 was failing when I tried logging in via the failover link since we have SSO enabled on our JSS.

Allen

sheagcraig commented 6 years ago

Hey @golbiga. So you're not getting any more detail if you do an autopkg run -vvvv.

My guess is that your SSO setup is causing the API requests to fail so the response doesn't include XML, which JSSImporter is expecting.

I would probably figure out which request is failing (probably the very first one, which is a GET request to https://yourjss.com:8443/api/distributionpoints. I bet if we just do that with curl, we'll see an auth error and non-XML response body.

golbiga commented 6 years ago

I was using the ?failover link and since removed it. The GET request is going through now, but I'm still receiving an error.

The following recipes failed: Google Chrome.jss.recipe Error in local.jss.Google Chrome: Processor: JSSImporter: Error: Error Parsing XML: {"distribution_points":[{"id":2,"name":"XXX Distribution Point"}]}

I fully disabled SSO and receive the same error.

golbiga commented 6 years ago

Here is the output after the change to curl_adapter.py

Error in local.jss.yo: Processor: JSSImporter: Error: Response Code: 409 Response: Conflict. API file upload exception:org.apache.commons.fileupload.FileUploadBase$InvalidContentTypeException: the request doesn't contain a multipart/form-data or multipart/mixed stream, content type header is text/xml; boundary=------------------------8929592e5972f4d8 https://server.com:8443/JSSResource/fileuploads/policies/id/282.

golbiga commented 6 years ago

I should have added to the above comment:

JSSImporter: Found file: /Users/user/Library/AutoPkg/RecipeRepos/com.github.autopkg.jss-recipes/yo/yo.png

I definitely think its the icon upload.

Here is the full output. output.txt

sheagcraig commented 6 years ago

So it looks like the Icon, which is uploaded through the /fileuploads endpoint (we need better icon management in the API btw) is not setting the correct header.

Hopefully that's not too big of a deal to fix.

grahampugh commented 5 years ago

@golbiga I notice this was run on Jamf Pro 9.101, so many updates since then - did you solve this problem? Did you try changing yo.png to a different icon, and/or did you experience the problem with any other recipes?