127 Commits

Author SHA1 Message Date
Kai Pastor
827a54c404
[ci] Don't emit warnings for absence of failure logs (#20316)
* No warning for absence of failure logs

* Update condition for osx and linux

Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2021-09-28 14:00:33 -07:00
Billy O'Neal
09980780d8
[ci] Move formatting and doc checks into x86-windows (#20402)
* [ci] Move formatting and doc checks into x86-windows to avoid burning a whole job for that 1 run, don't run file lists generation in PRs.

* Deduplicate x86-windows and restore PR file lists, as requested/suggested by @dg0yt

* More quotes

Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com>

Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com>
2021-09-28 13:51:42 -07:00
Billy O'Neal
93a8320399
Back out "cascades" enforcement because it caused too many stealth merge conflicts. (#20181)
Mostly reverts https://github.com/microsoft/vcpkg/pull/20140

See https://github.com/microsoft/vcpkg/discussions/20180 for further discussion.
2021-09-15 11:39:39 -07:00
Billy O'Neal
5395ad9a4f
Add "cascades" enforcement (#20140)
* Add "cascades" enforcement as requested by https://github.com/microsoft/vcpkg/pull/20074#issuecomment-916565430

* Add counts.

* Fix arm-uwp count.

* Update counts.

* Update counts
2021-09-14 17:46:38 -07:00
Billy O'Neal
c26477297c
Update pwsh to 7.1.14, separate image minting from vmss minting, and update VMs. (#20064)
* Update Powershell-Core to 7.1.4.

* Add deployment of .NET 4.7.2 targeting pack, extracted from https://github.com/microsoft/vcpkg/pull/19320

* Separate image minting from vmss minting.

* Update pools.

* Fix image minting typo on Windows.
2021-09-11 13:43:19 -07:00
Billy O'Neal
f78c96f706
Decouple the storage account used for binary caching from the images. (#19912)
* Decouple the storage account used for binary caching from the images.

We are being forced to change infrastructure somewhat more frequently than we would like, so change the binary caches to use a shared storage account like we already use for asset caching.

* blob blob blob

* Add quotes

* Avoid name stomping.
2021-09-03 00:02:29 -07:00
Billy O'Neal
e22f9d7d70
Update VMs for Patch Tuesday, 2021-08-11 (#19508)
* Deploy SDKs with full features first to ensure we get Debugging Tools for Windows.

* Update VMs for Patch Tuesday, 2021-08-11
2021-08-13 16:12:24 -07:00
nicole mazzuca
ff190a561a
[macos ci] update 2021-07-27 (#19207)
* update 2021-07-27

macOS -> 11.5.1, XCode -> 12.5.1

* update azure-pipelines

* update sha of macfuse

* change how macos-ci-base works

* fix build errors

* fix itpp:linux

* more fixes

* remove tab

* allow version changes in all the remove/rename-version patches

* fix libunistring for real

* robert CR
2021-08-04 13:27:40 -07:00
Billy O'Neal
6b6b1e3b0b
Avoid rmdir the downloads directory is nonexistent. (#19314) 2021-08-02 15:16:08 -07:00
Billy O'Neal
403c952a0c
Clean the downloads directory every CI run. (#19311)
Now that vcpkg has artifact caching, meaning downloading artifacts usually doesn't have to leave the datacenter, there's no need to potentially dirty different runs with leftover downloads from each other.

This resulted in some "impossible" results in https://github.com/microsoft/vcpkg/pull/18687 where a previous PR run accidentially downloaded the Windows version of nodejs to /mnt/vcpkg-ci/downloads/node-v14.17.4-linux-x64.tar.xz
2021-08-02 14:15:48 -07:00
Kai Pastor
e5fdfd3d36
Add AZP logging markup for versioning errors (#19104) 2021-07-28 12:15:10 -07:00
Billy O'Neal
b67fab9861
Do not emit 'PASSING, REMOVE FROM FAIL LIST' results when using vcpkg to test prerelease versions of MSVC++ (#19011) 2021-07-19 19:55:00 -07:00
Billy O'Neal
f698b0e8be
Change VM size to Standard_D32ds_v4. For some reason they are cheaper than D16 right now??? (#18953)
Remove no longer used "unstable" scaffolding.
Use ephemeral OS disks for better latency.
Add ability to change whether temp disks are used or explicitly provisioned disks are used; explicitly provisioned disks turned out to be more expensive than expected before.
Disable Windows Updates in the scale set because the machines are very short lived; working on a mechanism of patching the images instead.
2021-07-15 13:47:58 -07:00
Billy O'Neal
957d2024b8
Update to Ubuntu 20.04. (#18892)
* Update Ubuntu to 20.04.

* [tfhe] Disable -Wall -Werror

* [sophus] Disable -Werror.

* Fix typo in deployment of CUDA.

* Add libxxf86vm-dev for opensubdiv.

* [opensubdiv] Fix OpenCL search on Ubuntu 20.04, and document libxxf86vm-dev dependency

* [msgpack11] Disable -Werror.

* [qtwayland, qt5wayland] Add system library notice.

* Add python-is-python3 to unbreak tensorflow, v8, and others

* [graphqlparser] Remove directive rejected by Bison 3.5.1

* [ogdf] Mark as failing in ci.baseline.txt. Issue filed https://github.com/microsoft/vcpkg/issues/18936

* [bde] Mark failing in ci.baseline.txt, issue filed https://github.com/microsoft/vcpkg/issues/18937

* [soem] Patch out -Werror

* Update pool.
2021-07-14 12:46:05 -07:00
Billy O'Neal
7d169b467c
Update pool to get print spooler CVE fix. (#18891) 2021-07-10 16:47:55 -07:00
Billy Robert ONeal III
d2717c38db [vcpkg internal] Update compiler test scripts to use asset caching. 2021-06-30 00:51:32 -07:00
Billy O'Neal
75beef03d6
Update vcpkg tool to resolve leak of the asset cache token (#18720) 2021-06-29 13:47:39 -07:00
Billy Robert O'Neal III
b504547c13 [vcpkg-unstable] Update agent pool name 2021-06-24 09:53:27 -07:00
Billy O'Neal
2ed44b4546
Update VMs and pick up VS2019 16.10 (#18233)
* Cherry-pick https://github.com/microsoft/vcpkg/pull/15598

* Hook deploy-inteloneapi into create-vmss.ps1.

* Add script to resolve https://github.com/microsoft/vcpkg/issues/17521

* Move tls settings deployment to the front and respond to script triggering a reboot.

* Go back to provisioning an extra disk to workaround https://github.com/microsoft/vcpkg/issues/18379

* Disallow public access to blob storage and require TLS 1.2.

* Update Pools.

* Update tool to 2021-06-19

* [simage] Skip simage on uwp platforms as it appears broken by 16.10.

* [tensorflow-cc] Skip because changes in our MacOS hardware broke the port.
2021-06-22 19:16:04 -07:00
ras0219
8c497bb647
[vcpkg] Add experimental $X_VCPKG_ASSET_SOURCES for source caching (#13639)
* [vcpkg] Add experimental $VCPKG_X_READWRITE_MIRROR_URL_TEMPLATE for source caching

* [vcpkg] Use prerelease version for testing

* [docs] Add assetcaching.md

* Revert bootstrap changes

* [vcpkg_download_distfile] Deprecate SILENT_EXIT

* cmake_parse_arguments() always defines option arguments

* Adjust CI baseline

* [vcpkg_download_distfile] Address CR comments, restore ARIA2

* [CI] Add source caching to Linux and OSX CI passes

* [ci.baseline.txt] Skip chartdir on more platforms
2021-06-04 16:48:26 -07:00
Phoebe
117cf538f4
[vcpkg] Remove workaround in Ci pipeline (#18119) 2021-05-26 13:55:22 -07:00
nicole mazzuca
0e914ba681
[scripts-audit] Rollup 2021-05-21 (#18112)
* [scripts-audit] vcpkg_acquire_msys (#17687)

* [vcpkg.cmake] Change find_package function -> macro in order to shorten trace (#17997)

switch from function to macro

* [scripts-audit] z_vcpkg_apply_patches (#18013)

* [scripts-audit] z_vcpkg_escape_regex_control_characters (#18013)

* [scripts-audit] vcpkg_fail_port_install (#18054)

Note that this change allows existing failures;
it changes MATCHES to STREQUAL, meaning that
vcpkg_fail_port_install(ON_ARCH "arm") now succeeds on arm64;
this change in behavior is fine (IMO) since it strictly succeeds
when it used to fail.
2021-05-26 13:40:48 -07:00
Robert Schumacher
4e83da0887
[vcpkg] Update vcpkg tool version 2021-05-05 (#17689)
* [vcpkg] Update vcpkg tool version 2021-05-05

* [vcpkg] Hotfix bug in Microsoft/vcpkg-tool#34

* [vcpkg-ci] Ignore results from non-target triplets

* [protobuf] Fix regression introduced in #16904

* [vcpkg] Fix bug where 'staticcrt' was ignored

Co-authored-by: Robert Schumacher <ras0219@outlook.com>
2021-05-06 07:12:43 -07:00
nicole mazzuca
e6cabdece5
[ci] Update macOS to 11 (#17376)
* start 2021-04-16 process

Major new things:
* update to macOS Big Sur (11.*)
* switch from VirtualBox to Parallels due to ^ (and also ARM)

Minor new things:
* update from xcode CLT 12 to 12.4

This PR includes new stuff for creating the base box for parallels.
Still to do: using the new box type.

* update the vagrantfile stuff

* link the CI to the new version

* modify how macOS boxes are made

the Vagrantfile for the final VM will only download the azure pipeline stuff

this allows us to keep the versions of brew applications stable

* fix cpus and memory

* add vagrant plugins to installables

* Skip cppgraphqlgen ICE.

* [sdformat6] Remove unneeded include(FindBoost) which causes problems when the system cmake version doesn't match the one deployed by vcpkg.

* switch to dmg for installing osxfuse/sshfs

* Set cores to 11 (leaving 1 thread for host)

Co-authored-by: Billy Robert ONeal III <bion@microsoft.com>
2021-04-29 07:39:04 -07:00
Billy O'Neal
a9b27ed5df
Update VMs, CMake to 3.20.1, CUDA to 11.3, and pwsh to 7.1.3 (#17331)
* Update to CUDA 11.3 on Windows.

* Update PowerShell to 7.1.3.

* Update CUDA to 11.3 on Linux.

* "Explode" VM provisioning scripts for more consistent feedback during deploy. This resolves the deployment script often hanging with no feedback as to why.

* [libdatachannel] Fix use of deprecated result_type typedef.

Submitted upstream as https://github.com/paullouisageneau/libdatachannel/pull/413

* [libvpx] Get the libvpx outputs from the correct place.

(Perhaps VS2019 version 16.10 moved where these are placed? I've been defensive and left an attempt to find from the old location in place.)

* [chromaprint] Support implementations where lrintf is an intrinsic.

* Add provision-entire-image script.

* [cudnn] Disable download-on-the-fly due to licensing concerns.

* Add libnccl to Linux VMs.

* [wangle] Disable x64-windows due to an ICE.

* [cmake] Update cmake to 3.20.1 to avoid https://gitlab.kitware.com/cmake/cmake/-/issues/21571 race

* [libudis86] Fix passing a bogus working directory which fails on CMake 3.20.x

* [dartsim] Disable unit tests, examples, and tutorials, some of which have CMake authoring errors rejected by 3.20.1.

* Add thrust to the cuda installees.

* [tensorflow] Put .bzl in CURRENT_BUILDTREES_DIR to avoid running out of disk space in CI and to respect --clean-after-build.

* [dimcli] Skip port broken by changes in VS2019 project system.

* [upb] Disable an additional warning.

* [libhv] Fix typo DISABLE_PARALLEL => DISABLE_PARALLEL_CONFIGURE

* Update pools
2021-04-26 10:27:45 -07:00
ras0219
b5bb1511f0
[many ports] Apply host dependencies (#16479)
* [vcpkg] Add VCPKG_HOST_TRIPLET. Improve vcpkg.schema.json

* [many ports] Apply host dependencies

* [yasm-tool] Revert yasm-tool changes to split into PR #16478

* [many ports] Add versions

* [vcpkg.cmake] Revert change applied in other PR

* [boost-modular-build-helper] Merge from master

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2021-03-26 12:55:34 -07:00
Phoebe
02daf011f0
[Azure pipeline] Upload file list logs for unstable testing (#16492)
* [Azure pipeline] Upload file list logs for unstable testing

* Fix indentation
2021-03-10 14:05:57 -06:00
Billy O'Neal
aa60b7efa5
[vcpkg] Download vcpkg.exe rather than building it in bootstrap on Windows. (#15474)
This reduces bootstrap cost for Windows customers, resolving the issue initially submitted as #12502 .

The `toolsrc` tree was extracted to https://github.com/microsoft/vcpkg-tool. `bootstrap.sh` was changed to download the right source tarball, extract, and build it. This was chosen over the previous attempt, a submodule, over concerns of accidentally destroying people's local modifications.
2021-02-04 10:15:44 -08:00
nicole mazzuca
dc4d1b735a
[vcpkg] fix checking out git registry ports (#16009)
* [vcpkg] fix checking out git registry ports

* fix the new issues in builtinregistryentry

* fix tests

* fix tests boogaloo

* [vcpkg] Fix issue where baseline is requested for overlay during version resolution

* split BuiltinRegistryEntry into two types

Co-authored-by: Robert Schumacher <ras0219@outlook.com>
2021-02-03 10:03:44 -08:00
ras0219
5793c4bd9f
[vcpkg] Miscellaneous internal improvements extracted from #15424 (#15677)
* [vcpkg] Miscellaneous internal improvements extracted from #15424

* [vcpkg] CR comments

* [armadillo] Use vcpkg_from_git() to workaround gitlab missing archive

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2021-02-02 15:00:33 -08:00
nicole mazzuca
68a74950d0
[vcpkg] Rename port_versions to versions (#15784) 2021-01-21 09:53:22 -08:00
Billy O'Neal
4d136ef25f
[vcpkg] Add vcpkg_minimum_required as a replacement for VERSION.txt. (#15638) 2021-01-20 12:07:41 -08:00
ras0219
727347d0fb
[vcpkg-ci] Move version validation after CI build passes (#15686) 2021-01-16 15:54:44 -08:00
ras0219
4f8fb510ba
[vcpkg] Add initial versioning documentation (#15565)
* [vcpkg] Improve efficiency and tests of versioning

* [vcpkg] Add initial versioning documentation and rename x-default-baseline to builtin-baseline

* [vcpkg] Enable metrics for builtin-baseline & overrides

* [vcpkg] Address PR comments

* [vcpkg] Add support for  syntax in version>=

* [vcpkg] Remove port-version from dependency syntax

* [vcpkg] Address CR comment

* [vcpkg] Minor docs fixup
2021-01-15 12:35:48 -08:00
Victor Romero
f87c92e42c
Reorder CI checks (#15662)
* Reorder CI checks

* Modify error message on local port changes

* Modify error message on local port changes - pt.2
2021-01-14 22:43:13 -08:00
Victor Romero
f649f9a67e
[vcpkg] Add CI check for version files and update maintainer's guideline (#15655)
* Add CI check using dummy version files

* Fix ci test

* Update maintainer's guideline

* Point CI check to actual version files

* Remove --git-verify-trees

* Fix typo

* Fix more typoes

* Even more typos

* Even more typos
2021-01-14 21:29:15 -08:00
nicole mazzuca
a597134450
[vcpkg registries] Add git registries (#15054)
* [vcpkg registries] Add git registries support

* Add git registries support to the registries module of vcpkg.
* add e2e tests for git registries
* fix vcpkg.cmake for registries

* fix CRs, remove a thing

* better error messages

* Billy CRs

* fix Robert's CR comment

* I learned about `-c` today

* format

* fix baseline.json

* failing to find baseline is technically not a bug
2021-01-14 19:50:31 -08:00
Billy O'Neal
3f3d9a615a
[vcpkg] Fix incorrect handling of messages for permenantly disabled metrics. (#15636)
Fixes #15630
2021-01-14 08:41:53 -08:00
Billy O'Neal
8414e15973
[vcpkg] Use a tag file rather than conditional compilation to permanently disable metrics. (#15470) 2021-01-13 14:06:06 -08:00
Billy O'Neal
4da47f758f
[vcpkg] Add sources for TLS 1.2 downloader tool. (#15516) 2021-01-13 14:05:38 -08:00
Billy O'Neal
8598a3d67d
[vcpkg] Resolve macos host machines running out of disk space by reducing size and using fixed disks. (#15584) 2021-01-12 12:19:22 -08:00
ankurverma85
aa83f4bd2a
[vcpkg] Add x64-windows-static-md to pipeline (#15411)
* Add x64-windows-static-md to pipeline

* Update azure-pipelines.yml

* Update test-modified-ports.ps1

* Replicate skip/fail from x64-windows-static

* Add failures to ci.baseline

* Update ci.baseline.txt

* Update ci.baseline.txt

* Update ci.baseline.txt

* Update ci.baseline.txt

Co-authored-by: ankurv <ankurv@microsoft.com>
2021-01-08 11:55:31 -08:00
Victor Romero
2a42024b53
[vcpkg] Add commands to maintain and verify versions db integrity (#14999)
* [vcpkg] Add x-ci-verify-versions command

* Code cleanup

* Remove port version splitting from x-history

* Fix wrong message on success

* Parallelize versions file generator

* Use cpu_count()/2 to avoid crashes

* Check db SHA against local SHA

* Check baseline version with x-ci-verify-versions and make baseline generator much faster

* Implement x-add-version to update version db files

* Better checks for x-add-info and make x-ci-verify-versions silent on success

* Use find() instead of [] on maps

* Create version file if does not exist

* Allow redirection of ports/ and port_versions/

* add test ports

* WIP end-to-end tests

* Change pats in e2e tests

* Fix e2e args

* e2e once more

* Pass ersions feature flag to e2e

* Exit with code 1 if there are errors

* Files to test for failure cases

* Update test files

* Add test for x-add-version

* fix redirected ports in last test

* Add CI check (use dummy data)

* Add feature-flags=versions

* Ignore subdirectories inside ports

* Add --verify-git-trees switch

* [vcpkg] Fix build breaks

* [x-ci-verify-versions] PR comments

* [x-add-version] PR comments

* Fix merge conflicts

* Modify tests and pipeline

* Baselines should only have version-string

* Refactor x-add-version

* [vcpkg] Fix help message

* [vcpkg] Fix minor warnings

* `x-add-version --all` doesn't stop on first failure and reduced default verbosity

* [vcpkg] Fix default-baseline

* Load file instead of using paths provider

* Format

* Remove ci test

* Add fish port for testing

* Update version files

* Update fish port to cause SHA discrepancy

* Test for discrepancy between local SHA and declared SHA

* Missing = operator

* Check for error message since x-add-version exits with code 0

* Make x-add-version fail with non-zero exit code if not run with --all

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
Co-authored-by: Robert Schumacher <ras0219@outlook.com>
2021-01-07 18:04:11 -08:00
Robert Schumacher
6772fdd145
[vcpkg] Teach vcpkg install --no-build-missing (#15139)
* [vcpkg] Teach `vcpkg install` `--no-build-missing`

This switch causes failure to restore from cache to abort the build instead of performing a just-in-time build.

This is useful in complex CI systems where the build was expected to have been performed previously, such as via another pipeline.

* [vcpkg] Rename flag to require binary caching
2020-12-30 12:12:17 -08:00
Jack·Boos·Yu
8f8f7168ee
[cmake] update to 3.19.2 (#14716)
* [cmake] update to 3.19.0

* update vmss

* [cmake] update to 3.19.1

* [solid3] Fix configure error, fix static definition

* [flann] Add feature hdf5 and fix it

* [highfive] Fix dependency hdf5

* [simage] Fix configure error

* [aws-c-common] Fix configure error

* [cmake] Update to 3.19.2

* Revert changes about cmake bug

* [VMSS] Update cmake path on Windows

* [cmake] Update cmake hash

* [minc] Fix dependency hdf5

* [cmake] Update cmake package name and path on MacOS

Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2020-12-28 21:21:03 -08:00
Billy O'Neal
6d84d56cd5
Add testing with VS2015 and VS2017 compilers. (#15257)
* Add testing with VS2015 and VS2017 compilers.

* Apply Nicole CRs.
2020-12-28 17:51:22 -08:00
Billy O'Neal
e34cdd5c8f
Update MacOS Software (#15258) 2020-12-23 21:27:23 -08:00
Billy O'Neal
229f537c94
[opentracing] Update VMs 2020-12 (#15151)
* Add meson from https://github.com/microsoft/vcpkg/pull/12860/

* Add autoconf-archive from https://github.com/microsoft/vcpkg/pull/13081/

* Add kf5windowsystem libs from https://github.com/microsoft/vcpkg/pull/13467/

* Open the FTP and SFTP ports from https://github.com/microsoft/vcpkg/pull/14412/

* Add libxcb-util0-dev from https://github.com/microsoft/vcpkg/pull/14678/

* Add libasound2-dev from https://github.com/microsoft/vcpkg/pull/14774

* Remove no longer necessary apt-mark calls.

* Update nasm on Linux.

* Fix longstanding bug where Storage was publicly accessible and change to generate SAS token rather than File Share

* Delete no longer necessary azure storage firewall rules.

* Install the newer Windows SDK with the VS installer instead of manually.

* Install the VS2015 and VS2017 compilers.

* Update Powershell-Core to 7.1.0.

* Update source of WDK.

* Update pools.

* [opentracing] Repair arm64-windows failures caused by mojibake in `expected.hpp` and errors in opentracing-cpp's lint for arm64 where it thinks exceptions are disabled when they are enabled.

Fixes:
C:\Dev\vcpkg\buildtrees\opentracing\src\b67575dab0-0250653c81.clean\3rd_party\include\opentracing/expected/expected.hpp(1): warning C4828: The file contains a character starting at offset 0x4a77 that is illegal in the current source character set (codepage 65001).

Fixes:
D:\buildtrees\opentracing\src\b67575dab0-0250653c81.clean\include\opentracing/tracer.h:223:5: error: cannot use 'try' with exceptions disabled [clang-diagnostic-error]
    try {
    ^

* [mmloader] Patch out overrides of CMAKE_C_FLAGS and CMAKE_CXX_FLAGS that inserted /WX.

Note that this port sets /GS-, possibly because it may be for authoring shellcode.

* Bump storage API version to 2020-04-08.
2020-12-22 14:52:58 -08:00
nicole mazzuca
c898283a41
[vcpkg registries] support versions (#15114)
* [vcpkg registries] support versions

This PR merges the Registries changes and the versioning changes, so that one can use both at the same time.

There is one major difference between this PR and the RFC (#13590), which is that instead of version files looking like:

```json
[
  ...
]
```

version files look like:

```
{
  "versions": [
    ...
  ]
}
```

this is to support interop between this PR and existing demos and the like;
fixing this, along with perhaps renaming `port_versions` to `port-versions` should be done after this is merged,
should be a trivial change.
2020-12-21 15:40:21 -08:00
ras0219
9a81392e48
[vcpkg] VCPKG_ENV_PASSTHROUGH_UNTRACKED (#15115)
* [vcpkg] Add VCPKG_ENV_PASSTHROUGH_UNTRACKED

* [vcpkg] CR comments

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-12-17 11:35:08 -08:00