|
203 | 203 | "postRushBuild": [] |
204 | 204 | }, |
205 | 205 |
|
| 206 | + /** |
| 207 | + * Installation variants allow you to maintain a parallel set of configuration files that can be |
| 208 | + * used to build the entire monorepo with an alternate set of dependencies. For example, suppose |
| 209 | + * you upgrade all your projects to use a new release of an important framework, but during a transition period |
| 210 | + * you intend to maintain compability with the old release. In this situation, you probably want your |
| 211 | + * CI validation to build the entire repo twice: once with the old release, and once with the new release. |
| 212 | + * |
| 213 | + * Rush "installation variants" correspond to sets of config files located under this folder: |
| 214 | + * |
| 215 | + * common/config/rush/variants/<variant_name> |
| 216 | + * |
| 217 | + * The variant folder can contain an alternate common-versions.json file. Its "preferredVersions" field can be used |
| 218 | + * to select older versions of dependencies (within a loose SemVer range specified in your package.json files). |
| 219 | + * To install a variant, run "rush install --variant <variant_name>". |
| 220 | + * |
| 221 | + * For more details and instructions, see this article: https://rushjs.io/pages/advanced/installation_variants/ |
| 222 | + */ |
| 223 | + "variants": [ |
| 224 | + /*[BEGIN "HYPOTHETICAL"]*/ |
| 225 | + { |
| 226 | + /** |
| 227 | + * The folder name for this variant. |
| 228 | + */ |
| 229 | + "variantName": "old-sdk", |
| 230 | + |
| 231 | + /** |
| 232 | + * An informative description |
| 233 | + */ |
| 234 | + "description": "Build this repo using the previous release of the SDK" |
| 235 | + } |
| 236 | + /*[END "HYPOTHETICAL"]*/ |
| 237 | + ], |
| 238 | + |
206 | 239 | /** |
207 | 240 | * Rush can collect anonymous telemetry about everyday developer activity such as |
208 | 241 | * success/failure of installs, builds, and other operations. You can use this to identify |
|
0 commit comments