This is the actual correct way to generate a new view. Ignore my previous effort.
authorsalimfadhley <sal@stodge.org>
Sun, 16 Jun 2013 14:48:00 +0000 (15:48 +0100)
committersalimfadhley <sal@stodge.org>
Sun, 16 Jun 2013 14:48:00 +0000 (15:48 +0100)
examples/create_a_view_low_level.py

index b3b4ca4..56075e8 100644 (file)
@@ -5,15 +5,17 @@ This is how JenkinsAPI creates views
 import requests
 import json
 
-url = 'http://localhost:8080/newView'
-str_view_name = "ddsfddfd"
+url = 'http://localhost:8080/createView'
+
+str_view_name = "blahblah123"
 params = {}# {'name': str_view_name}
 headers = {'Content-Type': 'application/x-www-form-urlencoded'}
 data = {
+    "name": str_view_name,
     "mode": "hudson.model.ListView",
-    #"Submit": "OK",
-    "name": str_view_name
+    "Submit": "OK",
+    "json": json.dumps({"name": str_view_name, "mode": "hudson.model.ListView"})
 }
 # Try 1
-result = requests.post(url, params=params, data={'json':json.dumps(data)}, headers=headers)
+result = requests.post(url, params=params, data=data, headers=headers)
 print result.text.encode('UTF-8')