-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[DownloadBuildArtifactsV0] Add download post-check #14065
[DownloadBuildArtifactsV0] Add download post-check #14065
Conversation
- Move functions to separate module - Implement consistency checker
* Fix code formatting in the download_helper module * Added comments for the checkArtifactConsistency and isItemCorrupted functions * Move some debug messages to loc strings * Add additional checks to the isItemCorrupted function to prevent false alarms
Can anyone give an ETA as to when this might be merged? |
Hi @MattGal, I'm currently double-checking all changes to prevent any possible regressions for this task, so I believe we will merge these changes within 2-3 workdays. |
- Revert refactoring changes - Introduce a new task option - "Check downloaded files" - Added check of the file size in local storage - Improve debug logging
Test run of the pipeline with these changes (with |
- Fix default value of the option in task.lock.json - Change strategy of checking download file - Add commentary to isItemCorrupted function
@alexander-smolyakov any update on when this might get merged? |
I see that the only code path that uses Can you add retry for the other code paths so that this task is more resilient? |
Tasks/DownloadBuildArtifactsV0/download_handlers/handlers_implementation.ts
Outdated
Show resolved
Hide resolved
…dBuildArtifacts_incomplete_downloads
Checked with lightweight artifact (38 b) - I think it make sense to test it with more heavy artifacts also (at least 200 mb) |
@alexander-smolyakov any updates on when this can get merged and deployed? It's hitting pretty often in our CI. |
- Fix linter warnings - Split download handlers classes to separate files - Add commentaries to the code - Update log messages
@anatolybolshakov I tested my changes on heavyweight artifacts items (The summary size of Artifact is 24399 mb). The build artifact that I used for the test: https://dev.azure.com/v-alsmo/ArtifactsTest/_build/results?buildId=929&view=artifacts&pathAsName=false&type=publishedArtifacts Run of the test pipeline that I used for e2e testing: https://dev.azure.com/v-alsmo/ArtifactsTest/_build/results?buildId=939&view=results |
Could it make sense to expose retry count as input also (in advanced inputs group)? |
Good point, I will add an additional input for it. |
…dBuildArtifacts_incomplete_downloads
Btw tested it with artifact from the same pipeline - LGTM for me 👍 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Changes tested with artifacts of about 500mb, found no issues (pipeline run)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks!
The UI "parallelizationLimit" input seem not used ? Same in previous version 0.178. Only the variable "release.artifact.download.parallellimit" works. |
Hey @SamuelGuine, we fixed the issue with |
Task name:
Description:
This PR implements an additional check of the downloaded artifact' items.
Changes:
Additions:
Check downloaded files
(Can be found in advanced settings)Retry count
(Can be found in advanced settings)handlerCheckDownloadedFiles
function for validation results of artifact downloadisItemCorrupted
function for checking information from download ticket of artifact itemRefactoring:
executeWithRetry
handlerOthers:
183
UI Demonstration
Documentation changes required: Yes
Added unit tests: No
Attached related issue:
Checklist: