Comments (9)
The Gitlab CI pipeline runs under the system profile
I consider this broken, but you will find more tickets.
from vcpkg.
Registries cache location can be changed through X_VCPKG_REGISTRIES_CACHE
environment variable, just set it to the absolute path of your directory. This var is not documented, I'm not sure why.
You might also want to set VCPKG_DOWNLOADS
, X_VCPKG_ASSET_SOURCES
and VCPKG_DEFAULT_BINARY_CACHE
to make sure vcpkg doesn't use the %LocalAppData%
directory.
from vcpkg.
Directory does not exist: C:/Windows/System32/config/systemprofile/AppData/Local/vcpkg/registries/git-trees/88a7058fc7fa73a9c4c99cfcae9d79e2abf87a5a
This is not local binary cache. This is registry cache.
The probable reason it works for you in classic mode but not in manifest mode is because former uses built-in registry and latter uses git registry (set in your manifest).
from vcpkg.
Thank you for your help, @Osyotr. As I suspected, it was a misunderstanding on my part. Is there a way to change the default registry cache location?
from vcpkg.
The directory does exist, but vcpkg cannot build the port due to permission restrictions.
Which directory does exist?
C:\Users\%USERNAME%\AppData\Local\vcpkg\registries\git-trees\88a7058fc7fa73a9c4c99cfcae9d79e2abf87a5a
or C:/Windows/System32/config/systemprofile/AppData/Local/vcpkg/registries/git-trees/88a7058fc7fa73a9c4c99cfcae9d79e2abf87a5a
?
The later one seems very unusual to me and I highly doubt that vcpkg was able to put something in a subdirectory of System32
.
from vcpkg.
Surprisingly, the latter path does exist. The Gitlab CI pipeline runs under the system profile, and so %LOCALAPPDATA% expands to C:\Windows\System32\config\systemprofile\AppData\Local. Somehow, vcpkg is able to create that registry cache, but then it cannot access that cache when building the port.
The first path you list comes from my local tests outside of the CI pipeline (replace %USERNAME% with actual username) where I was trying to figure out a way to point vcpkg away from %LOCALAPPDATA%.
from vcpkg.
The Gitlab CI pipeline runs under the system profile
I consider this broken, but you will find more tickets.
Yeah, it's really not great how Gitlab runs pipelines under the system profile. I found several similar issues, but they all point to binary caching issues, which is what led me down that path. As Osyotr pointed out, though, this seems to be a registry cache issue. Ideally, vcpkg would provide some way for me to change the registry cache location, but I can't find any documentation to support that route.
from vcpkg.
As a workaround, I temporarily point $Env:LOCALAPPDATA
to a location with read/write permissions in my CI script. It's not pretty, but it does work.
Inspired by #12285
from vcpkg.
Registries cache location can be changed through
X_VCPKG_REGISTRIES_CACHE
environment variable, just set it to the absolute path of your directory. This var is not documented, I'm not sure why.
Thank you, @ypogribnyi, that worked!
from vcpkg.
Related Issues (20)
- [bde] supports windows platform
- [gdk-pixbuf] update to 2.42.12
- vcpkg install armadillo:x64-windows HOT 1
- [New Port Request] Aerospike client
- [gdal] cannot open file 'gdal_i.lib' HOT 3
- Powershell download fails behind proxy on windows: authentication not taken into account
- [brpc] update to <1.9.0>
- [libuv] update to <1.48.0>
- [libssh] update to <0.10.6> HOT 1
- Failed code compilation including CLI11.hpp HOT 2
- [poco] Build error due to inapplicable patch HOT 2
- [SDL2] CMake error in VSCode HOT 4
- [glib] Build error on x64-linux HOT 1
- [glib] fails with "BASE_DIRS is required" on Windows HOT 5
- [curl] with feature psl on windows static build failure HOT 6
- Cannot find boost after migration to manifest mode HOT 14
- Build of ANYTHING fails early on with "vcvarsall.bat returned 255" HOT 2
- [vtk] build failure: VTKM target missing HOT 2
- [qt] update to 6.7.1
- [protobuf] Build with -fPIC on Linux HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vcpkg.