Details
-
Type:
Improvement
-
Status: Won't Fix
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: Developer Infrastructure, lsstsw
-
Labels:None
-
Team:SQuaRE
Description
It would be very helpful to developers if the lsstsw tool supported a means of configuration that was not in a file checked into the git repository. That way we could update lsstsw at will without losing our configuration.
The two config items I care most about are:
- Use git@ URLs for developers instead of http::, so developers can easily push changes. The present workaround is to manually edit repos.yaml to change all URLs, but this is clumsy and breaks every time the repos.yaml file needs an update.
- The number of cores to use for a build.
One possible solution for the first item is to use a symbol in repos.yaml that gets replaced with the appropriate prefix depending on the config option.
It is intentional that only the git and https URL schemas are allowed by the linter in repos.yaml. The reason is that there isn't, for any practical purpose, anonymous ssh access and I want to avoid having to deploy ssh private keys onto build slaves. Tim Jenness and I have discussed this a bit in the hallway and I'm not particularly fond of any of the options we've come up with. Ideas thus far are:
The REPOSITORY_PATTERN environment variable is still respected by lsst_build but values from repos.yaml take precedence. To use it either the rebuild script would need to be edited or lsst_build prepare could be executed directly omitting the --repos options.