Skip to content

Commit 659d36d

Browse files
jt-ntiheatherlp
authored andcommitted
Improve build reliability
It looks like rushjs symlinking can cause issues with the CopyFiles task. Use a script instead as suggested in microsoft/azure-pipelines-tasks#9046 Signed-off-by: James Taylor <jamest@uk.ibm.com>
1 parent 0e7a80e commit 659d36d

1 file changed

Lines changed: 10 additions & 8 deletions

File tree

ci/azure-pipelines.yml

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -86,19 +86,16 @@ stages:
8686
codeCoverageTool: 'cobertura'
8787
summaryFileLocation: '**/cobertura-coverage.xml'
8888
artifactName: 'Unit Test Coverage'
89-
# CopyFiles can follow symlinks hence be careful with node_modules
90-
- task: CopyFiles@2
91-
condition: or(succeeded(), failed()) # publish either way
92-
inputs:
93-
contents: |
94-
**/*.build*.log
95-
!**/node_modules/**
96-
targetFolder: $(Build.ArtifactStagingDirectory)/logs
89+
- script: |
90+
mkdir -p $(Build.ArtifactStagingDirectory)/logs
91+
find . \( -type d -name 'node_modules' \) -prune -o -name '*.build*.log' -exec cp {} $(Build.ArtifactStagingDirectory)/logs \;
92+
displayName: 'Copy build logs'
9793
- task: PublishBuildArtifacts@1
9894
condition: or(succeeded(), failed()) # publish either way
9995
inputs:
10096
pathToPublish: $(Build.ArtifactStagingDirectory)/logs
10197
artifactName: 'Build logs'
98+
displayName: 'Publish build logs'
10299

103100
# Copy the built artifacts to the staging directory, tgz, and the docker image
104101
- script: |
@@ -161,11 +158,16 @@ stages:
161158
**/*.build*.log
162159
!**/node_modules/**
163160
targetFolder: $(Build.ArtifactStagingDirectory)/testlogs
161+
- script: |
162+
mkdir -p $(Build.ArtifactStagingDirectory)/testlogs
163+
find . \( -type d -name 'node_modules' \) -prune -o -name '*.build*.log' -exec cp {} $(Build.ArtifactStagingDirectory)/testlogs \;
164+
displayName: 'Copy test logs'
164165
- task: PublishBuildArtifacts@1
165166
condition: or(succeeded(), failed()) # publish either way
166167
inputs:
167168
pathToPublish: $(Build.ArtifactStagingDirectory)/testlogs
168169
artifactName: 'Test logs'
170+
displayName: 'Publish test logs'
169171
- task: PublishBuildArtifacts@1
170172
condition: or(succeeded(), failed()) # publish either way
171173
inputs:

0 commit comments

Comments
 (0)