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

16 Коммитов

Автор SHA1 Сообщение Дата
Aleksandar Milicevic 2e89c5d2bf
[kext] handle check_vnode_clone (#1065)
- implement a handler for check_vnode_clone
- add a test (to the example build) that ensures that clone operations are properly detected
- add a test (to the example build) that ensure that obscure writes via sourcing csh scripts are detected
- publish and sign a new kext

AB#1607992
2019-10-18 15:19:38 -07:00
Aleksandar Milicevic 106fe44baf
Explicitly set u+w before calling setxattr (#1033) 2019-10-11 13:29:03 -07:00
Aleksandar Milicevic 7e32af8aa6
Use xattrs to mark shared opaque outputs on Mac (#1007)
The implementation for Windows remains the same and continues to use magic timestamps.

On Mac, instead of timestamps extended attributes are used. Concretely, a file is a shared opaque output IFF it has a com.microsoft.buildxl:shared_opaque_output attribute and it's value is equal to 42 (at some point in the future we could insert a more meaningful value here, e.g., PipId)

AB#1607996
2019-10-07 11:49:29 -07:00
Aleksandar Milicevic 0a47ff57ed
Remote telemetry for ContentStoreApp (#503)
New classes:

 - CsvFileLog: an ILog class that writes log messages to a CSV file and formats them according to a given schema
 - KustoUploader: a class responsible for asynchronously receiving CSV files and ingesting them into a Kusto table
2019-06-27 19:24:58 -07:00
Kristijan Šimić 1f753c91d2
Remove old and unused in memory cache config files from .NET Core 2019-05-23 11:54:35 +02:00
Julián Bayardo b2930760dd
Add MsBuildResolver and CMakeResolver examples (#340) 2019-05-21 10:20:55 -07:00
Aleksandar Milicevic 1acc262ee2
[macOS] Compile build tools to native (#285)
Additional tools compiled to native:

 - ResXPreprocessor
 - LogGen
 - TestProcess
 - OpNameGenerator
2019-05-10 14:28:19 -07:00
Aleksandar Milicevic 39d54eff1f
Handle 'rename directory' operation on macOS (#208)
Special handling for directory rename.

Scenario: a pip writes a bunch of files into a directory (e.g., 'out.tmp') and then renames that directory (e.g., to 'out'). Once 'out.tmp' is renamed to 'out', we need to explicitly update all previously reported paths under 'out.tmp'.  Since we cannot change the past and directly mutate previously reported paths, we simply enumerate the content of the renamed directory and report all the files in there as writes. This is exactly how this is done on Windows, except that it's implemented in the Detours layer.

AB#1362637
2019-04-29 09:08:33 -07:00
dannyvv 426339bd4e
Fix casing of LKG feed (#182) 2019-04-22 10:12:00 -07:00
dannyvv bd375d9939
Attempt to fix mac builds with mount errors (#129) 2019-04-11 14:36:31 -07:00
dannyvv 12453eef30
Update Transformer.write to use the new Object style apy (#97) 2019-04-08 18:32:33 -07:00
dannyvv a7b4f9ea92
Update sealDirectory calls to use new object api (#95) 2019-04-08 16:09:12 -07:00
Aleksandar Milicevic cc6732e7b7
Mark all build outputs under shared opaque dirs (#96)
The idea is that all build outputs, no matter which pip produced them, have the special timestamps as long as they are under a shared opaque directory.

Before this change, pips that explicitly declare one or more shared opaque directories, their outputs that are under any of those directories are marked with the special timestamps.

What's possible is that there are some other pips (e.g., CopyFile or WriteFile) that produce additional files into those same shared opaque directories. Those files were not marked with the special timestamps; consequently, if those files become stale, the scrubber will fail to delete them before the build, which can cause problems downstream.

With this PR, all build outputs that end up being under any declared shared opaque output directory will have the special timestamps.

AB#1472511
2019-04-08 13:16:02 -07:00
Kristijan Šimić 7842d94bd2
[macOS] General updates to documentation and build scripts (#50)
* Restore all script exec permissions, update Readme.md with better macOS instructions
* Always run sandboxed when building internal
* Exec permission adjustment for all scripts
2019-03-29 13:20:48 +01:00
Erik Mavrinac a812678e73
Add permission-setting for MacOS pipeline failure (#42)
* Add direct bash execution to avoid permission failures
2019-03-28 16:36:51 -07:00
Microsoft Open Source b5c9f43106 Initial sync
Sync from internal 'Domino' repo at 7ef83bdcd855bd3a837464e44d6de25f19775b5c
2019-03-28 15:35:49 -07:00