We upgraded to Jamf Pro 11.25.2 and attempted to sync a new package to AWS/CloudFront today. Since the upgrade, JDCS appears in the list (which is not configured in our environment) in place of AWS. I have confirmed that:
- AWS/CloudFront is set as primary
- Connection tests are successful
- Uploading a package in the Web UI adds the file to AWS
It appears that this is an API change on the Jamf Pro side:
private func supportsJcds2() async throws -> Bool { guard let url = url else { throw ServerCommunicationError.noJamfProUrl } // Try to get the information for a non-existent file. // If it returns a 500, then JCDS2 is not supported. // If it returns 404, then it's good. let cloudFileUrl = url.appendingPathComponent("/api/v1/jcds/files/nonexistentfile") let response = try await dataRequest(url: cloudFileUrl, httpMethod: "GET", throwHttpError: false) if let httpResponse = response.response as? HTTPURLResponse { return httpResponse.statusCode != 500 } return false }
The response from /api/v1/jcds/files/nonexistentfile appears to be causing supportsJcds2() to return true incorrectly, which creates a Jcds2Dp labelled JDCS even though it is not configured in our environment.
I would appreciate any help you could provide, as we are currently unable to add or update packages to our primary distribution point.
We upgraded to Jamf Pro 11.25.2 and attempted to sync a new package to AWS/CloudFront today. Since the upgrade, JDCS appears in the list (which is not configured in our environment) in place of AWS. I have confirmed that:
It appears that this is an API change on the Jamf Pro side:
private func supportsJcds2() async throws -> Bool { guard let url = url else { throw ServerCommunicationError.noJamfProUrl } // Try to get the information for a non-existent file. // If it returns a 500, then JCDS2 is not supported. // If it returns 404, then it's good. let cloudFileUrl = url.appendingPathComponent("/api/v1/jcds/files/nonexistentfile") let response = try await dataRequest(url: cloudFileUrl, httpMethod: "GET", throwHttpError: false) if let httpResponse = response.response as? HTTPURLResponse { return httpResponse.statusCode != 500 } return false }The response from
/api/v1/jcds/files/nonexistentfileappears to be causingsupportsJcds2()to returntrueincorrectly, which creates aJcds2Dplabelled JDCS even though it is not configured in our environment.I would appreciate any help you could provide, as we are currently unable to add or update packages to our primary distribution point.