azure - Azure DevOps - 在 Azure YAML 管道的 React 构建中删除文件夹为空
问题描述
我正在尝试将 YAML 管道实施到我的项目中;但是,当前代码不会输出到放置文件夹中。我没有任何子文件夹。该项目位于根部。有任何想法吗?我在某个地方看到,在脚本部分我需要 pushd 来指定目录并在最后弹出 popd。
项目结构:
我看过这个教程:https ://www.youtube.com/watch?v=QbmLxfRCt38&t=406s但我将如何指定根文件夹。
trigger:
- master
pool:
vmImage: ubuntu-latest
steps:
- task: NodeTool@0
inputs:
versionSpec: '10.x'
displayName: 'Install Node.js'
- script: |
npm install
npm run build
displayName: 'npm install and build'
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: '$(Build.BinariesDirectory)'
includeRootFolder: true
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
replaceExistingArchive: true
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
解决方案
您存档Build.BinariesDirectory
的是:
您可以将代理上的本地路径用作已编译二进制文件的输出文件夹。
默认情况下,未设置新的构建管道来清理此目录。您可以定义您的构建以在 Repository 选项卡上对其进行清理。
例如:c:\agent_work\1\b。
此变量是代理范围的,可以用作脚本中的环境变量和构建任务中的参数,但不能用作构建号的一部分或版本控制标记。
通常 npm 会dist
为您的代码生成位于 nera 的目录。所以这肯定是错误的存档路径。
你的步骤应该是
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: 'src/dist'
includeRootFolder: true
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
replaceExistingArchive: true
有点确定请添加临时步骤,例如
- bash: ls src
一步之后'npm install and build'
。
trigger:
- master
pool:
vmImage: ubuntu-latest
steps:
- task: NodeTool@0
inputs:
versionSpec: '10.x'
displayName: 'Install Node.js'
- script: |
npm install
npm run build
displayName: 'npm install and build'
- bash: ls src
displayName: 'Check directories'
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: 'build/static'
includeRootFolder: true
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
replaceExistingArchive: true
- task: PublishPipelineArtifact@1
inputs:
targetPath: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
ArtifactName: 'drop'
推荐阅读
- ibeacon - 如何使用网络蓝牙找到信标?
- java - 如何在 ResourceChangeListener(eclipse 插件)中添加标记?
- node.js - nodejs api不转发从另一个服务收到的响应
- php - 来自 Yandex.Direct 的 GET 请求为空
- c# - 保存在数组中的位图在访问后被删除
- compiler-errors - Ocaml 错误:语法错误:')' 预期,但我找不到在哪里
- python - PYTHON Pandas - 根据其他数据帧中的值对数据帧使用 Pandas 样式
- haskell - 如何使用堆栈更改生成二进制文件的路径?
- postgresql - \COPY 不在 psql 中打印计数
- python - CSRT 算法不更新目标