* Add field to ado config for checking duplicate work items
* Make duplicate fields nullable and add it to python models
* Update broken tests
* Update docs to include new ado_duplicate_fields property
* Throw exceptoins for missing area/iteration paths
* Comment out feature flag check for work item creation
* Revert "Comment out feature flag check for work item creation"
This reverts commit ad961694535d06ca1f607fe261b3624f36ad1166.
* Add some extra info to the exceptions to distinguish them
* Add logging when a validation error is encountered
* Add call to validate in NotificationsTest for testing
* Fix area and iteration path validation
* Update error messages
* Fix ArgumentNullException
* Add extra information to path check failure
* Request classification nodes with depth equal to number of parts in the path
* Pass tree structure as parameter instead of always using Areas
* Remove '[PAT]' from error messages
* Require project name in Area/IterationPath during validation
* PR comments
* Sneak in a one-line fix for empty comments
* Change context messsage in response from notiifcation test
* Revert the location of the setupFolder
* install llvm version 16.0.6
* print version
* install llvm before building fuzzing tools
* revert changes in the script
* Remove the configuration of the autoscale diagnostic
* only remove the retention policy
* set retention policy to false
* remove settings
* remove retentionPolicy from bicep
* format
* Updating setup.sh
* logger works
* Install omi
* syntax
* Add option to create mariner pool in checkpr
* .
* Need to install sudo
* .
* Include both logging extensions
* Revert because we already isntall the azure monitor for linux extension
* Downgrade type handler version
* Add data collection rules and fuzzing articacts for integration test
* TODOs
* Fix linux jobs getting sent to mariner
* Fix linux jobs going to marienr pool
* Fix pools
* Remove the old logging extension on linux
* try to retain syslog
* Value to be set was not clear
* Trying to route logs
* Maybe we need to specify properties even if we don't set anything
* Start adding a data collection association
* Create association
* update packages.lock
* .
* Remove auto config and add dependency map
* Bring back GCS autoconfig
* Undo DCR stuff
* Undo package version bump
* Fix up files
* Remove TODO
* deserialize the coverage files directly into the output files
* reduce the amount of data structure cloning
individual save function for each formats
* cleanup
* unformatted json
* bring back spawn
* remove stray comment
* build fix
* fix build
Enables capturing crashdumps generated by ASAN at point of failure.
This helps in several ways:
- provides a crash dump in the case that we cannot repro a failure later
- some people have stated that crash dumps would be more useful to their team than the repro VM
- we should be able to use these for automated submission to Watson or similar
---
Crash dumps are automatically collected (for libfuzzer) jobs, if we find any. They should be activated by enabling crash dumps in ASAN, via:
- On Linux: `ASAN_OPTIONS=disable_coredump=0:abort_on_error=1:unmap_shadow_on_exit=1`
- OneFuzz will override the (Ubuntu) crash dump options to generate core dumps instead and then upload them.
- On Windows: `ASAN_SAVE_DUMPS=my_dump.dmp`
- OneFuzz will look for any `*.dmp` files in the working directory and then upload them.
In both cases, the crash dump will be renamed to match the crashing input, if possible, and uploaded to a new `crashdumps` container.
---
Also updated: the “simple” LibFuzzer test has been updated to be compiled with `cl.exe` instead of `clang` on Windows, so that we are exercising the MSVC implementation of ASAN/LibFuzzer, and the CI image has been updated to `windows-2022`. The restriction to an old version of the Windows SDK has been removed.
`windows-rs` is the newer, Microsoft-supported version of the API bindings; `winapi` hasn't been updated in some time. This allows us to remove some code, as `windows-rs` includes the `Sym*` functions that we had to previously defined ourselves in `dbghelp`.
Rather than port the `jobs` and `com` code I removed it, as it was unused.
The `check_hr` and `check_winapi` macros have been replaced by use of `.ok()?` on `BOOL` and `?` on `HRESULT` which now support standard error handling facilities.
Add a snapshot-based test to our coverage implementation. This adds coverage for a bunch of code which did not previously have it, and allows us to easily see that coverage is being generated as expected.
A fix was made to the recording code to remove the use of `TargetAllowList` as it was easy to misconfigure `CoverageRecorder` when using it. The use of `TargetAllowList` is now only a container struct in our generic coverage task.
* Look for azcopy.exe in AZCOPY if it's a directory
* Make file check in AZCOPY dir more concise
Co-authored-by: George Pollard <gpollard@microsoft.com>
* Add logic to support searching for azcopy on linux
---------
Co-authored-by: George Pollard <gpollard@microsoft.com>