Odwołanie do buforowania zasobów

Źródła

Parametr <rw> jest opcjonalny i typowy dla większości źródeł opisanych poniżej. Kontroluje uprawnienia dostępu dla określonego źródła i akceptuje wartości read, writelub readwrite (domyślnie ).read

Użyj backtick ('), aby użyć znaków ucieczki wewnątrz ciągów źródłowych.

clear

Składnia: clear

Usuwa wszystkie poprzednie źródła w ciągu konfiguracji. Przydatne w połączeniu z parametrem , --x-asset-sources aby wyłączyć wszystkie źródła buforowania zasobów pochodzące ze zmiennej środowiskowej X_VCPKG_ASSET_SOURCES .

Azure Blob Storage (x-azurl)

Składnia:

  1. x-azurl,<url>[,<sas>[,<rw>]]
  2. x-azurl,file://<network-location>[,,<rw>]

<url>:Wymagane. Adres URL połączenia usługi Azure Blob Storage. Musi zawierać ścieżkę kontenera i końcowy /ciąg .

<sas>:Opcjonalne. W przypadku punktów końcowych korzystających z weryfikacji sygnatury dostępu współdzielonego użyj tego parametru, aby podać wygenerowaną sygnaturę dostępu współdzielonego.

Punkty końcowe spoza platformy Azure mogą zapewnić token dostępu przy użyciu tego parametru. Tak długo, jak mogą odpowiadać na żądania GET i PUT formularza <url>/<sha512>?<sas>.

Na przykład źródło skonfigurowane w następujący sposób: azurl,https://mydomain.com/vcpkg/,token=abc123,readwrite, generuje żądanie w formularzu: https://mydomain.com/vcpkg/<sha512>?token=abc123.

Alternatywnie możesz użyć lokalizacji systemu plików jako punktu końcowego przy użyciu x-azurl,file://<filesystem-location>[,,<rw>] wzorca.

Na przykład x-azurl,file:///Z:/vcpkg/assetcache/,,readwrite konfiguruje pamięć podręczną w folderze sieciowym Z:/ .

Przepływ pracy tego źródła zasobów to:

  1. Próba odczytania z dublowania
  2. (Jeśli krok 1 zakończył się niepowodzeniem) Odczyt z oryginalnego adresu URL
  3. (Jeśli krok 2 zakończył się pomyślnie) Zapisywanie z powrotem do dublowania

Możesz włączyć/wyłączyć kroki 1 i 3 za pośrednictwem specyfikatora <rw> , a krok 2 można wyłączyć za pośrednictwem x-block-origin poniższego.

Aby uzyskać więcej informacji na temat konfigurowania x-azurl źródła, zobacz również dokumentację buforowania binarnego dla usługi Azure Blob Storage.

x-block-origin

Składnia: x-block-origin

Wyłącza powrót do oryginalnego adresu URL pobierania, gdy element zawartości nie zostanie znaleziony w żadnym ze skonfigurowanych źródeł.

x-script

Składnia: x-script,<template>

Wysyła do zewnętrznego narzędzia w celu pobrania zasobu.

<template>:Wymagane. Szablon polecenia wykonywany przez narzędzie vcpkg w celu uzyskania zasobu. Na przykład: x-script,curl -L {url} --output {dst} konfiguruje narzędzie vcpkg do wykonywania curl i podawania {url} parametrów i {dst} .

Logika przywracania i przekazywania zasobów oraz nawiązywania połączenia z punktem końcowym magazynu pamięci podręcznej odpowiada za polecenie podane w szablonie.

Narzędzie vcpkg zastąpi te argumenty podczas wykonywania polecenia:

  • {url}: oryginalny adres URL pobierania elementu zawartości.
  • {sha512}: oczekiwany algorytm SHA512 pobranego elementu zawartości.
  • {dst}: lokalizacja, w której jest oczekiwany pobrany zasób.

Polecenie szablonu jest uruchamiane w środowisku kompilacji programu vcpkg; Oznacza to, że niektóre zmienne środowiskowe, takie jak PATH , mogą być modyfikowane przez trojaczki.

Następny krok