File: copy_a_job.py

package info (click to toggle)
python-jenkinsapi 0.3.17-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,500 kB
  • sloc: python: 10,001; xml: 50; makefile: 31; sh: 26
file content (25 lines) | stat: -rw-r--r-- 673 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
"""
A lower-level implementation of copying a job in Jenkins
"""

import requests
from pkg_resources import resource_string
from jenkinsapi.jenkins import Jenkins
from jenkinsapi_tests.test_utils.random_strings import random_string

J = Jenkins("http://localhost:8080")
jobName = random_string()
jobName2 = "%s_2" % jobName

url = "http://localhost:8080/createItem?from=%s&name=%s&mode=copy" % (
    jobName,
    jobName2,
)

xml = resource_string("examples", "addjob.xml")
j = J.create_job(jobname=jobName, xml=xml)


h = {"Content-Type": "application/x-www-form-urlencoded"}
response = requests.post(url, data="dysjsjsjs", headers=h)
print(response.text.encode("UTF-8"))