Merge lp:~gandelman-a/python-jenkins/rename_job into lp:~python-jenkins-developers/python-jenkins/trunk

Proposed by Adam Gandelman
Status: Merged
Merged at revision: 18
Proposed branch: lp:~gandelman-a/python-jenkins/rename_job
Merge into: lp:~python-jenkins-developers/python-jenkins/trunk
Diff against target: 48 lines (+20/-0)
2 files modified
doc/index.rst (+7/-0)
jenkins/__init__.py (+13/-0)
To merge this branch: bzr merge lp:~gandelman-a/python-jenkins/rename_job
Reviewer Review Type Date Requested Status
James Page Needs Fixing
Review via email: mp+130639@code.launchpad.net

Description of the change

Adds a basic call to rename existing jobs.

To post a comment you must log in.
Revision history for this message
James Page (james-page) wrote :

Hey Adam

Thanks for the MP - catching up on stuff right now.

I just landed a branch that enforces pep8 and re-jigs thinks a bit - any chance you could re-base and re-propose.

Cheers

James

review: Needs Fixing

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'doc/index.rst'
2--- doc/index.rst 2012-03-01 18:03:09 +0000
3+++ doc/index.rst 2012-10-19 21:29:22 +0000
4@@ -99,6 +99,13 @@
5 :param from_name: Name of Jenkins job to copy from, ``str``
6 :param to_name: Name of Jenkins job to copy to, ``str``
7
8+ .. method:: rename_job(name, new_name)
9+
10+ Rename an existing Jenkins job
11+
12+ :param name: Name of Jenkins job to rename, ``str``
13+ :param new_name: New Jenkins job name, ``str``
14+
15 .. method:: delete_job(name)
16
17 Delete Jenkins job permanently.
18
19=== modified file 'jenkins/__init__.py'
20--- jenkins/__init__.py 2012-06-25 11:48:32 +0000
21+++ jenkins/__init__.py 2012-10-19 21:29:22 +0000
22@@ -79,6 +79,7 @@
23 ENABLE_JOB = 'job/%(name)s/enable'
24 DISABLE_JOB = 'job/%(name)s/disable'
25 COPY_JOB = 'createItem?name=%(to_name)s&mode=copy&from=%(from_name)s'
26+RENAME_JOB = 'job/%(name)s/doRename?newName=%(new_name)s'
27 BUILD_JOB = 'job/%(name)s/build'
28 STOP_BUILD = 'job/%(name)s/%(number)s/stop'
29 BUILD_WITH_PARAMS_JOB = 'job/%(name)s/buildWithParameters'
30@@ -292,6 +293,18 @@
31 if not self.job_exists(to_name):
32 raise JenkinsException('create[%s] failed'%(to_name))
33
34+ def rename_job(self, name, new_name):
35+ '''
36+ Rename an existing Jenkins job
37+
38+ :param name: Name of Jenkins job to rename, ``str``
39+ :param new_name: New Jenkins job name, ``str``
40+ '''
41+ self.get_job_info(name)
42+ self.jenkins_open(urllib2.Request(self.server + RENAME_JOB%locals(), ''))
43+ if not self.job_exists(new_name):
44+ raise JenkinsException('rename[%s] failed'%(new_name))
45+
46 def delete_job(self, name):
47 '''
48 Delete Jenkins job permanently.

Subscribers

People subscribed via source and target branches