Fix Version/s: None
The verification framework adds metadata associated with measurements in the Job object created by lsst.verify. Dispatch verify enrich that with provenance information obtained from the execution enviroment. While the former is arbitrary the later is mainly fixed and required by SQuaSH, thus we propose to separate them.
This will allow SQuaSH to support multiple execution environments as described in https://sqr-009.lsst.io/
Looks good. Just one style comment.
Another thought, should the jenkins environment perhaps be renamed to the domain ci.lsst.codes? Using domains/URLs would have the benefit of being more specific and future proof should we start having other CI servers push to SQuaSH.
Jonathan Sick I think the URL could be an atribute of the environment, but I like the idea of having a name for the environment. It is used, for instance, to create an endpoint like /jenkins/<ci_id> in the SQuaSH RESTful API so that you can refer to a resource which represents the execution environment and look up for the corresponding verify job.
Another thought regarding the user "local" execution environment, the natural choice would be the LSP or currently our JupyterLab deployment and in this case we have an associated URL too.
Follow https://pipelines.lsst.io/install/lsstsw.html to install the stack using the lsstsw method. Then follow https://pipelines.lsst.io/install/package-development.html to test the changes in the verify package, specifically:
You might get an output of verify from a CI run:
and execute dispatch_verify from the lsstsw folder to generate the JSON document that will be sent to SQuaSH:
You can use this example notebook https://github.com/lsst-sqre/squash-rest-api/blob/master/tests/test_api.ipynb to inspect what changed in the JSON document and exercise the SQuaSH RESTful API.
Note that now we have the environment metadata associated to the verification job data stored separately from the other metadata:
and similarly in the SQuaSH database. See https://sqr-009.lsst.io/#the-qc-tier-0-database for more details.