描述
通常,公司希望能够拥有一个常青环境,具有最新的依赖项,以便能够通过运行自动更新或至少提供此类更新的自动拉取请求来自动修复问题和漏洞。
对于这样的更新,一个非常常见的工具是 renovate 。
为了帮助用户设置这些工具,Angular文档应该描述实现这一目标所需的步骤/要执行的命令。
请参阅相关的 renovate issue/PR:
renovatebot/renovate#4256
renovatebot/renovate#7632
一般步骤:
- 在 package.json/ lockfile 中更新并捆绑所有与 Angular 相关的依赖项
- 安装依赖项
- 之后执行迁移操作
使用 renovate 的示例:
{
"postUpgradeTasks": {
"commands": [
"npm ci --ignore-scripts",
"npx ng update {{{depName}}} --from={{{fromVersion}}} --to={{{toVersion}}} --migrateOnly --allowDirty --force"
],
"fileFilters": ["**/**"]
}
}
受影响的URL是什么?
请提供重现问题的步骤
- 无响应*
请提供预期行为与实际遇到的行为之间的对比
使用自动化工具执行常青更新的过程已描述。
如果可能,请提供截图
- 无响应*
请提供您看到的异常或错误
- 无响应*
这是一个特定于浏览器的问题吗?如果是,请指定设备、浏览器和版本。
- 无响应*
2条答案
按热度按时间1mrurvl11#
重要的一点是,
postUpgradeTasks
仅在使用 Renovate 的自托管版本时有效。我也怀疑上述 Renovate 配置不足以使ng update
正确工作。通常情况下,您希望将软件包分组到
@angular/
和@angular-devkit/
范围内,并为@angular/core
、@angular/cli
等运行ng update
命令,否则更新将因不兼容性问题而失败。示例:
@angular/core
版本 13 不兼容于@angulalar/core
版本 12。l2osamch2#
是的,我同意!有必要将所有这些依赖项归为一个组。也许。