Граф коммитов

7229 Коммитов

Автор SHA1 Сообщение Дата
BuildXL-Pipelines c9f81ebeaf Merge pull request 784552 from dev/BuildXL/updatelkg-0.1.0-20240510.14-2024-05-13T17-51-07 into main 2024-05-13 18:16:42 +00:00
Julian Bayardo 03d2c2db9f Merged PR 784524: Downgrade failure to create gRPC encrypted channels to Info 2024-05-13 17:48:32 +00:00
Oleksii Kononenko cea42e3df4 Merged PR 784360: Revert "Merged PR 784187: Remove net7 qualifier
After net7 removal the minimal build fails in CB with 'child process survived' error.

Revert "Merged PR 784187: Remove net7 qualifier

Remove net7 qualifier and move msbuild to net8.

Related work items: #2174274"

Reverted commit `4c5cc753`.

Related work items: #2174274
2024-05-11 00:15:11 +00:00
Serge Mera a37e4d7458 Merged PR 784359: Address NRE when the credential provider path is set to null
Address NRE when the Nuget credential provider path is set to null

Related work items: #2174302
2024-05-10 23:46:09 +00:00
Marcelo Lynch 🧉 02988d6165 Merged PR 784356: Remove mac sandbox statistics 2024-05-10 23:10:00 +00:00
Semih Okur b92d1ec815 Merged PR 784298: Fix ValidateSuccess errors on the workers for builds terminating early
Some instances of ValidateSuccessMatches errors on workers are related to this following scenario:

- Worker early-released and we call FinishAsync by capturing 'buildFailure' as null because HasFailed is false.
- We wait for worker to drain its pips
- Internal error occurs on the orchestrator
- Orchestrator terminates and tries to exit each worker.
- For early-released workers, there is already a pending FinishAsync due to the early release and the second 'FinishAsync' with the error message is ignored.
- Worker receives Exit message with no failure. ValidateSuccess condition fails because we expect the build to succeed, but there are errors logged due to pending/terminated pips on the worker itself.

Related work items: #2172783
2024-05-10 22:59:06 +00:00
Marcelo Lynch 🧉 43d3318255 Merged PR 781419: [Unix sandboxing] Remove root jail support
Part of the sandbox cleanup. Root jail is not used by our customers, and the need for it for process remoting is not there now that AnyBuild is gone

Related work items: #2111125
2024-05-10 22:26:29 +00:00
Marcelo Lynch 🧉 58b367a6e8 Merged PR 781723: Remove macOS sandbox (managed) code and logic
Remove macOS sandbox / kernel extension code and examples. Trying to only remove dead code here, some refactoring is still possible to improve code structure but I will leave it for future PRs.
2024-05-10 21:44:15 +00:00
Oleksii Kononenko 4c5cc753e9 Merged PR 784187: Remove net7 qualifier
Remove net7 qualifier and move msbuild to net8.

Related work items: #2174274
2024-05-10 20:43:31 +00:00
Pasindu Gunasekara 🍣 4bb8d3a27e Merged PR 783872: Add extra logging to BxlObserver::relative_to_absolute
- Debugging some ptrace failures on 1JS
- Also disables report cache on fork/clone calls to fix a unit test that failed due to missed reports.

Related work items: #2171844
2024-05-10 18:00:46 +00:00
Michael Pysson 0005072361 Merged PR 784167: Pin Nuget frontend test to xunit
This test has an issue after updating to qtest. Pinning to xunit for the time being
2024-05-09 23:41:41 +00:00
Kai Chen c40084093f Merged PR 783942: Format and move comment to line that match code change 2024-05-09 21:29:48 +00:00
Michael Pysson 0dd7649be3 Merged PR 784089: Soften build manifest warning when missing HistoricMetadataCache
Soften build manifest warning when missing HistoricMetadataCache. With BlobL3 e2e build times are looking better than CASaaS in spite of this suboptimal behavior. Don't warn users when we plan on moving forward with this topology.
2024-05-09 21:16:47 +00:00
Marcelo Lynch 🧉 027a61067f Merged PR 782444: Refactor Linux sandbox to use new Create/ReportAccess functions in BxlObserver
Reinstate the change reverted by !781882 after the fixes in !782414
2024-05-09 21:09:15 +00:00
Kai Chen ea58784fe6 Merged PR 782760: Update sdk.symbol to allow users to pass generated symbolMetadata file for sending symbol request
office decide to put source file into symbol drop so that source file can be retrieved from symbol store by a custom key. This will simply the implementation of the source link for office.

currently, symbolmetadata file which contains the debugentryData (including the clientKey to label the file and used for retrieving from sym store) is generated by buildxl before sending the symbol request. The key is generated based on the metadata of file by `SymstoreUtil`.

When office wants to index source files to symbol drop, source file extension may not be compatible with symstoreUtil nor do it meet requirements that key for downloading from symbolStore should be irrirelevant to content.

Office wants that `clientKey` is only relevant to path, commit or version that build can easily to compose download url for each indexed source file in symbol drop.

To do, office needs to control the generation of symbolMetaDataFile instead of letting bxl to do it.
2024-05-09 01:47:39 +00:00
Qi Wang c741888d2d Merged PR 783808: Fix ubuntu 22.04 yml format error
Fix ubuntu 22.04 yml format error
2024-05-08 18:12:46 +00:00
Serge Mera 6ef7c5a282 Merged PR 783526: Move selfhost builds to a common pool
Use a new common pool BuildXL-DevOpsAgents-Selfhost for both Windows and Linux runs. This is a pre-requisite step to be able to enable network isolation and use a common firewall for all runs.
2024-05-07 21:42:25 +00:00
Michael Pysson 5ebec7807d Merged PR 783565: Revert "Merged PR 778027: Catch consolenotconnected exception and exit buildxl
The break is the change in StandardConsole.cs. That condition needs to be run any time the previous line was overwriteable to blank out the previously written text and move the cursor back to the appropriate position. The change was conditionalizing it when both the previous line was overwriteable and when the current line is.

I'm reverting the entire commit instead of just that one part because the error handling changes in the other files are related.

Related work items: #2138734, #2174322
2024-05-07 20:24:13 +00:00
Michael Pysson daa687e7ae Merged PR 782334: Enable QTest for .net core projects again
Enable QTest for .net core projects again

Related work items: #2172282
2024-05-07 19:00:17 +00:00
Marcelo Lynch 🧉 b1a2d3cc3b Merged PR 783325: PackedExecutionTests should set runWithUntrackedDependencies
The test `TestLogPackedExecution` runs the scheduler, and we should avoid nesting the sandboxes in tests
2024-05-06 22:05:36 +00:00
BuildXL-Pipelines fcd54fdecc Merge pull request 783215 from dev/BuildXL/updatepackages-2024-05-06T16-08-08 into main 2024-05-06 17:06:55 +00:00
BuildXL-Pipelines 62af4b3530 Merge pull request 783213 from dev/BuildXL/updatenotice-2024-05-06T16-05-59 into main 2024-05-06 16:44:22 +00:00
Rahul Chamala 602e1fc889 Merged PR 780371: Allow succeedfast pips to be recursively dirtied
There is logic added to prevent downstreams of succeedfast pips to be recursively dirtied. This can potentially cause underbuilds with incremental scheduling particularly when the upstreams of the pips in buildcone connected via succeedfast pip were dirtied.

The intent for the previous change is perf driven, to reduce the cache checks. However due to Eric's change which stops cache checks at the first up-to-date pip, the perf is retained and the change is not needed anymore. This PR removes the logic to stop downstreams of succeedfast pips to be dirtied.

Related work items: #2170157
2024-05-04 01:27:09 +00:00
Semih Okur a223ebe33b Merged PR 782474: Fail the build when the problematic workers exceed the half remote workers 2024-05-04 00:54:05 +00:00
BuildXL-Pipelines bb0a8f80ef Merge pull request 783086 from dev/BuildXL/updatelkg-0.1.0-20240502.2-2024-05-03T22-08-33 into main 2024-05-03 23:11:08 +00:00
Michael Pysson 8b2dfb5d51 Merged PR 782663: Release note catch up
Release note catch up
2024-05-02 22:59:28 +00:00
Sahiti Chandramouli 40f3553c36 Merged PR 782791: Use GITHUB_USER env var to capture UserName for Codespaces
Use GITHUB_USER env var to capture UserName for Codespaces.
Added an Engine Based test to test the three cases - custom value, ADO, codespaces.
Added a smaller unit test to specifically check the functionality of GetUserName.

Related work items: #2169835
2024-05-02 21:34:19 +00:00
Marcelo Lynch 🧉 c63a66fafa Merged PR 782587: [Linux sandbox] Do not check accesses when the provided paths can't be normalized
[Linux sandbox] Do not check accesses when the provided paths can't be normalized
2024-05-01 21:05:42 +00:00
Marcelo Lynch 🧉 8d0ddf1f9f Merged PR 782414: [Linux sandbox / refactor] Handle null values and non-file paths in interposed functions
Two fixes:

1) The new SandboxEvent constructors take `std::string&` as parameters but the lib functions pass `char*`s. If a tool passes null for a `char*`, the runtime crashes because it won't allow that implicit construction. We need to handle this gracefully because the tools can pass whatever to the libc functions we interpose. The fix is to create a special `SandboxEvent::Invalid` in these cases that we then ignore

2) We shouldn't report paths that are non-files. Add a check for this in `ResolveEventPaths`, which will report that the path isn't a file so we can ignore it
2024-04-30 23:49:34 +00:00
Serge Mera 7b08c24046 Merged PR 782403: Refine logging ReceivedReportFromUnknownPid to avoid synthetic accesses
All occurrences of ReceivedReportFromUnknownPid from 1JS in the last week was about synthetic accesses (process requires ptrace, first allow write check in process). Let's not log in that case, we send these from native side before the process start event, and they are not real accesses in the end.

I'll check again in a week if that makes ReceivedReportFromUnknownPid reach 0, and in that case I'll turn it into a warning.
2024-04-30 22:52:25 +00:00
BuildXL-Pipelines d65c68fb9c Merge pull request 782350 from dev/BuildXL/updatelkg-0.1.0-20240426.5.1-2024-04-30T18-06-19 into main 2024-04-30 20:32:33 +00:00
Serge Mera ee8fe10deb Merged PR 782322: Revert the Lage builder to stop producing an error file
Revert the Lage builder to stop producing an error file. This change produced a DFA on office devmain (the lage graph builder is used directly as a tool in that codebase). Will roll forward again in a way that doesn't produce breaks.
2024-04-30 16:55:03 +00:00
Pasindu Gunasekara 🍣 23e97d3853 Merged PR 782200: Handle non-existent paths with getcap 2024-04-30 00:07:08 +00:00
BuildXL-Pipelines 79227c172b Merge pull request 782075 from dev/BuildXL/updatenotice-2024-04-29T16-08-11 into main 2024-04-29 21:43:27 +00:00
Sahiti Chandramouli daba9a9c41 Merged PR 782102: Disallow the use of phase:Evaluate for the users.
Disallow the use of phase:Evaluate for the users by throwing a command line argument error.
Customers are suggested to use the Schedule phase instead.

![Screenshot (20).png](https://dev.azure.com/mseng/9ed2c125-1cd5-4a17-886b-9d267f3a5fab/_apis/git/repositories/50d331c7-ea65-45eb-833f-0303c6c2387e/pullRequests/782102/attachments/Screenshot%20%2820%29.png)

Related work items: #2166157
2024-04-29 20:09:57 +00:00
Iman Narasamdya dd114c556b Merged PR 781966: Attempt to make Linux XUnit test more robust
The following changes seem to make XUnit tests in rolling pipeline more robust from timeout processes:
- Split unit tests into smaller pips.
- Use XUnit default synchronization context restriction
- Use XUnit default RunTestCaseAsync.

The following builds show this robustness:
https://dev.azure.com/mseng/Domino/_build/results?buildId=27965406&view=results
https://dev.azure.com/mseng/Domino/_build/results?buildId=27965405&view=results
https://dev.azure.com/mseng/Domino/_build/results?buildId=27965038&view=results
https://dev.azure.com/mseng/Domino/_build/results?buildId=27964520&view=results

Plus: some fix on UTs' attributes
2024-04-29 16:37:41 +00:00
BuildXL-Pipelines bf1263e2f5 Merge pull request 781984 from dev/BuildXL/updatelkg-0.1.0-20240426.5-2024-04-28T05-01-01 into main 2024-04-28 05:23:10 +00:00
Qi Wang cba37d61fc Merged PR 781947: Rename linux stages template yml
Rename linux stages template yml
2024-04-27 00:29:34 +00:00
Serge Mera ca49e9c958 Merged PR 781846: Add support for rush-build-graph-plugin
Add support for rush-build-graph-plugin

Related work items: #2160055
2024-04-26 23:11:13 +00:00
BuildXL-Pipelines 2f32fc98ae Merge pull request 781919 from dev/BuildXL/updatelkg-0.1.0-20240425.3-2024-04-26T21-57-26 into main 2024-04-26 22:17:11 +00:00
Sahiti Chandramouli d974ba0413 Merged PR 781201: Make ToolPath non-mandatory in Allowlist.
Remove the condition where customers need to pass this parameter in the AllowList entries.
Reused two unit tests which test this feature.
Had to define a comparer for comparing SerializableRegex objects since it was becoming an issue when using the MultiValueDictionary to extract elements.

Related work items: #2139864
2024-04-26 22:16:52 +00:00
Marcelo Lynch 🧉 2d51e866a5 Merged PR 781882: Revert "Merged PR 776212: Refactor Linux sandbox to use new Create/ReportAccess functions in BxlObserver"
Revert "Merged PR 776212: Refactor Linux sandbox to use new Create/ReportAccess functions in BxlObserver"

This reverts commit 57a1f151d8.
2024-04-26 20:53:36 +00:00
Qi Wang 7983e2242e Merged PR 781449: Add Linux PR Validation run on Ubuntu 22.04
Add a yml for Linux PR Validation run on Ubuntu 22.04 image. I make the Pool a parameter and move the stages into a template.
2024-04-26 20:11:24 +00:00
Iman Narasamdya 4d94c6f77f Merged PR 781712: Release notes for 0.1.0-20240419.10
Release notes for 0.1.0-20240419.10
2024-04-25 22:37:07 +00:00
Serge Mera 95c3714d18 Merged PR 781667: Implement TryGetFinalPathNameByPath on Linux and add tests
Linux implementation was missing. Existing tests were not actually exercising this because on Linux we don't send absent probes that later become present (we might hit this still when there is a race between 2 pips). Added lower-level tests to cover the reparse point resolver component itself.

Related work items: #2170566
2024-04-25 22:24:18 +00:00
Pasindu Gunasekara 🍣 a0125cc783 Merged PR 781483: Add support for clone3 to PTraceSandbox
- Observed on odsp web builds
2024-04-25 22:12:19 +00:00
Iman Narasamdya 8486f056ce Merged PR 781231: Only run compliance build in PR validation
This PR makes us enable compliance build only in Linux PR validation.

Ideally, we should only enable source analyses in the rolling pipeline. However, because our rolling pipeline contains CB builds, SDL source analyses are all disabled, in favor of the CB compliance build. Unfortunately, some analyses, like policheck, do not work in network isolation when building in CB.

SDL source analyses typically take 2.5-4 minutes, and should not be in the critical path of this Linux pipeline run.
2024-04-25 21:27:14 +00:00
Marcelo Lynch 🧉 196242c02a Merged PR 781391: [Linux sandbox] Remove audit library
We have turned off this by default a long time ago. Removing it as part of the sandbox cleanup
2024-04-24 20:15:07 +00:00
Marcelo Lynch 🧉 57a1f151d8 Merged PR 776212: Refactor Linux sandbox to use new Create/ReportAccess functions in BxlObserver
Replace all calls of `create_access_*` and `report_access_*` with the new `SandboxEvent` + `CreateAccess` abstractions
2024-04-24 18:19:48 +00:00
Michael Pysson 1124658d7d Merged PR 780952: Bug fix for disabling server mode by default in ADO builds
There was a bug in !777896 where that didn't apply to the light config. So in practice it didn't do anything. This brings the light config to parity with the real one as well as adds unit tests to ensure their infra defaults evaluate to the same thing.
2024-04-23 23:18:56 +00:00