* Improve link checking for github links
Use locally cloned repos to check github links to avoid rate-limiting.
* Add default clone path to the link checker template
---------
Co-authored-by: Wes Haggard <Wes.Haggard@microsoft.com>
* Support writing .env files from Test Resources
If a language repo opts into it *and* if a `test-resources.bicep` file exists and lints clean of writing secrets *and* if the `.env` file is gitignore'd, write a `.env` file next to `test-resources.bicep`.
* Resolve PR feedback
* Pass -Force for . hidden files on non-Windows
---------
Co-authored-by: Heath Stewart <heaths@microsoft.com>
* Add helper function for spec-gen-sdk pipeline
* Move logging script sourceing to global scope
---------
Co-authored-by: Chidozie Ononiwu <chononiw@microsoft.com>
* Properly handle error for case where no issue (pr) is found for specified commit
* Use logInfo in various places
* Change LogWarning to LogInfo
---------
Co-authored-by: Chidozie Ononiwu <chononiw@microsoft.com>
* when processing a PR diff, treat packages added via their triggeringPaths as directly changed (used to be indirect)
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* add a category to parse triggerPaths when there is no artifact present (this is the go use-case)
* add integration tests for Save-Package-Properties scenarios
* bugfixes around various situations in new PackageProps class
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
We need to use Write-Host for the custom logging commands to get them correctly out into stdout which is what they need to be interpreted correctly.
Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>
* support accessing a different key for the value of the Package during batching in Create-PrJobMatrix
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* Add logic for seting APIView Pull Request comment
* Update script to use source and head commish
* Make API Change Check a header
* Add Fetch URI to APIView comment
* Pass APIView host as a parameter
* Update APIVBiew comment header and add state to search api call
---------
Co-authored-by: Chidozie Ononiwu <chononiw@microsoft.com>
* identify and fix the issue with no results on a matrix that is PRBatched. The platform filters eliminate all the jobs, which is why it only turned up on the second windows leg
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* update generate-matrix function ProcessImport to return a structured result, versus a tuple that is destructured immediately
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
Co-authored-by: Scott Beddall <45376673+scbedd@users.noreply.github.com>
* populate triggeringPaths of each artifactdetails with the owning ci.yml
* handle service-directory changes in Get-PrPkgProperties
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* Get-PRPkgProperties now honors artifact-list specific absolute/relative paths to other triggering folders. This will supplant the common "if eng/ changes include template and core" in a follow-up PR.
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* adjustments to iterating across matrix configs for packages that belong to multiple matrices
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* replace PkgProps CIMatrixConfigs property in favor of a more generalized CIParameters property. Original CIMatrixConfigs will exist as an item of same key within CIParameters.
* update Create-PRJobMatrix to honor new CIMatrixConfigs property location
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* update Get-ObjectKey to coalesce boolean-like values to their true boolean value
* update Get-ObjectKey to call Get-ObjectKey on each item of an array or pscustom object - versus utilizing their values directly
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* allow the indirect matrix to generate non-sparse based on new parameter to generate-job-matrix
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* Added label handle sdk-gen pipeline template
Added common script to delete label from a PR
* Update eng/common/scripts/Invoke-GitHubAPI.ps1
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
---------
Co-authored-by: ray chen <raychen@microsoft.com>
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
* Support incrementing semver prereleases with 'zero' versions
* Make tests more explicit
---------
Co-authored-by: Patrick Hallisey <pahallis@microsoft.com>
* updates to dynamic matrix generation. moves indirectly included packages to sparse usage. adds additional parameters to GeneratePRMatrix that enable further filtering of the matrix generated for the indirect packages
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>
* ensure that packages that come back from AdditionalValidationPackages are NOT counted as 'includedForValidation: true' if they also exist in the original 'these packages changed' set
Co-authored-by: Ben Broderick Phillips <ben@benbp.net>
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
Co-authored-by: Scott Beddall <45376673+scbedd@users.noreply.github.com>
Co-authored-by: Ben Broderick Phillips <ben@benbp.net>
* add and use new function to PSModule-Helpers.ps1 -- `InstallAndImport-ModuleIfNotInstalled` which smartly short circuits the install and module import to be as efficient as possible. This largely has impact of improving Save-Package-Properties performance on windows machines.
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* change our verifyChangelogs over to utilizing the artifact details. if we don't have an artifact details at all, don't verify changelog. if we do, but skipverifychangelog is present, don't verify changelog. if we have artifact details, but no disable, verify the changelog
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* ensure that ChangedServices value within the generated pr diff is always properly an array of strings
* upload the changed services as an attachment named AdditionalTags in save-package-properties.yml, to allow PipelineWitness to tag public builds during log processing
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
Co-authored-by: Scott Beddall <45376673+scbedd@users.noreply.github.com>
Co-authored-by: Patrick Hallisey <hallipr@gmail.com>
* Common cleanup with the docs docker images no longer being used
* Remove docker-pull-image.yml
---------
Co-authored-by: James Suplizio <jasupliz@microsoft.com>
* Retry container deletion
* Do not try to purge keyvaults with purge protection
* Delete all blobs when container has immutability
* Skip missing blob container properties
* Fix null container
---------
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
* identify and resolve missing function GenerateMatrixForConfig
* identify and resolve miss-used null-coalesce operator
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* package-properties are now populated with matrix configurations from their ci.yml if present
* create new code path for generate-job-matrix.yml which combines Create-JobMatrix and the "distribute-packages-to-matrix" action to generate dynamic matrices for PRs
---------
Co-authored-by: Scott Beddall <scbedd@microsoft.com>
* Refactor PackageProps to make the Yaml loading and processing methods common
* Updates for feedback
---------
Co-authored-by: James Suplizio <jasupliz@microsoft.com>
* Escape parentheses in includes to fix issues in publishing
* Only escape close parens
* Comments
---------
Co-authored-by: Daniel Jurek <djurek@microsoft.com>
* Changes required for sdk-repo based emitter pipelines
* Rename template
* Convert emitter archetype to pipeline template
* Move the archetype template out of the stages folder
---------
Co-authored-by: Patrick Hallisey <pahallis@microsoft.com>