wmglobalqueue 2.3.10__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of wmglobalqueue might be problematic. Click here for more details.

Files changed (345) hide show
  1. Utils/CPMetrics.py +270 -0
  2. Utils/CertTools.py +62 -0
  3. Utils/EmailAlert.py +50 -0
  4. Utils/ExtendedUnitTestCase.py +62 -0
  5. Utils/FileTools.py +182 -0
  6. Utils/IteratorTools.py +80 -0
  7. Utils/MathUtils.py +31 -0
  8. Utils/MemoryCache.py +119 -0
  9. Utils/Patterns.py +24 -0
  10. Utils/Pipeline.py +137 -0
  11. Utils/PortForward.py +97 -0
  12. Utils/ProcessStats.py +103 -0
  13. Utils/PythonVersion.py +17 -0
  14. Utils/Signals.py +36 -0
  15. Utils/TemporaryEnvironment.py +27 -0
  16. Utils/Throttled.py +227 -0
  17. Utils/Timers.py +130 -0
  18. Utils/Timestamps.py +86 -0
  19. Utils/TokenManager.py +143 -0
  20. Utils/Tracing.py +60 -0
  21. Utils/TwPrint.py +98 -0
  22. Utils/Utilities.py +308 -0
  23. Utils/__init__.py +11 -0
  24. WMCore/ACDC/Collection.py +57 -0
  25. WMCore/ACDC/CollectionTypes.py +12 -0
  26. WMCore/ACDC/CouchCollection.py +67 -0
  27. WMCore/ACDC/CouchFileset.py +238 -0
  28. WMCore/ACDC/CouchService.py +73 -0
  29. WMCore/ACDC/DataCollectionService.py +485 -0
  30. WMCore/ACDC/Fileset.py +94 -0
  31. WMCore/ACDC/__init__.py +11 -0
  32. WMCore/Algorithms/Alarm.py +39 -0
  33. WMCore/Algorithms/MathAlgos.py +274 -0
  34. WMCore/Algorithms/MiscAlgos.py +67 -0
  35. WMCore/Algorithms/ParseXMLFile.py +115 -0
  36. WMCore/Algorithms/Permissions.py +27 -0
  37. WMCore/Algorithms/Singleton.py +58 -0
  38. WMCore/Algorithms/SubprocessAlgos.py +129 -0
  39. WMCore/Algorithms/__init__.py +7 -0
  40. WMCore/Cache/GenericDataCache.py +98 -0
  41. WMCore/Cache/WMConfigCache.py +572 -0
  42. WMCore/Cache/__init__.py +0 -0
  43. WMCore/Configuration.py +651 -0
  44. WMCore/DAOFactory.py +47 -0
  45. WMCore/DataStructs/File.py +177 -0
  46. WMCore/DataStructs/Fileset.py +140 -0
  47. WMCore/DataStructs/Job.py +182 -0
  48. WMCore/DataStructs/JobGroup.py +142 -0
  49. WMCore/DataStructs/JobPackage.py +49 -0
  50. WMCore/DataStructs/LumiList.py +734 -0
  51. WMCore/DataStructs/Mask.py +219 -0
  52. WMCore/DataStructs/MathStructs/ContinuousSummaryHistogram.py +197 -0
  53. WMCore/DataStructs/MathStructs/DiscreteSummaryHistogram.py +92 -0
  54. WMCore/DataStructs/MathStructs/SummaryHistogram.py +117 -0
  55. WMCore/DataStructs/MathStructs/__init__.py +0 -0
  56. WMCore/DataStructs/Pickleable.py +24 -0
  57. WMCore/DataStructs/Run.py +256 -0
  58. WMCore/DataStructs/Subscription.py +175 -0
  59. WMCore/DataStructs/WMObject.py +47 -0
  60. WMCore/DataStructs/WorkUnit.py +112 -0
  61. WMCore/DataStructs/Workflow.py +60 -0
  62. WMCore/DataStructs/__init__.py +8 -0
  63. WMCore/Database/CMSCouch.py +1349 -0
  64. WMCore/Database/ConfigDBMap.py +29 -0
  65. WMCore/Database/CouchUtils.py +118 -0
  66. WMCore/Database/DBCore.py +198 -0
  67. WMCore/Database/DBCreator.py +113 -0
  68. WMCore/Database/DBExceptionHandler.py +57 -0
  69. WMCore/Database/DBFactory.py +110 -0
  70. WMCore/Database/DBFormatter.py +177 -0
  71. WMCore/Database/Dialects.py +13 -0
  72. WMCore/Database/ExecuteDAO.py +327 -0
  73. WMCore/Database/MongoDB.py +241 -0
  74. WMCore/Database/MySQL/Destroy.py +42 -0
  75. WMCore/Database/MySQL/ListUserContent.py +20 -0
  76. WMCore/Database/MySQL/__init__.py +9 -0
  77. WMCore/Database/MySQLCore.py +132 -0
  78. WMCore/Database/Oracle/Destroy.py +56 -0
  79. WMCore/Database/Oracle/ListUserContent.py +19 -0
  80. WMCore/Database/Oracle/__init__.py +9 -0
  81. WMCore/Database/ResultSet.py +44 -0
  82. WMCore/Database/Transaction.py +91 -0
  83. WMCore/Database/__init__.py +9 -0
  84. WMCore/Database/ipy_profile_couch.py +438 -0
  85. WMCore/GlobalWorkQueue/CherryPyThreads/CleanUpTask.py +29 -0
  86. WMCore/GlobalWorkQueue/CherryPyThreads/HeartbeatMonitor.py +105 -0
  87. WMCore/GlobalWorkQueue/CherryPyThreads/LocationUpdateTask.py +28 -0
  88. WMCore/GlobalWorkQueue/CherryPyThreads/ReqMgrInteractionTask.py +35 -0
  89. WMCore/GlobalWorkQueue/CherryPyThreads/__init__.py +0 -0
  90. WMCore/GlobalWorkQueue/__init__.py +0 -0
  91. WMCore/GroupUser/CouchObject.py +127 -0
  92. WMCore/GroupUser/Decorators.py +51 -0
  93. WMCore/GroupUser/Group.py +33 -0
  94. WMCore/GroupUser/Interface.py +73 -0
  95. WMCore/GroupUser/User.py +96 -0
  96. WMCore/GroupUser/__init__.py +11 -0
  97. WMCore/Lexicon.py +836 -0
  98. WMCore/REST/Auth.py +202 -0
  99. WMCore/REST/CherryPyPeriodicTask.py +166 -0
  100. WMCore/REST/Error.py +333 -0
  101. WMCore/REST/Format.py +642 -0
  102. WMCore/REST/HeartbeatMonitorBase.py +90 -0
  103. WMCore/REST/Main.py +623 -0
  104. WMCore/REST/Server.py +2435 -0
  105. WMCore/REST/Services.py +24 -0
  106. WMCore/REST/Test.py +120 -0
  107. WMCore/REST/Tools.py +38 -0
  108. WMCore/REST/Validation.py +250 -0
  109. WMCore/REST/__init__.py +1 -0
  110. WMCore/ReqMgr/DataStructs/RequestStatus.py +209 -0
  111. WMCore/ReqMgr/DataStructs/RequestType.py +13 -0
  112. WMCore/ReqMgr/DataStructs/__init__.py +0 -0
  113. WMCore/ReqMgr/__init__.py +1 -0
  114. WMCore/Services/AlertManager/AlertManagerAPI.py +111 -0
  115. WMCore/Services/AlertManager/__init__.py +0 -0
  116. WMCore/Services/CRIC/CRIC.py +238 -0
  117. WMCore/Services/CRIC/__init__.py +0 -0
  118. WMCore/Services/DBS/DBS3Reader.py +1044 -0
  119. WMCore/Services/DBS/DBSConcurrency.py +44 -0
  120. WMCore/Services/DBS/DBSErrors.py +113 -0
  121. WMCore/Services/DBS/DBSReader.py +23 -0
  122. WMCore/Services/DBS/DBSUtils.py +139 -0
  123. WMCore/Services/DBS/DBSWriterObjects.py +381 -0
  124. WMCore/Services/DBS/ProdException.py +133 -0
  125. WMCore/Services/DBS/__init__.py +8 -0
  126. WMCore/Services/FWJRDB/FWJRDBAPI.py +118 -0
  127. WMCore/Services/FWJRDB/__init__.py +0 -0
  128. WMCore/Services/HTTPS/HTTPSAuthHandler.py +66 -0
  129. WMCore/Services/HTTPS/__init__.py +0 -0
  130. WMCore/Services/LogDB/LogDB.py +201 -0
  131. WMCore/Services/LogDB/LogDBBackend.py +191 -0
  132. WMCore/Services/LogDB/LogDBExceptions.py +11 -0
  133. WMCore/Services/LogDB/LogDBReport.py +85 -0
  134. WMCore/Services/LogDB/__init__.py +0 -0
  135. WMCore/Services/MSPileup/__init__.py +0 -0
  136. WMCore/Services/MSUtils/MSUtils.py +54 -0
  137. WMCore/Services/MSUtils/__init__.py +0 -0
  138. WMCore/Services/McM/McM.py +173 -0
  139. WMCore/Services/McM/__init__.py +8 -0
  140. WMCore/Services/MonIT/Grafana.py +133 -0
  141. WMCore/Services/MonIT/__init__.py +0 -0
  142. WMCore/Services/PyCondor/PyCondorAPI.py +154 -0
  143. WMCore/Services/PyCondor/PyCondorUtils.py +105 -0
  144. WMCore/Services/PyCondor/__init__.py +0 -0
  145. WMCore/Services/ReqMgr/ReqMgr.py +261 -0
  146. WMCore/Services/ReqMgr/__init__.py +0 -0
  147. WMCore/Services/ReqMgrAux/ReqMgrAux.py +419 -0
  148. WMCore/Services/ReqMgrAux/__init__.py +0 -0
  149. WMCore/Services/RequestDB/RequestDBReader.py +267 -0
  150. WMCore/Services/RequestDB/RequestDBWriter.py +39 -0
  151. WMCore/Services/RequestDB/__init__.py +0 -0
  152. WMCore/Services/Requests.py +624 -0
  153. WMCore/Services/Rucio/Rucio.py +1287 -0
  154. WMCore/Services/Rucio/RucioUtils.py +74 -0
  155. WMCore/Services/Rucio/__init__.py +0 -0
  156. WMCore/Services/RucioConMon/RucioConMon.py +128 -0
  157. WMCore/Services/RucioConMon/__init__.py +0 -0
  158. WMCore/Services/Service.py +400 -0
  159. WMCore/Services/StompAMQ/__init__.py +0 -0
  160. WMCore/Services/TagCollector/TagCollector.py +155 -0
  161. WMCore/Services/TagCollector/XMLUtils.py +98 -0
  162. WMCore/Services/TagCollector/__init__.py +0 -0
  163. WMCore/Services/UUIDLib.py +13 -0
  164. WMCore/Services/UserFileCache/UserFileCache.py +160 -0
  165. WMCore/Services/UserFileCache/__init__.py +8 -0
  166. WMCore/Services/WMAgent/WMAgent.py +63 -0
  167. WMCore/Services/WMAgent/__init__.py +0 -0
  168. WMCore/Services/WMArchive/CMSSWMetrics.py +526 -0
  169. WMCore/Services/WMArchive/DataMap.py +463 -0
  170. WMCore/Services/WMArchive/WMArchive.py +33 -0
  171. WMCore/Services/WMArchive/__init__.py +0 -0
  172. WMCore/Services/WMBS/WMBS.py +97 -0
  173. WMCore/Services/WMBS/__init__.py +0 -0
  174. WMCore/Services/WMStats/DataStruct/RequestInfoCollection.py +300 -0
  175. WMCore/Services/WMStats/DataStruct/__init__.py +0 -0
  176. WMCore/Services/WMStats/WMStatsPycurl.py +145 -0
  177. WMCore/Services/WMStats/WMStatsReader.py +445 -0
  178. WMCore/Services/WMStats/WMStatsWriter.py +273 -0
  179. WMCore/Services/WMStats/__init__.py +0 -0
  180. WMCore/Services/WMStatsServer/WMStatsServer.py +134 -0
  181. WMCore/Services/WMStatsServer/__init__.py +0 -0
  182. WMCore/Services/WorkQueue/WorkQueue.py +492 -0
  183. WMCore/Services/WorkQueue/__init__.py +0 -0
  184. WMCore/Services/__init__.py +8 -0
  185. WMCore/Services/pycurl_manager.py +574 -0
  186. WMCore/WMBase.py +50 -0
  187. WMCore/WMConnectionBase.py +164 -0
  188. WMCore/WMException.py +183 -0
  189. WMCore/WMExceptions.py +269 -0
  190. WMCore/WMFactory.py +76 -0
  191. WMCore/WMInit.py +228 -0
  192. WMCore/WMLogging.py +108 -0
  193. WMCore/WMSpec/ConfigSectionTree.py +442 -0
  194. WMCore/WMSpec/Persistency.py +135 -0
  195. WMCore/WMSpec/Steps/BuildMaster.py +87 -0
  196. WMCore/WMSpec/Steps/BuildTools.py +201 -0
  197. WMCore/WMSpec/Steps/Builder.py +97 -0
  198. WMCore/WMSpec/Steps/Diagnostic.py +89 -0
  199. WMCore/WMSpec/Steps/Emulator.py +62 -0
  200. WMCore/WMSpec/Steps/ExecuteMaster.py +208 -0
  201. WMCore/WMSpec/Steps/Executor.py +210 -0
  202. WMCore/WMSpec/Steps/StepFactory.py +213 -0
  203. WMCore/WMSpec/Steps/TaskEmulator.py +75 -0
  204. WMCore/WMSpec/Steps/Template.py +204 -0
  205. WMCore/WMSpec/Steps/Templates/AlcaHarvest.py +76 -0
  206. WMCore/WMSpec/Steps/Templates/CMSSW.py +613 -0
  207. WMCore/WMSpec/Steps/Templates/DQMUpload.py +59 -0
  208. WMCore/WMSpec/Steps/Templates/DeleteFiles.py +70 -0
  209. WMCore/WMSpec/Steps/Templates/LogArchive.py +84 -0
  210. WMCore/WMSpec/Steps/Templates/LogCollect.py +105 -0
  211. WMCore/WMSpec/Steps/Templates/StageOut.py +105 -0
  212. WMCore/WMSpec/Steps/Templates/__init__.py +10 -0
  213. WMCore/WMSpec/Steps/WMExecutionFailure.py +21 -0
  214. WMCore/WMSpec/Steps/__init__.py +8 -0
  215. WMCore/WMSpec/Utilities.py +63 -0
  216. WMCore/WMSpec/WMSpecErrors.py +12 -0
  217. WMCore/WMSpec/WMStep.py +347 -0
  218. WMCore/WMSpec/WMTask.py +1980 -0
  219. WMCore/WMSpec/WMWorkload.py +2288 -0
  220. WMCore/WMSpec/WMWorkloadTools.py +370 -0
  221. WMCore/WMSpec/__init__.py +9 -0
  222. WMCore/WorkQueue/DataLocationMapper.py +273 -0
  223. WMCore/WorkQueue/DataStructs/ACDCBlock.py +47 -0
  224. WMCore/WorkQueue/DataStructs/Block.py +48 -0
  225. WMCore/WorkQueue/DataStructs/CouchWorkQueueElement.py +148 -0
  226. WMCore/WorkQueue/DataStructs/WorkQueueElement.py +274 -0
  227. WMCore/WorkQueue/DataStructs/WorkQueueElementResult.py +152 -0
  228. WMCore/WorkQueue/DataStructs/WorkQueueElementsSummary.py +185 -0
  229. WMCore/WorkQueue/DataStructs/__init__.py +0 -0
  230. WMCore/WorkQueue/Policy/End/EndPolicyInterface.py +44 -0
  231. WMCore/WorkQueue/Policy/End/SingleShot.py +22 -0
  232. WMCore/WorkQueue/Policy/End/__init__.py +32 -0
  233. WMCore/WorkQueue/Policy/PolicyInterface.py +17 -0
  234. WMCore/WorkQueue/Policy/Start/Block.py +258 -0
  235. WMCore/WorkQueue/Policy/Start/Dataset.py +180 -0
  236. WMCore/WorkQueue/Policy/Start/MonteCarlo.py +131 -0
  237. WMCore/WorkQueue/Policy/Start/ResubmitBlock.py +171 -0
  238. WMCore/WorkQueue/Policy/Start/StartPolicyInterface.py +316 -0
  239. WMCore/WorkQueue/Policy/Start/__init__.py +34 -0
  240. WMCore/WorkQueue/Policy/__init__.py +57 -0
  241. WMCore/WorkQueue/WMBSHelper.py +772 -0
  242. WMCore/WorkQueue/WorkQueue.py +1237 -0
  243. WMCore/WorkQueue/WorkQueueBackend.py +750 -0
  244. WMCore/WorkQueue/WorkQueueBase.py +39 -0
  245. WMCore/WorkQueue/WorkQueueExceptions.py +44 -0
  246. WMCore/WorkQueue/WorkQueueReqMgrInterface.py +278 -0
  247. WMCore/WorkQueue/WorkQueueUtils.py +130 -0
  248. WMCore/WorkQueue/__init__.py +13 -0
  249. WMCore/Wrappers/JsonWrapper/JSONThunker.py +342 -0
  250. WMCore/Wrappers/JsonWrapper/__init__.py +7 -0
  251. WMCore/Wrappers/__init__.py +6 -0
  252. WMCore/__init__.py +10 -0
  253. wmglobalqueue-2.3.10.data/data/bin/wmc-dist-patch +15 -0
  254. wmglobalqueue-2.3.10.data/data/bin/wmc-dist-unpatch +8 -0
  255. wmglobalqueue-2.3.10.data/data/bin/wmc-httpd +3 -0
  256. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/.couchapprc +1 -0
  257. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/README.md +40 -0
  258. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/index.html +264 -0
  259. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/ElementInfoByWorkflow.js +96 -0
  260. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/StuckElementInfo.js +57 -0
  261. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/WorkloadInfoTable.js +80 -0
  262. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/dataTable.js +70 -0
  263. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/namespace.js +23 -0
  264. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/style/main.css +75 -0
  265. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/couchapp.json +4 -0
  266. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/filters/childQueueFilter.js +13 -0
  267. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/filters/filterDeletedDocs.js +3 -0
  268. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/filters/queueFilter.js +11 -0
  269. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/language +1 -0
  270. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lib/mustache.js +333 -0
  271. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lib/validate.js +27 -0
  272. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lib/workqueue_utils.js +61 -0
  273. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/elementsDetail.js +28 -0
  274. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/filter.js +86 -0
  275. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/stuckElements.js +38 -0
  276. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/workRestrictions.js +153 -0
  277. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/workflowSummary.js +28 -0
  278. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/rewrites.json +73 -0
  279. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/shows/redirect.js +23 -0
  280. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/shows/status.js +40 -0
  281. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/ElementSummaryByWorkflow.html +27 -0
  282. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/StuckElementSummary.html +26 -0
  283. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/TaskStatus.html +23 -0
  284. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/WorkflowSummary.html +27 -0
  285. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/partials/workqueue-common-lib.html +2 -0
  286. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/partials/yui-lib-remote.html +16 -0
  287. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/partials/yui-lib.html +18 -0
  288. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/updates/in-place.js +50 -0
  289. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/validate_doc_update.js +8 -0
  290. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/vendor/couchapp/_attachments/jquery.couch.app.js +235 -0
  291. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/vendor/couchapp/_attachments/jquery.pathbinder.js +173 -0
  292. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeData/map.js +8 -0
  293. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeData/reduce.js +2 -0
  294. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeParentData/map.js +8 -0
  295. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeParentData/reduce.js +2 -0
  296. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activePileupData/map.js +8 -0
  297. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activePileupData/reduce.js +2 -0
  298. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/analyticsData/map.js +11 -0
  299. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/analyticsData/reduce.js +1 -0
  300. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/availableByPriority/map.js +6 -0
  301. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/conflicts/map.js +5 -0
  302. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elements/map.js +5 -0
  303. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByData/map.js +8 -0
  304. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByParent/map.js +8 -0
  305. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByParentData/map.js +8 -0
  306. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByPileupData/map.js +8 -0
  307. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByStatus/map.js +8 -0
  308. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsBySubscription/map.js +6 -0
  309. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByWorkflow/map.js +8 -0
  310. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByWorkflow/reduce.js +3 -0
  311. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsDetailByWorkflowAndStatus/map.js +26 -0
  312. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobInjectStatusByRequest/map.js +10 -0
  313. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobInjectStatusByRequest/reduce.js +1 -0
  314. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobStatusByRequest/map.js +6 -0
  315. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobStatusByRequest/reduce.js +1 -0
  316. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndPriority/map.js +6 -0
  317. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndPriority/reduce.js +1 -0
  318. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndStatus/map.js +6 -0
  319. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndStatus/reduce.js +1 -0
  320. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByRequest/map.js +6 -0
  321. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByRequest/reduce.js +1 -0
  322. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatus/map.js +6 -0
  323. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatus/reduce.js +1 -0
  324. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatusAndPriority/map.js +6 -0
  325. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatusAndPriority/reduce.js +1 -0
  326. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/openRequests/map.js +6 -0
  327. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/recent-items/map.js +5 -0
  328. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/siteWhitelistByRequest/map.js +6 -0
  329. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/siteWhitelistByRequest/reduce.js +1 -0
  330. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/specsByWorkflow/map.js +5 -0
  331. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/stuckElements/map.js +38 -0
  332. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsInjectStatusByRequest/map.js +12 -0
  333. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsInjectStatusByRequest/reduce.js +3 -0
  334. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrl/map.js +6 -0
  335. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrl/reduce.js +2 -0
  336. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrlByRequest/map.js +6 -0
  337. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrlByRequest/reduce.js +2 -0
  338. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/workflowSummary/map.js +9 -0
  339. wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/workflowSummary/reduce.js +10 -0
  340. wmglobalqueue-2.3.10.dist-info/LICENSE +202 -0
  341. wmglobalqueue-2.3.10.dist-info/METADATA +24 -0
  342. wmglobalqueue-2.3.10.dist-info/NOTICE +16 -0
  343. wmglobalqueue-2.3.10.dist-info/RECORD +345 -0
  344. wmglobalqueue-2.3.10.dist-info/WHEEL +5 -0
  345. wmglobalqueue-2.3.10.dist-info/top_level.txt +2 -0
@@ -0,0 +1,59 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _DQMUpload_
4
+
5
+ Template for a DQMUpload Step
6
+
7
+ """
8
+
9
+ from WMCore.WMSpec.Steps.Template import Template
10
+ from WMCore.WMSpec.Steps.Template import CoreHelper
11
+ from WMCore.WMSpec.ConfigSectionTree import nodeName
12
+
13
+
14
+ class DQMUploadStepHelper(CoreHelper):
15
+ """
16
+ _DQMUploadStepHelper_
17
+
18
+ Add API calls and helper methods to the basic WMStepHelper to specialise
19
+ for DQMUpload tasks
20
+
21
+ """
22
+ def setProxyFile(self, proxy):
23
+ """
24
+ Sets the name of the proxy file in the input sandbox
25
+ """
26
+ self.data.upload.proxy = proxy
27
+
28
+ def setServerURL(self, url):
29
+ """
30
+ Sets the URL of the DQM GUI server.
31
+ """
32
+ self.data.upload.URL = url
33
+
34
+
35
+ class DQMUpload(Template):
36
+ """
37
+ _DQMUpload_
38
+
39
+ Tools for creating a template DQMUpload Step
40
+
41
+ """
42
+
43
+ def install(self, step):
44
+ stepname = nodeName(step)
45
+ step.stepType = "DQMUpload"
46
+ step.section_("upload")
47
+ step.upload.URL = 'https://cmsweb.cern.ch/dqm/dev'
48
+ step.upload.proxy = None
49
+
50
+ def helper(self, step):
51
+ """
52
+ _helper_
53
+
54
+ Wrap the WMStep provided in the CMSSW helper class that
55
+ includes the ability to add and manipulate the details
56
+ of a CMSSW workflow step
57
+
58
+ """
59
+ return DQMUploadStepHelper(step)
@@ -0,0 +1,70 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _DeleteFiles_
4
+
5
+ Template for a DeleteFiles Step
6
+
7
+ Mostly borrowed from StageOut since they share a similar function
8
+
9
+ """
10
+
11
+
12
+
13
+
14
+ from WMCore.WMSpec.Steps.Template import Template
15
+ from WMCore.WMSpec.Steps.Template import CoreHelper
16
+ from WMCore.WMSpec.ConfigSectionTree import nodeName
17
+
18
+
19
+
20
+ class DeleteFilesStepHelper(CoreHelper):
21
+ """
22
+ _StageOutStepHelper_
23
+
24
+ Add API calls and helper methods to the basic WMStepHelper to specialise
25
+ for StageOut tasks
26
+
27
+ This is very similar to StageOut since they have essentially the same function
28
+
29
+ """
30
+
31
+ def disableRetries(self):
32
+ """
33
+ handy for testing, without the 10 minute retry loop
34
+ """
35
+ self.data.retryCount = 1
36
+ self.data.retryDelay = 0
37
+
38
+ def addOutputDestination(self, lfn):
39
+ """
40
+ Adds an out location to put a tarball of all logs
41
+ """
42
+
43
+
44
+ class DeleteFiles(Template):
45
+ """
46
+ _DeleteFiles_
47
+
48
+ Tools for creating a template DeleteFiles Step
49
+
50
+ """
51
+
52
+ def install(self, step):
53
+ stepname = nodeName(step)
54
+ step.stepType = "DeleteFiles"
55
+ step.section_("logs")
56
+ step.logcount = 0
57
+ step.retryCount = 3
58
+ step.retryDelay = 300
59
+
60
+
61
+ def helper(self, step):
62
+ """
63
+ _helper_
64
+
65
+ Wrap the WMStep provided in the CMSSW helper class that
66
+ includes the ability to add and manipulate the details
67
+ of a CMSSW workflow step
68
+
69
+ """
70
+ return DeleteFilesStepHelper(step)
@@ -0,0 +1,84 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _LogArchive_
4
+
5
+ Template for a LogArchive Step
6
+
7
+ Mostly borrowed from StageOut since they share a similar function
8
+
9
+ """
10
+
11
+
12
+
13
+
14
+ from WMCore.WMSpec.Steps.Template import Template
15
+ from WMCore.WMSpec.Steps.Template import CoreHelper
16
+ from WMCore.WMSpec.ConfigSectionTree import nodeName
17
+
18
+
19
+
20
+ class LogArchiveStepHelper(CoreHelper):
21
+ """
22
+ _StageOutStepHelper_
23
+
24
+ Add API calls and helper methods to the basic WMStepHelper to specialise
25
+ for StageOut tasks
26
+
27
+ This is very similar to StageOut since they have essentially the same function
28
+
29
+ """
30
+ def addLog(self, infile):
31
+ """
32
+ Enqueues(sp?) a file to the StageOut step
33
+ infile must be a PFN
34
+ outfile must be a LFN
35
+ """
36
+ target = self.data.logs.section_("log%i" % self.data.filecount)
37
+ target.input = infile
38
+ self.data.filecount += 1
39
+
40
+ def disableRetries(self):
41
+ """
42
+ handy for testing, without the 10 minute retry loop
43
+ """
44
+ self.data.retryCount = 1
45
+ self.data.retryDelay = 0
46
+
47
+ def addOutputDestination(self, lfn):
48
+ """
49
+ Adds an out location to put a tarball of all logs
50
+ """
51
+
52
+
53
+ class LogArchive(Template):
54
+ """
55
+ _LogArchive_
56
+
57
+ Tools for creating a template LogArchive Step
58
+
59
+ """
60
+
61
+ def install(self, step):
62
+ stepname = nodeName(step)
63
+ step.stepType = "LogArchive"
64
+ step.section_("logs")
65
+ step.logcount = 0
66
+ step.retryCount = 3
67
+ step.retryDelay = 300
68
+
69
+ # Create output to put logs in
70
+ step.section_("output")
71
+ step.output.section_("modules")
72
+ step.output.modules.section_("logArchive")
73
+
74
+
75
+ def helper(self, step):
76
+ """
77
+ _helper_
78
+
79
+ Wrap the WMStep provided in the CMSSW helper class that
80
+ includes the ability to add and manipulate the details
81
+ of a CMSSW workflow step
82
+
83
+ """
84
+ return LogArchiveStepHelper(step)
@@ -0,0 +1,105 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _LogCollect_
4
+
5
+ Template for a LogCollect Step
6
+
7
+ Mostly borrowed from StageOut since they share a similar function
8
+
9
+ """
10
+
11
+ from future.utils import viewitems
12
+
13
+
14
+ from WMCore.WMSpec.Steps.Template import Template
15
+ from WMCore.WMSpec.Steps.Template import CoreHelper
16
+
17
+
18
+ class LogCollectStepHelper(CoreHelper):
19
+ """
20
+ _StageOutStepHelper_
21
+
22
+ Add API calls and helper methods to the basic WMStepHelper to specialise
23
+ for StageOut tasks
24
+
25
+ This is very similar to StageOut since they have essentially the same function
26
+
27
+ """
28
+
29
+ def disableRetries(self):
30
+ """
31
+ handy for testing, without the 10 minute retry loop
32
+ """
33
+ self.data.retryCount = 1
34
+ self.data.retryDelay = 0
35
+
36
+ def addOutputDestination(self, lfn):
37
+ """
38
+ Adds an out location to put a tarball of all logs
39
+ """
40
+
41
+ def cmsswSetup(self, cmsswVersion, **options):
42
+ """
43
+ _cmsswSetup_
44
+ Provide setup details for CMSSW.
45
+ cmsswVersion - required - version of CMSSW to use
46
+ Optional:
47
+ scramCommand - defaults to scramv1
48
+ scramProject - defaults to CMSSW
49
+ scramArch - optional scram architecture, defaults to None
50
+ buildArch - optional scram build architecture, defaults to None
51
+ softwareEnvironment - setup command to bootstrap scram,defaults to None
52
+ """
53
+ self.data.application.setup.cmsswVersion = cmsswVersion
54
+ for k, v in viewitems(options):
55
+ setattr(self.data.application.setup, k, v)
56
+ return
57
+
58
+ def getScramArch(self):
59
+ """
60
+ _getScramArch_
61
+
62
+ Retrieve the scram architecture used for this step.
63
+ """
64
+ return self.data.application.setup.scramArch
65
+
66
+ def getCMSSWVersion(self):
67
+ """
68
+ _getCMSSWVersion_
69
+
70
+ Retrieve the version of the framework used for this step.
71
+ """
72
+ return self.data.application.setup.cmsswVersion
73
+
74
+ class LogCollect(Template):
75
+ """
76
+ _LogCollect_
77
+
78
+ Tools for creating a template LogCollect Step
79
+
80
+ """
81
+
82
+ def install(self, step):
83
+ step.stepType = "LogCollect"
84
+ step.section_("logs")
85
+ step.logcount = 0
86
+ step.retryCount = 3
87
+ step.retryDelay = 300
88
+ step.application.section_("setup")
89
+ step.application.setup.scramCommand = "scramv1"
90
+ step.application.setup.scramProject = "CMSSW"
91
+ step.application.setup.cmsswVersion = None
92
+ step.application.setup.scramArch = None
93
+ step.application.setup.buildArch = None
94
+ step.application.setup.softwareEnvironment = None
95
+
96
+ def helper(self, step):
97
+ """
98
+ _helper_
99
+
100
+ Wrap the WMStep provided in the CMSSW helper class that
101
+ includes the ability to add and manipulate the details
102
+ of a CMSSW workflow step
103
+
104
+ """
105
+ return LogCollectStepHelper(step)
@@ -0,0 +1,105 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _StageOut_
4
+
5
+ Template for a StageOut Step
6
+
7
+ """
8
+
9
+ from WMCore.WMSpec.Steps.Template import Template
10
+ from WMCore.WMSpec.Steps.Template import CoreHelper
11
+ from WMCore.WMSpec.ConfigSectionTree import nodeName
12
+
13
+ class StageOutStepHelper(CoreHelper):
14
+ """
15
+ _StageOutStepHelper_
16
+
17
+ Add API calls and helper methods to the basic WMStepHelper to specialise
18
+ for StageOut tasks
19
+
20
+ """
21
+ def addFile(self, infile, outfile, stageOut = True):
22
+ """
23
+ Enqueues(sp?) a file to the StageOut step
24
+ infile must be a LOCAL FILENAME. No file:/// in front
25
+ outfile must be a LFN which will be mapped to the remote
26
+ """
27
+ target = self.data.files.section_("file%i" % self.data.filecount)
28
+ target.input = infile
29
+ target.output = outfile
30
+ target.stageOut = stageOut
31
+ self.data.filecount += 1
32
+
33
+ def disableRetries(self):
34
+ """
35
+ handy for testing, without the 10 minute retry loop
36
+ """
37
+ self.data.retryCount = 1
38
+ self.data.retryDelay = 0
39
+
40
+ def disableStraightToMerge(self):
41
+ """
42
+ _disableStraightToMerge_
43
+
44
+ Disable straight to merge for this step.
45
+ """
46
+ if hasattr(self.data.output, "minMergeSize"):
47
+ delattr(self.data.output, "minMergeSize")
48
+
49
+ return
50
+
51
+ def disableStraightToMergeForOutputModules(self, outputModules):
52
+ """
53
+ _disableStraightToMergeForOutputModules_
54
+
55
+ Disable straight to merge only for these output modules.
56
+ """
57
+ self.data.output.forceUnmergedOutputs = outputModules
58
+
59
+ return
60
+
61
+ def setMinMergeSize(self, minMergeSize, maxMergeEvents):
62
+ """
63
+ _setMinMergeSize_
64
+
65
+ Set the mininum size for promoting a file to merged status.
66
+ """
67
+ self.data.output.minMergeSize = minMergeSize
68
+ self.data.output.maxMergeEvents = maxMergeEvents
69
+ return
70
+
71
+ def minMergeSize(self):
72
+ """
73
+ _minMergeSize_
74
+
75
+ Retrieve the minimum size for promoting a file to merged status. If
76
+ straight to merge is disabled -1 will be returned.
77
+ """
78
+ return getattr(self.data.output, "minMergeSize", -1)
79
+
80
+ class StageOut(Template):
81
+ """
82
+ _StageOut_
83
+
84
+ Tools for creating a template StageOut Step
85
+
86
+ """
87
+
88
+ def install(self, step):
89
+ step.stepType = "StageOut"
90
+ step.section_("files")
91
+ step.filecount = 0
92
+ step.retryCount = 3
93
+ step.retryDelay = 300
94
+
95
+
96
+ def helper(self, step):
97
+ """
98
+ _helper_
99
+
100
+ Wrap the WMStep provided in the CMSSW helper class that
101
+ includes the ability to add and manipulate the details
102
+ of a CMSSW workflow step
103
+
104
+ """
105
+ return StageOutStepHelper(step)
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _Step.Templates_
4
+
5
+ Package for containing Step Template implementations
6
+
7
+
8
+ """
9
+
10
+ __all__ = []
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _WMExecutionFailure_
4
+
5
+ Error class to generate when an executor implementation encounters a problem
6
+
7
+ """
8
+
9
+
10
+
11
+ from WMCore.WMException import WMException
12
+
13
+
14
+ class WMExecutionFailure(WMException):
15
+
16
+
17
+ def __init__(self, code, name, detail):
18
+ WMException.__init__(self, detail, code)
19
+ self.code = code
20
+ self.name = name
21
+ self.detail = detail
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _Steps_
4
+
5
+ Templates for the various types of Step we deal with in WMTasks
6
+
7
+ """
8
+ __all__ = []
@@ -0,0 +1,63 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ _Utilities_
4
+
5
+ Common/useful utils.
6
+ Note that WMWorkload, WMTask and WMStep all depend on this module, so
7
+ dont import them in it.
8
+
9
+ """
10
+
11
+
12
+ def findObjectTypeAboveNode(node, objType):
13
+ """
14
+ _findObjectTypeAboveNode_
15
+
16
+ Given a config section (tree or not) traverse up the parent
17
+ structure until finding the first entry containing an objectType
18
+ setting that is set to the required type
19
+
20
+ """
21
+ if getattr(node, "objectType", None) == objType:
22
+ return node
23
+ if node._internal_parent_ref == None:
24
+ return None
25
+ return findObjectTypeAboveNode(node._internal_parent_ref, objType)
26
+
27
+
28
+ def findTaskAboveNode(node):
29
+ """
30
+ _findTaskAboveNode_
31
+
32
+ Given a config section (tree or not) traverse up the parent
33
+ structure until finding the first entry containing an objectType
34
+ setting that is set to WMTask
35
+
36
+ """
37
+ return findObjectTypeAboveNode(node, "WMTask")
38
+
39
+ def findWorkloadAboveNode(node):
40
+ """
41
+ _findWorkloadAboveNode_
42
+
43
+ Given a config section (tree or not) traverse up the parent
44
+ structure until finding the first entry containing an objectType
45
+ setting that is set to WMWorkload
46
+
47
+ """
48
+ return findObjectTypeAboveNode(node, "WMWorkload")
49
+
50
+
51
+
52
+ def stepIdentifier(stepHelper):
53
+ """
54
+ _stepIdentifier_
55
+
56
+ Generate the /Workload/Task/Step id from the step instance
57
+ given.
58
+
59
+ """
60
+ task = findTaskAboveNode(stepHelper.data)
61
+ identifier = "%s/%s" % (task.pathName,
62
+ stepHelper.name())
63
+ return identifier
@@ -0,0 +1,12 @@
1
+ from WMCore.WMException import WMException
2
+
3
+ class WMSpecFactoryException(WMException):
4
+ """
5
+ _WMSpecFactoryException_
6
+
7
+ This exception will be raised by validation functions if
8
+ the code fails validation. It will then be changed into
9
+ a proper HTTPError in the ReqMgr, with the message you enter
10
+ used as the message for farther up the line.
11
+ """
12
+ pass