我当前面临项目设置问题,其中 package-lock.json 文件驻留在项目根目录的子文件夹中,例如 subfolder/package-lock.json。
在我的 YAML 管道中,我正在执行 Cache@2 任务,但它失败了,因为它无法找到我的 package-lock.json 文件,尽管该文件存在。 (我已经通过上一步打印目录中的文件确认了这一点。)
之前,在进行一些重构之前,package-lock.json 文件位于项目根目录中,以下步骤使用默认路径:
parameters:
- name: npmConfigCache
type: string
default: "/home/vsts/.npm"
steps:
- task: Cache@2
inputs:
key: 'npm | "$(Agent.OS)" | package-lock.json'
restoreKeys: |
npm | "$(Agent.OS)"
path: ${{ parameters.npmConfigCache }}
displayName: Cache npm Packages
这是我如何调用模板:
- template: npm/build-and-test.yml@templates
parameters:
npmConfigCache: "$(System.DefaultWorkingDirectory)/Subfolder/"
这是错误:
有人遇到过类似的问题吗?
我尝试过很多不同的方法
问题出在以下一行:
inputs:
key: 'npm | "$(Agent.OS)" | package-lock.json'
需要像下面一样包含子文件夹引用,而不是编辑提供的路径。
inputs:
key: 'npm | "$(Agent.OS)" | subfolder/package-lock.json'