【发布时间】:2023-01-19 01:17:34
【问题描述】:
在我的管道中,我使用节点来安装和构建 NextJS 应用程序,然后我继续使用 ArchiveFiles 任务创建一个 .zip,以便稍后在 Web 应用程序服务上发布时使用它。
唯一的问题是 ArchiveFiles 忽略了 .next 和 .bin 等构建文件夹,我需要在生产环境中为网站提供这些文件夹。
这是管道的一部分,作为过程的输出,我收到一个 zip,它是我想要的文件夹的副本,不包括我需要的构建文件夹,如 .next 或 node_modules/.bin。 我需要上述文件夹才能在应用程序服务上正确运行我的应用程序。
- task: Npm@1
inputs:
command: 'install'
workingDir: '$(Build.SourcesDirectory)/roam-web-app-ssr'
verbose: true
- task: Npm@1
inputs:
command: 'custom'
workingDir: '$(Build.SourcesDirectory)/roam-web-app-ssr'
customCommand: 'run build'
verbose: true
- task: ArchiveFiles@2
inputs:
rootFolder: '$(Build.SourcesDirectory)/roam-web-app-ssr'
includeRootFolder: false
archiveType: 'default'
archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
replaceExistingArchive: false
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: "$(Build.ArtifactStagingDirectory)"
ArtifactName: "drop"
publishLocation: "Container"
正如我提到的,我尝试使用 ArchiveFiles@2 任务制作一个 zip,并希望将所有文件夹压缩到 rootFolder 上,但它实际上忽略了所需的构建文件夹。
作为检查问题是否出在安装和构建步骤的小测试,我使用复制文件任务复制工件目录中文件夹中的所有文件,并确认 .next 和 .bin 文件夹的存在。
是否有另一种方法可以在不忽略上述文件夹的情况下创建 .zip 文件?
【问题讨论】:
标签: node.js azure-devops next.js azure-web-app-service azure-pipelines