Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

To upload a file to Jenkins using an HTTP Request, you can follow these steps:

  1. Send a POST request to the Jenkins server's URL with the path where you want to upload the file, for example, http://<jenkins_server_url>/job/<job_name>/ws/.

  2. Set the Content-Type header to multipart/form-data.

  3. Include the file as a part of the request body. Use the file key to provide the file name and the actual file data as the value.

  4. Authenticate the request using the appropriate credentials depending on the security mechanism used by Jenkins.

Here is an example code snippet in Python that shows how to do this using the requests library:

import requests

url = 'http://<jenkins_server_url>/job/<job_name>/ws/'
headers = {'Content-Type': 'multipart/form-data'}
files = {'file': open('/path/to/file', 'rb')}
auth = ('username', 'api_token')
response = requests.post(url, headers=headers, files=files, auth=auth)
print(response.text)

Note that you can also use other programming languages such as Java, JavaScript, or curl to do this. The key point is to set the correct headers, use the multipart/form-data encoding, and provide the file data as a part of the request body.