Announcing the availability of ci_hsc_gen(2/3) for generation 2 and generation 3 middleware
The original ci_hsc package has been split into 2 packages, as per RFC-599. One, named testdata_ci_hsc, contains only the data used in running ci_hsc and is expected to change only very infrequently. A shared copy of this repository can be found on lsst-dev at /project/shared/data/test_data/testdata_ci_hsc/ The second, named ci_hsc_gen2, contains the testing suite.
Along side this package split a new package, named ci_hsc_gen3, is being introduced. Like ci_hsc_gen2 this package depends on the testdata_ci_hsc package. However this new package, as the name implies, tests the same bits of the stack as gen2 but does so using the new generation 3 middleware.
As of now the original ci_hsc package still exists, but should be considered deprecated. It will be preserved in its current state for the time being as people migrate over to the new packages, but no medium to long term commitment on its state is being made.
Each of the new packages are available to clone and run locally, and are able to be specified in a Jenkins target list. It is encouraged that users run both gen2 and gen3 tests for the time being unless developing features specific to gen2 or gen3 middleware or have some other specialized need. At this time it is not a requirement per say to run these packages before merge, but if a change is made that breaks the package follow up work may be requested to undo the breakage, just like the current ci_hsc.
Each of the new packages are available to clone and run locally, and are able to be specified in a Jenkins target list. It is encouraged that users run both gen2 and gen3 tests for the time being unless developing features specific to gen2 or gen3 middleware or have some other specialized need.
Which package(s) will be used if we run Jenkins with the default target of lsst_distrib lsst_ci?
lsst_ci, is currently still on the original ci_hsc. This is expected to migrate soon, but it is up in the air if it will include both or just gen2, as doing both will almost double the runtime.
lsst_ci has never included ci_hsc because it was deemed to take too long to run.
I would have preferred we converted ci_hsc to a meta package that depended on the gen2 and gen3 versions so that people could do what they always did and if they ask for ci_hsc it would build both rather than having to put them both explicitly on the product list.
I am not opposed to that going forward, but I felt it was work orthogonal to this work, as it is more introducing a convenience for people to save typing. I also don’t think it is the right time to do it immediately, as for whatever reason people may be looking for the old package, so I think some deprecation time is good. However, I may be in the minority opinion and anyone is free to do whatever they like with this going forward.