我正在努力获得一个简单的构建和部署工作,并希望得到一些帮助。任何人都可以查看步骤以及发布工件不起作用的原因吗?这是一个简单的Angular 7项目。
错误:
[section]开始:发布神器:dist ========================================= =================================任务:发布构建工件描述:将构建工件发布到Azure管道/ TFS或文件共享版本:1.142.2作者:Microsoft Corporation帮助:More Information
[警告]目录'D:\ a \ 1 \ s \ dist'为空。没有任何东西可以添加来构建工件'dist'。 [部分]整理:发布神器:dist
Yamla:
pool:
vmImage: Hosted VS2017
demands: npm
steps:
- script: |
echo Write your commands here
mkdir dist
echo Use the environment variables input below to pass secret variables to this script
displayName: 'Command - mkdir dist'
- task: Npm@1
displayName: 'npm install'
inputs:
verbose: false
- task: Npm@1
displayName: 'npm build'
inputs:
command: custom
verbose: false
customCommand: 'build --prod'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: dist'
inputs:
PathtoPublish: dist
ArtifactName: dist
- task: FtpUpload@1
displayName: 'FTP Upload: dist'
inputs:
credentialsOption: inputs
serverUrl: ‘xxx’
username: Tester2
password: 'Tester$2'
rootDirectory: dist
filePatterns: '*'
remoteDirectory: /
trustSSL: true
Azure DevOps管道问题
Publish Build Artifacts task用于将构建工件发布到Azure管道,TFS或文件共享。
但是,就像丹尼尔和安德烈说的那样,虽然你添加了npm build
,但你没有将安装的文件夹设置为dist
。所以npm build
的结果不会保存在dist文件夹中。在这种情况下,文件夹dist
为空。
此外,要将构建结果保存到dist文件夹,您可以尝试使用-- -op
选项,如下所示:
run ng build --prod -- -op ..\..\dist
..\..\dist
应该使用基于project.json
文件的相对路径。
查看文档JavaScript frameworks: AngularJS以获取更多详细信息。
希望这可以帮助。