dmwm/WMCore — pull request #4754 by ticoann (2013-08-23 19:03:23+00:00)
Title: reqmgr2 september deployment candidate

1. validation change
* all validation definition is moved to StdBase spec as
* request creation validation is done in spec
* request update validation is done workloadhelper (since update only happens through that)
* all the argument definition is change to CamelCase
* divide validation process from functional process in RESTEntity

2. check the permission for each request update.
* permission can be defined by DN, (sitedb group and role) as well as RequestType and status transaction. (to support StoreResult case)
* still need to define correct group for each process.
*
3. api changes: make REST api simpler than reqmgr.
* all request related api starts with /data/request/ (i.e /data/request?team=some&status)
* few categories, request, meta data (cmssw, team)
* request creation uses 'POST' verb, and update uses 'PUT' (including clone)
* basic get request with combination query support. (just infrastructure need to be tested)
* need to document new APIs

4. RESTApi.
* create request
* update request
* get request information (by status, inputdataset, outputdataset, name, team,

5. Unittest
* use common spec definition for the unittest and ops script /data/reqmgr/
* create the framework to test permission with fake hmac and DN.
* Known problems:
* etag is not updated when request is updated causing cached value return.
* hmac matching test fails when multiple test method is created in the same unittest
* unittest currently accesses cmsweb-testbed for config cache which cause the Jenkins test fail.