Fix Version/s: None
Team:Data Release Production
The "demo" currently exists as a special snowflake feature of jenkins jobs and is not packaged as an an eups product. A script is currently invoked by the CI machinery after an lsstsw/lsst_build or eups distrib install has completed which downloads the demo repo from github as a tarball.
An unfortunate consequence of this implementation is that changes on the master branch of the demo result in previous git tags no longer working with the demo when built by ci-scripts/lsstsw and requires knowledge of the correct git ref to use after a direct eups distrib install. This also presents an irritation when tagging an official release as there is no source of truth as to where the tag should be located, requiring human intervention. For at least the third time, the demo on master has changed during the release process and now fails with the current release candidate.
A much less error prone solution would be to convert the demo into a regular eups product, which is a dependency of either lsst_distrib and/or lsst_ci. This would result in demo metadata being incorporated into eups distrib tags and solving the science-pipeline/demo version mismatch problem both for end users with a local installation and under CI.
I believe the basic tasks to accomplish this would be:
- convert lsst/lsst_dm_stack_demo into an eups product – essentially add a ups dir and a table while which depends on lsst_apps
- add lsst_dm_stack_demo as a dependency of lsst_ci and/or lsst_distrib
- add a test script under lsst_ci/tests/ to trigger a demo run
- remove lsst-sqre/ci-scripts/runManifestDemo.sh and update lsst-sqre/ci-scripts/lsstswBuild.sh to not run the demo
- update various jenkins jobs in lsst-sqre/jenkins-dm-jobs to setup lsst_dm_stack_demo rather then invoking runManifestDemosh.sh