Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update vcpkg baseline to the October 2022 tag. #2400

Merged
merged 8 commits into from
Nov 9, 2022

Conversation

ahsonkhan
Copy link
Member

No description provided.

@ahsonkhan ahsonkhan added the EngSys This issue is impacting the engineering system. label Nov 7, 2022
@ahsonkhan ahsonkhan added this to the 2022-11 milestone Nov 7, 2022
@ahsonkhan ahsonkhan self-assigned this Nov 7, 2022
vcpkg.json Show resolved Hide resolved
Copy link
Member

@antkmsft antkmsft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd get ok from the IoT team, and also let's update the C++ repo to the same tag/commit SHA.

@ahsonkhan
Copy link
Member Author

ahsonkhan commented Nov 7, 2022

Looks like all the linux legs are failing (but only the linux ones) because the vcpkg version installed is different than the ones we need. I am wondering if it is a vcpkg caching issue, or possibly the vcpkg version pre-installed on the linux machines are out-dated and need to be fixed.

-- Running vcpkg install
Error: while checking out baseline from commit '94ce0dab56f4d8ba6bd631ba59ed682b02d45c46' at subpath 'versions/baseline.json':
error: git failed with exit code: (128).
fatal: path 'versions/baseline.json' exists on disk, but not in '94ce0dab56f4d8ba6bd631ba59ed682b02d45c46'

This may be fixed by updating vcpkg to the latest master via `git pull` or fetching commits via `git fetch`.

You can use the current commit as a baseline, which is:
    "builtin-baseline": "ce99c947b64ea3c0e274e18cc3035ca727681089"
-- Running vcpkg install - failed
CMake Error at /usr/local/share/vcpkg/scripts/buildsystems/vcpkg.cmake:868 (message):
  vcpkg install failed.  See logs for more information:
  /mnt/vss/_work/1/s/build/vcpkg-manifest-install.log
Call Stack (most recent call first):
  /usr/local/share/cmake-3.24/Modules/CMakeDetermineSystem.cmake:124 (include)
  CMakeLists.txt:40 (project)

cc @danieljurek, @weshaggard, @BillyONeal

@danewalton
Copy link
Member

danewalton commented Nov 7, 2022

I'd get ok from the IoT team, and also let's update the C++ repo to the same tag/commit SHA.

As long as the E2E tests pass and it compiles looks okay to me.

@weshaggard
Copy link
Member

@ahsonkhan I'm not an expert but based on the issue microsoft/vcpkg#23748 it looks like it might have to do something with the builtin-baseline sha.

@BillyONeal
Copy link
Contributor

Error: while checking out baseline from commit '94ce0dab56f4d8ba6bd631ba59ed682b02d45c46' at subpath 'versions/baseline.json':
error: git failed with exit code: (128).
fatal: path 'versions/baseline.json' exists on disk, but not in '94ce0dab56f4d8ba6bd631ba59ed682b02d45c46'

This probably means you're missing a fetch? microsoft/vcpkg@94ce0da exists.

@ahsonkhan
Copy link
Member Author

ahsonkhan commented Nov 8, 2022

@BillyONeal, I can try adding a vcpkg fetch step in our CI pipelines/machines, but I am wondering why this would only fail on linux. Does linux machines in AzDo come with an existing clone of vcpkg (or vcpkg pre-bootstrapped/installed)?
Otherwise, why would a fetch be required on a clean clone of a repo, to checkout an older commit sha?

Basically, where is this commit, ce99c947b64ea3c0e274e18cc3035ca727681089, coming from, in the error message:
microsoft/vcpkg@ce99c94

@BillyONeal
Copy link
Contributor

Otherwise, why would a fetch be required on a clean clone of a repo, to checkout an older commit sha?

I'm not sure, is this actually a clone? Unfortunately I don't know about how you invoke us and it isn't obvious from this change. Doing a which vcpkg may help check that we're getting the right copy?

I do observe that the commit you're explicitly trying to checkout is older than the baseline you're trying to use, so there may be versions referenced by that baseline that are unreachable by the version database in use?

@ahsonkhan
Copy link
Member Author

I do observe that the commit you're explicitly trying to checkout is older than the baseline you're trying to use

Really?
The commit sha I am checking out should be identical to the baseline. I am using the released tag:
94ce0dab56f4d8ba6bd631ba59ed682b02d45c46 (tags/2022.10.19)
https://github.com/microsoft/vcpkg/releases/tag/2022.10.19

@ahsonkhan
Copy link
Member Author

/azp run c - client - tests

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@ahsonkhan
Copy link
Member Author

/azp run c - client - tests

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@ahsonkhan
Copy link
Member Author

Fallout issues discovered from this work:
#2403
#2404

eng/scripts/vcpkg.ps1 Outdated Show resolved Hide resolved
eng/vcpkg-commit.txt Show resolved Hide resolved
@ahsonkhan
Copy link
Member Author

Based on recommendation from Billy, we decided to avoid using VCPKG_ROOT or a "system-level" vcpkg repo, and instead use a repo-specific/local copy of vcpkg. This way we don't rely on the pre-installed version that happens to come with the build machines.

@ahsonkhan ahsonkhan merged commit 25f8096 into Azure:main Nov 9, 2022
@ahsonkhan ahsonkhan deleted the UpdateVcpkg branch November 9, 2022 00:30
@antkmsft
Copy link
Member

antkmsft commented Nov 9, 2022

Thank you @ahsonkhan! Can you please make a PR to update the C++ repo to the same commit SHA?

@ahsonkhan
Copy link
Member Author

Done in Azure/azure-sdk-for-cpp#4100

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
EngSys This issue is impacting the engineering system.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants