免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

掌握 mise HTTP Backend:從直鏈 URL 安裝任意二進(jìn)制、腳本與歸檔的完整指南

掌握 mise HTTP Backend:從直鏈 URL 安裝任意二進(jìn)制、腳本與歸檔的完整指南 掌握 mise HTTP Backend從直鏈 URL 安裝任意二進(jìn)制、腳本與歸檔的完整指南【免費(fèi)下載鏈接】misedev tools, env vars, task runner項(xiàng)目地址: https://gitcode.com/GitHub_Trending/mi/mise導(dǎo)讀httpbackend 是 mise 中最通用的一類工具后端它不依賴 GitHub Releases、npm、asdf 插件等任何發(fā)布渠道直接從你指定的下載 URL 拉取二進(jìn)制、腳本或歸檔并安裝。本指南圍繞 docs/dev-tools/backends/http.md 展開覆蓋從mise use http:...快速接入、URL 模板變量、平臺(tái)差異配置、校驗(yàn)和/大小校驗(yàn)、版本發(fā)現(xiàn)mise ls-remote到http-tarballs內(nèi)容緩存與鎖文件的完整鏈路。讀完本文你將能為任何只有下載鏈接、沒有現(xiàn)成發(fā)布后端的工具在 mise 中建立可校驗(yàn)、可跨平臺(tái)、可復(fù)現(xiàn)的安裝方案并理解其底層實(shí)現(xiàn)src/backend/http.rs。一、HTTP Backend 是什么何時(shí)使用httpbackend 通過直接下載 URL安裝二進(jìn)制、腳本或歸檔。適用場(chǎng)景非常明確發(fā)布方?jīng)]有提供 mise 支持的發(fā)布后端沒有 GitHub Releases、npm 包、asdf 插件等你自建制品倉庫需要把內(nèi)部工件接入 mise你希望完全控制從哪里下載、校驗(yàn)什么。核心原則文檔原文要求優(yōu)先使用 HTTPS URL并記錄期望的校驗(yàn)和checksum。該后端在源碼中對(duì)應(yīng) src/backend/http.rs 中的HttpBackend結(jié)構(gòu)體其get_type()返回BackendType::Httpsrc/backend/http.rs#L1091-L1093。你可以通過mise use http:工具名[...]版本或直接在mise.toml的[tools]中聲明來使用它。二、快速上手安裝與聲明2.1 命令行方式把示例 URL 換成你平臺(tái)的制品然后在當(dāng)前項(xiàng)目安裝mise use http:my-tool[urlhttps://example.com/releases/my-tool-v1.0.0.tar.gz]1.0.0 mise exec -- my-tool --version執(zhí)行后URL 與版本會(huì)被記錄進(jìn)項(xiàng)目的mise.toml。加-g可安裝為全局工具[tools] http:my-tool { version 1.0.0, url https://example.com/releases/my-tool-v1.0.0.tar.gz }2.2 固定 URL 與latest的邊界關(guān)鍵限制固定 URL 需要一個(gè)具體的版本標(biāo)簽。latest不會(huì)從下載 URL 自動(dòng)發(fā)現(xiàn)新版本——如果你需要mise ls-remote與自動(dòng)版本選擇必須配置version_list_url版本列表 URL。另外僅更新版本號(hào)不會(huì)改變靜態(tài) URL。對(duì)隨版本變化的制品請(qǐng)使用 URL 模板見下一節(jié)例如https://example.com/releases/my-tool-v{{version}}.tar.gz。2.3 支持的語法HTTP backend 的完整工具引用語法為帶 URL 參數(shù)的 HTTP 語法http:my-tool[urlhttps://example.com/releases/my-tool-v1.0.0.tar.gz]1.0.0三、核心選項(xiàng)url與模板變量httpbackend 的選項(xiàng)放在mise.toml的[tools]中參見 docs/dev-tools/index.md#Tool-Options 的通用說明。其中url是必填項(xiàng)——源碼中缺失 URL 時(shí)會(huì)直接報(bào)錯(cuò)Http backend requires url option或提示當(dāng)前平臺(tái)缺少platforms.key.urlsrc/backend/http.rs#L260-L272。3.1 靜態(tài) URL 與模板 URL[tools] http:my-tool { version 1.0.0, url https://example.com/releases/my-tool-v{{version}}.tar.gz }也可使用不含模板的靜態(tài) URL[tools] http:my-tool { version 1.0.0, url https://example.com/releases/my-tool-v1.0.0.tar.gz }3.2 可用模板變量URL 模板使用雙大括號(hào)語法如{{version}}變量說明version工具版本os()操作系統(tǒng)macos、linux或windowsarch()架構(gòu)x64或arm64os_family()OS 家族unix或windowsos()與arch()還支持重映射remapping用于處理命名約定不同的工具。例如 HashiCorp 系工具使用darwin而非macos、amd64而非x64[tools] # HashiCorp 工具使用 darwin 代替 macosamd64 代替 x64 http:sentinel { version 0.26.3, url https://releases.hashicorp.com/sentinel/{{version}}/sentinel_{{version}}_{{os(macosdarwin)}}_{{arch(x64amd64)}}.zip, }上述配置會(huì)生成如下 URLmacOS arm64sentinel_0.26.3_darwin_arm64.zipmacOS x64sentinel_0.26.3_darwin_amd64.zipLinux x64sentinel_0.26.3_linux_amd64.zip這正是倉庫中 registry/sentinel.toml 真實(shí)使用的模板寫法。源碼中template_string_for_target還會(huì)在mise lock時(shí)**為目標(biāo)平臺(tái)而非宿主機(jī)**渲染os()/arch()其單元測(cè)試直接斷言了 Linux/Windows 下的渲染結(jié)果src/backend/http.rs#L1431-L1446。3.3 平臺(tái)專屬 URLtable 形式當(dāng)不同平臺(tái)需要不同下載地址時(shí)使用platforms表[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64.tar.gz } macos-arm64 { url https://example.com/releases/my-tool-v1.0.0-macos-arm64.tar.gz } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64.tar.gz }平臺(tái)鍵的兼容性說明macos與darwin、x64與amd64均可作為平臺(tái)鍵文檔與示例優(yōu)先使用macos和x64但所有變體都被接受OS/架構(gòu)遵循 mise 約定操作系統(tǒng)為linux、macos、windows架構(gòu)為x64、arm64如果你寫了類似darwin-aarch64的筆誤mise 會(huì)嘗試?yán)斫饽愕囊鈭D并做正確的事。四、完整性校驗(yàn)checksum、checksum_url、checksum_expr 與 size4.1checksum直接聲明從可信來源提供完整期望摘要。下面的值是占位符安裝前必須替換[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST提示也可以不在此處聲明校驗(yàn)和改用 mise.lock 統(tǒng)一管理校驗(yàn)和。安裝時(shí)verify_artifact會(huì)對(duì)下載文件執(zhí)行校驗(yàn)src/backend/http.rs#L1246-L1250開啟 lockfile 時(shí)verify_checksum還會(huì)校驗(yàn)鎖文件中記錄的 checksum 與 size不匹配會(huì)直接報(bào)錯(cuò)src/backend/http.rs#L916-L923。4.2 平臺(tái)專屬校驗(yàn)和[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64.tar.gz, checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, } macos-arm64 { url https://example.com/releases/my-tool-v1.0.0-macos-arm64.tar.gz, checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64.tar.gz, checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, }4.3checksum_url從發(fā)布方獲取校驗(yàn)和checksum_url指向一個(gè)已發(fā)布的校驗(yàn)和來源。設(shè)置后mise lock會(huì)為每個(gè)目標(biāo)平臺(tái)解析校驗(yàn)和——包括當(dāng)前運(yùn)行平臺(tái)之外的其他平臺(tái)——且無需下載制品。這意味著單臺(tái)機(jī)器即可產(chǎn)出完整的跨平臺(tái) lockfile。checksum_url本身也是模板支持{{ version }}、{{ os() }}、{{ arch() }}也可通過platforms.key.checksum_url按平臺(tái)設(shè)置。它可以指向單個(gè)校驗(yàn)和文件如artifact.sha256內(nèi)容可以是純哈希也可以是hash filenameSHASUMS 風(fēng)格文件列出hash filename覆蓋多平臺(tái)按制品文件名匹配行清單文件如 JSON此時(shí)需配合下面的checksum_expr。對(duì)于單個(gè)文件與 SHASUMS 文件算法根據(jù)文件名自動(dòng)檢測(cè)*.sha512、SHA512SUMS、*.md5、*.b3默認(rèn) sha256# 單個(gè)校驗(yàn)和文件每個(gè)制品一個(gè) [tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-{{ version }}-{{ os() }}-{{ arch() }}.tar.gz checksum_url https://example.com/releases/my-tool-{{ version }}-{{ os() }}-{{ arch() }}.tar.gz.sha256 # SHASUMS一個(gè)文件列出所有平臺(tái) [tools.http:other-tool] version 1.0.0 url https://example.com/{{ version }}/other_{{ version }}_{{ os(macosdarwin) }}_{{ arch(x64amd64) }}.zip checksum_url https://example.com/{{ version }}/other_{{ version }}_SHASUMS源碼中的解析順序是平臺(tái)直接聲明的checksum→checksum_expr清單 → SHASUMS 列表按文件名匹配→ 單個(gè)校驗(yàn)和文件src/backend/http.rs#L973-L1032。值得注意的是若 SHASUMS 列表存在但沒有匹配當(dāng)前制品的條目mise 不會(huì)退化為取第一個(gè)哈希而是將該平臺(tái)標(biāo)記為未解析避免錯(cuò)誤鎖定其他平臺(tái)的校驗(yàn)和。4.4checksum_expr從清單中提取當(dāng)校驗(yàn)和位于清單而非純校驗(yàn)和文件中時(shí)用checksum_expr提取。從checksum_url獲取的清單正文會(huì)用 expr-lang 表達(dá)式求值可用變量body原始清單、version、os、arch、url目標(biāo)平臺(tái)的已解析制品 URL、filename。表達(dá)式必須求值為限定符形式的algo:hash字符串如sha256:hash、sha512:hash。算法前綴需在表達(dá)式內(nèi)構(gòu)造算法固定時(shí)拼接字面量sha256: entry.hash算法隨清單變化時(shí)讀取entry.algo : entry.hash[tools.http:my-tool] version 1.10.0 checksum_url https://example.com/versions.json # 匹配 url 等于已解析制品 URL 的條目返回 sha256:hash checksum_expr sha256: filter(fromJSON(body)[version ].files, { #.url url })[0].sha256 [tools.http:my-tool.platforms] linux-x64 { url https://example.com/my-tool-{{ version }}-linux-x86_64.tar.gz } macos-arm64 { url https://example.com/my-tool-{{ version }}-macos-arm64.tar.gz }expr-lang 的兩個(gè)陷阱文檔明確提示謂詞占位符必須寫成{ #... }——{后必須有一個(gè)空格因?yàn)閧#是 Tera 注釋定界符要用運(yùn)行時(shí)值索引 map必須強(qiáng)制求值[version ]——裸寫[version]會(huì)被當(dāng)作字面鍵名version。4.5size字節(jié)數(shù)檢查檢查期望字節(jié)數(shù)。下面的數(shù)字只是語法示例請(qǐng)使用真實(shí)制品大小。size 檢查不能替代校驗(yàn)和[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz size 12345678平臺(tái)專屬 size 示例[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64.tar.gz, size 12345678, } macos-arm64 { url https://example.com/releases/my-tool-v1.0.0-macos-arm64.tar.gz, size 9876543, } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64.tar.gz, size 11111111, }在源碼中size 校驗(yàn)位于verify_checksum鎖文件記錄了期望 size 時(shí)逐字節(jié)比對(duì)不一致會(huì)報(bào)Size mismatch錯(cuò)誤src/backend/http.rs#L915-L923。五、歸檔與二進(jìn)制處理strip_components、bin、rename_exe、format5.1strip_components解壓歸檔時(shí)剝離的目錄層級(jí)數(shù)[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz strip_components 1注意當(dāng)strip_components與bin_path都未設(shè)置時(shí)若解壓后的歸檔在根層恰好只有一個(gè)目錄且沒有文件mise 會(huì)自動(dòng)應(yīng)用strip_components 1。這在 ripgrep 這類把二進(jìn)制打包在版本目錄中的工具上很常見如ripgrep-14.1.0-x86_64-unknown-linux-musl/rg。自動(dòng)檢測(cè)確保二進(jìn)制被直接放到 mise 期望的安裝路徑下。該自動(dòng)檢測(cè)邏輯在effective_strip_components中實(shí)現(xiàn)僅當(dāng)未顯式配置、非壓縮二進(jìn)制、非 raw 文件、未設(shè)置bin_path且should_strip_components判定為單目錄歸檔時(shí)才生效src/backend/http.rs#L390-L416。5.2bin重命名單個(gè)下載文件下載的單個(gè)二進(jìn)制文件名帶平臺(tái)后綴時(shí)可用bin重命名[tools.http:docker-compose] version 2.29.1 url https://github.com/docker/compose/releases/download/v{{ version }}/docker-compose-linux-x86_64 bin docker-compose # 從 docker-compose-linux-x86_64 重命名為 docker-compose提示下載單個(gè)二進(jìn)制非歸檔時(shí)mise 會(huì)自動(dòng)去掉文件名中的 OS/arch 后綴。例如docker-compose-linux-x86_64會(huì)自動(dòng)變成docker-compose。只有需要特定自定義名稱時(shí)才用bin。5.3rename_exe重命名歸檔內(nèi)的可執(zhí)行文件歸檔內(nèi)的可執(zhí)行文件帶平臺(tái)名、或安裝 kubectl 插件需要特定命名時(shí)使用。mise 會(huì)在解壓目錄或設(shè)置了bin_path時(shí)的該目錄中查找第一個(gè)可執(zhí)行文件并重命名為指定名稱[tools.http:openunison-cli] version 1.0.0 url https://nexus.tremolo.io/repository/openunison-cli/openunison-cli-v{{version}}-linux.zip rename_exe kubectl-openunison-cli # 重命名解壓出的二進(jìn)制以用作 kubectl 插件一次重命名多個(gè)二進(jìn)制時(shí)使用表形式——每個(gè)鍵是源名精確文件名或 glob值是新名稱[tools.http:mytool] version 1.0.0 url https://example.com/mytool-v{{version}}-linux.zip rename_exe { mytool-* mytool, myhelper-* myhelper }建議bin用于重命名單個(gè)二進(jìn)制下載rename_exe用于重命名歸檔內(nèi)的可執(zhí)行文件。源碼實(shí)現(xiàn)上rename_exe的標(biāo)量形式與表形式都會(huì)參與緩存鍵生成表形式被哈希為安全 token避免路徑分隔符、Windows 非法字符等進(jìn)入緩存目錄名并且bin/rename_exe都做了路徑穿越防護(hù)——bin../evil、rename_exea/b會(huì)被拒絕src/backend/http.rs#L1755-L1790。5.4format顯式指定歸檔格式當(dāng) URL 沒有文件擴(kuò)展名或擴(kuò)展名不正確時(shí)顯式聲明格式[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0 format tar.xz # 顯式指定格式說明未指定format時(shí)mise 會(huì)從HTTP 重定向后的最終 URL自動(dòng)檢測(cè)格式再回退到配置的 URL。這使得無擴(kuò)展名的下載端點(diǎn)可以重定向到.tar.gz等歸檔。顯式format優(yōu)先級(jí)最高當(dāng)兩個(gè) URL 都沒有可用擴(kuò)展名、或需要覆蓋檢測(cè)結(jié)果時(shí)使用它。平臺(tái)專屬格式[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64, format tar.xz, } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64, format tar.gz, } windows-x64 { url https://example.com/releases/my-tool-v1.0.0-windows-x64, format zip, }從源碼看格式檢測(cè)還會(huì)影響緩存身份顯式format或重定向后格式都會(huì)以format_fmt形式進(jìn)入緩存鍵避免內(nèi)容相同但處理方式不同的制品共享緩存條目src/backend/http.rs#L83-L127、src/backend/http.rs#L1678-L1703。5.5 單文件、壓縮二進(jìn)制與歸檔的分類處理extract_artifact根據(jù)檢測(cè)結(jié)果走三條路徑src/backend/http.rs#L610-L628壓縮二進(jìn)制.gz、.xz、.bz2、.zst解壓為單個(gè)文件并chmod xextract_compressed_binaryraw 文件未壓縮直接復(fù)制為可執(zhí)行文件Windows 上若設(shè)置了windows_script_interpreter還會(huì)生成.cmd啟動(dòng)器extract_raw_file歸檔tar/zip 等按strip_components解壓隨后處理rename_exeextract_archive。六、二進(jìn)制查找bin_path與查找順序bin_path指定解壓歸檔內(nèi)包含二進(jìn)制的目錄或下載文件應(yīng)放置的位置支持{{version}}模板。其路徑相對(duì)解壓后的安裝根目錄設(shè)置bin_path會(huì)禁用自動(dòng)根目錄剝離。對(duì)于形如my-tool-1.0.0/bin/my-tool的歸檔要么顯式剝離外層目錄配合strip_components 1要么保留結(jié)構(gòu)并用bin_path my-tool-{{ version }}/bin[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz strip_components 1 bin_path bin二進(jìn)制路徑查找順序?qū)?yīng)list_bin_paths實(shí)現(xiàn)src/backend/http.rs#L1321-L1372設(shè)置了bin_path直接使用該目錄未設(shè)置在安裝路徑下查找bin/目錄無bin/目錄搜索子目錄中的bin/目錄找不到任何bin/目錄使用解壓目錄根。七、版本發(fā)現(xiàn)mise ls-remote的三種提取方式固定 URL 無法自動(dòng)發(fā)現(xiàn)版本。配置version_list_url后mise ls-remote即可列出版本版本解析如version latest也會(huì)基于該列表工作。源碼中fetch_versions負(fù)責(zé)抓取并交給parse_version_list解析src/backend/http.rs#L936-L950、src/backend/version_list.rs#L46-L127。7.1version_list_url數(shù)據(jù)源[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v{{version}}.tar.gz version_list_url https://example.com/releases/versions.txt版本列表 URL 可返回以下任意格式自動(dòng)識(shí)別無需額外配置純文本單個(gè)版本號(hào)如2.0.53按行分隔每行一個(gè)版本JSON 字符串?dāng)?shù)組[1.0.0, 1.1.0, 2.0.0]JSON 對(duì)象數(shù)組[{version: 1.0.0}, {tag_name: v2.0.0}]含 versions 數(shù)組的 JSON 對(duì)象{versions: [1.0.0, 2.0.0]}v前綴會(huì)被自動(dòng)剝離。mise 保留版本源返回的順序默認(rèn)將最后一個(gè)匹配條目視為最新。若源返回的語義版本順序不同可設(shè)version_order semver讓mise ls-remote按語義優(yōu)先級(jí)排序與選擇。完整的排序契約見 docs/dev-tools/index.md 的 Version ordering 一節(jié)。例如 GitHub releases API 返回最新在前把它當(dāng)作 HTTP 版本源時(shí)建議開啟語義排序[tools.http:my-tool] version latest version_order semver url https://example.com/my-tool-{{ version }}.tar.gz version_list_url https://api.github.com/repos/owner/my-tool/releases version_json_path .[].tag_name7.2version_regex從任意文本提取用正則從響應(yīng)中提取版本第一個(gè)捕獲組作為版本沒有捕獲組時(shí)使用整個(gè)匹配[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v{{version}}.tar.gz version_list_url https://example.com/releases/ version_regex my-tool-v(\d\.\d\.\d)\.tar\.gz提供正則時(shí)mise 會(huì)繞過get_text的 HTML 拒絕檢查直接獲取原始內(nèi)容因?yàn)檎齽t常被用于解析 HTML 目錄列表見 src/backend/version_list.rs#L30-L38。7.3version_json_pathjq 風(fēng)格 JSON 路徑用 jq 風(fēng)格的路徑表達(dá)式從 JSON 響應(yīng)提取版本[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v{{version}}.tar.gz version_list_url https://api.example.com/releases version_json_path .[].tag_name支持的路徑表達(dá)式.— 根值.[]— 遍歷數(shù)組元素.[].field— 提取每個(gè)數(shù)組元素的字段.field— 提取對(duì)象字段.field[]— 遍歷字段中的數(shù)組.field.subfield— 嵌套字段訪問.data.versions[]— 復(fù)雜嵌套路徑.[?fieldvalue]— 過濾字段等于指定值的數(shù)組元素常用示例# GitHub releases API 格式 version_json_path .[].tag_name# 嵌套 versions 數(shù)組 version_json_path .data.versions[]# Release info 對(duì)象 version_json_path .releases[].info.version# 只過濾穩(wěn)定版例如 Flutter version_json_path .releases[?channelstable].version[?fieldvalue]過濾語法在提取前過濾 JSON 數(shù)組非常適合只取多發(fā)布通道stable/beta/dev中的某一個(gè)。倉庫測(cè)試覆蓋了 Flutter 風(fēng)格 JSON 的通道過濾src/backend/version_list.rs#L342-L359。7.4version_exprexpr-lang 終極武器用 expr-lang 表達(dá)式提取版本是復(fù)雜場(chǎng)景下最靈活的方式。表達(dá)式接收響應(yīng)體為body變量應(yīng)返回版本字符串?dāng)?shù)組。它還接收versions變量——即version_regex或version_json_path已提取的值無前置提取時(shí)為空數(shù)組[tools.http:my-tool] version latest url https://example.com/releases/my-tool-v{{ version }}.tar.gz version_list_url https://example.com/versions.txt version_expr split(body, \n)更多表達(dá)式示例# 按行切分并過濾空行 version_expr filter(split(body, \n), # ! )# 解析 JSON 并提取對(duì)象鍵適用于 HashiCorp 風(fēng)格 JSON # 例如 {versions: {1.0.0: {}, 2.0.0: {}}} version_expr keys(fromJSON(body).versions)# 用 mise 的版本感知比較器排序 version_expr fromJSON(body) | map({ trimPrefix(#.tag_name, v) }) | sortVersions()expr-lang 內(nèi)置函數(shù)包括fromJSON(string)解析 JSON 字符串為值toJSON(value)把值轉(zhuǎn)為 JSON 字符串keys(map)取對(duì)象/map 的鍵數(shù)組values(map)取對(duì)象/map 的值數(shù)組len(value)取字符串/數(shù)組/map 的長度filter(array, predicate)與map(array, predicate)過濾或變換數(shù)組sort(array)與reverse(array)按字典序重排int(value)、float(value)、string(value)類型轉(zhuǎn)換mise 額外提供sortVersions(array)做版本感知排序基于versions::Versioning實(shí)現(xiàn)見 src/backend/version_list.rs#L146-L165。發(fā)現(xiàn)版本符合語義版本時(shí)優(yōu)先用version_order semver只有表達(dá)式自身需要排序中間值時(shí)用sortVersions()。version_expr是最后一步提取其結(jié)果即為版本列表。用versions變量對(duì)version_regex或version_json_path的結(jié)果做后處理。version_list_url、version_regex、version_json_path、version_expr這四個(gè)選項(xiàng)在源碼中被標(biāo)記為遠(yuǎn)程版本列表工具選項(xiàng)remote_version_listing_tool_option_keyssrc/backend/http.rs#L1103-L1110即只有它們參與mise ls-remote的數(shù)據(jù)獲取。八、緩存行為http-tarballs內(nèi)容緩存HTTP backend 會(huì)緩存下載與解壓結(jié)果節(jié)省磁盤并加速安裝。8.1 緩存位置普通用戶安裝時(shí)下載并解壓的文件緩存在$MISE_DATA_DIR/http-tarballs/而不是為每個(gè)工具安裝單獨(dú)存放。默認(rèn)路徑Linux~/.local/share/mise/http-tarballs/macOS~/.local/share/mise/http-tarballs/顯式的mise install --system、mise install --shared與mise install-into安裝會(huì)直接解壓到目標(biāo)目錄不使用持久解壓緩存——因此結(jié)果是自包含的不鏈接到安裝者用戶的主目錄。8.2 緩存鍵生成緩存鍵由文件內(nèi)容派生因此相同下載可在多個(gè)工具間共享文件內(nèi)容mise 計(jì)算下載文件的 Blake3 哈希獨(dú)立于期望的驗(yàn)證校驗(yàn)和解壓選項(xiàng)會(huì)改變解壓結(jié)果的選項(xiàng)也計(jì)入鍵包括根目錄剝離、重命名、相關(guān)格式或啟動(dòng)器選擇。源碼中cache_key按此拼接各部分src/backend/http.rs#L319-L371blake3內(nèi)容哈希[_format_格式][_name_重命名哈希][_strip_N][_rename_token][_binpath_路徑][_windows_script_interpreter_哈希]。注意bin_path本身不進(jìn)入鍵在符號(hào)鏈接階段處理以實(shí)現(xiàn)去重但配合rename_exe時(shí)會(huì)進(jìn)入鍵。示例緩存目錄結(jié)構(gòu)~/.local/share/mise/http-tarballs/ ├── 71f774faa03daf1a58cc3339f8c73e6557348c8e0a2f3fb8148cc26e26bad83f/ │ ├── bin/my-tool │ └── metadata.json └── 1c2af379bdf1fed266bc44b49271e2df5b0dafae09f1cc744b3505ec50c84719_strip_1/ ├── my-tool └── metadata.json上面的首個(gè)哈希在 e2e 測(cè)試中真實(shí)出現(xiàn)過——同一個(gè) tarball 在 e2e/backend/test_http 中生成blake3:71f774...鎖條目證明緩存鍵獨(dú)立于驗(yàn)證校驗(yàn)和的設(shè)計(jì)。8.3 符號(hào)鏈接安裝普通用戶安裝是到緩存解壓內(nèi)容的符號(hào)鏈接~/.local/share/mise/installs/http-my-tool/1.0.0 → ~/.local/share/mise/http-tarballs/71f774...e2e/backend/test_http_caching 驗(yàn)證了這一行為第一個(gè)工具安裝后緩存 1 個(gè)條目第二個(gè)工具使用同一 tarball 后緩存仍為 1 個(gè)條目復(fù)用不同 tarball 才新增條目最后直接斷言安裝目錄是符號(hào)鏈接且指向/http-tarballs/。該方案的好處節(jié)省空間普通用戶安裝可在工具間共享相同 tarball安裝更快復(fù)用已解壓內(nèi)容避免重復(fù)解壓下載可能仍需進(jìn)行以識(shí)別內(nèi)容一致性相同文件與解壓選項(xiàng)復(fù)用同一緩存內(nèi)容。系統(tǒng)、共享與 install-into 目標(biāo)存放真實(shí)文件而非符號(hào)鏈接避免卸載后殘留隱藏緩存條目并保證共享安裝獨(dú)立于特定用戶的數(shù)據(jù)目錄。8.4 緩存元數(shù)據(jù)每個(gè)緩存條目包含metadata.json{ url: https://example.com/releases/my-tool-v1.0.0.tar.gz, checksum: sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, size: 1024000, extracted_at: 1703001234, platform: macos-arm64 }源碼中CacheMetadata結(jié)構(gòu)體與之對(duì)應(yīng)write_metadata在解壓成功后寫入src/backend/http.rs#L40-L47、src/backend/http.rs#L722-L741。8.5 緩存管理普通 HTTP 安裝的緩存放于$MISE_DATA_DIR/http-tarballs/有意放在MISE_CACHE_DIR之外因此mise cache clear不會(huì)刪除已安裝符號(hào)鏈接仍引用的內(nèi)容。系統(tǒng)、共享與 install-into 目標(biāo)不會(huì)創(chuàng)建持久 HTTP 解壓緩存。九、與 mise.lock 的聯(lián)動(dòng)跨平臺(tái)鎖文件HTTP backend 是 lockfile 生態(tài)的重要成員。mise lock時(shí)resolve_lock_info會(huì)為每個(gè)目標(biāo)平臺(tái)解析制品 URL 與校驗(yàn)和src/backend/http.rs#L1145-L1183URL 模板按目標(biāo)平臺(tái)渲染lock_url_for_target無法解析的平臺(tái)會(huì)報(bào)錯(cuò)并標(biāo)記為跳過而非靜默寫空條目校驗(yàn)和按 平臺(tái)直接聲明 →checksum_expr清單 → SHASUMS 文件名匹配 → 單個(gè)校驗(yàn)和文件 的順序解析全程不下載制品配置了checksum_url卻解析不到校驗(yàn)和時(shí)會(huì)給出警告并僅鎖定 URL不帶校驗(yàn)和驗(yàn)證。安裝時(shí)若 lockfile 已啟用mise 會(huì)對(duì)每個(gè)平臺(tái)記錄blake3校驗(yàn)和與 size并在后續(xù)安裝中驗(yàn)證src/backend/http.rs#L889-L929。這正是 e2e/backend/test_http 中斷言checksum blake3:71f774...所驗(yàn)證的鏈路。完整的 lockfile 說明見 docs/dev-tools/mise-lock.md。十、端到端驗(yàn)證與真實(shí)注冊(cè)表案例倉庫中 e2e/backend/test_http 覆蓋了 HTTP backend 的完整實(shí)操矩陣可作為自測(cè)清單基礎(chǔ)安裝 mise x --運(yùn)行驗(yàn)證帶checksum的校驗(yàn)安裝多版本1.0.0 → 2.0.0切換平臺(tái)專屬 URLplatforms表darwin-arm64/darwin-amd64/linux-amd64raw 文件直裝無歸檔與 raw 文件 bin_pathlockfile 生成MISE_LOCKFILE1下mise.lock含 backend/url/platforms/checksumURL 模板{{version}}、模板化bin_path、Tera 帶空格語法{{ version }}。真實(shí)世界案例registry/sentinel.toml 展示了生產(chǎn)級(jí)配置——HashiCorp Sentinel 的完整 HTTP 后端聲明version_order semver bins [sentinel] [[backends]] full http:sentinel [backends.options] checksum_url https://releases.hashicorp.com/sentinel/{{ version }}/sentinel_{{ version }}_SHA256SUMS url https://releases.hashicorp.com/sentinel/{{ version }}/sentinel_{{ version }}_{{ os(macosdarwin) }}_{{ arch(x64amd64) }}.zip version_expr fromJSON(body).versions | keys() | sortVersions() version_list_url https://releases.hashicorp.com/sentinel/index.json它同時(shí)用到了模板重映射、SHASUMS 校驗(yàn)和源、version_expr版本提取與version_order semver——是本文所有概念的濃縮范本。結(jié)語HTTP backend 是 mise 工具生態(tài)的萬能插座一條直鏈、一段模板、一組校驗(yàn)選項(xiàng)即可把任何二進(jìn)制、腳本或歸檔納入統(tǒng)一的管理、版本選擇、緩存與鎖文件體系。從mise use一行命令接入到platforms表按平臺(tái)分發(fā)、checksum_url/checksum_expr無下載鎖定全平臺(tái)校驗(yàn)和再到version_expr處理任意復(fù)雜的版本清單其能力邊界遠(yuǎn)不止下載解壓——它把從 URL 安裝這件事完整地工程化了。結(jié)合 docs/dev-tools/backends/http.md、src/backend/http.rs 與 e2e/backend/test_http你可以為團(tuán)隊(duì)里任何只有下載鏈接的工具建立可復(fù)現(xiàn)、可審計(jì)的標(biāo)準(zhǔn)安裝方案。【免費(fèi)下載鏈接】misedev tools, env vars, task runner項(xiàng)目地址: https://gitcode.com/GitHub_Trending/mi/mise創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
精品无吗va视频免费观看| AV天堂淫乩| 黄色AV日韩| 成人操呦av| 婷婷成人av| 亚洲色五月| 亚洲综合婷婷五月天| 成人av观看| 婷婷六月色| 五月天色五月| 天天色亚洲| 国产伦理精品高清在线观看网站一区二区 | 免费精品66| 天天操五月天| 99在线播放| 五月天激情国产综合婷婷婷| 色五月婷婷基地| 成人综合伍月天| www激情| 久久这里只有精品视频15| 高清无码网址| www.日本91| 综合六月激情婷婷| 精品色色网| 色婷婷成人| 久婷自拍视频| 视频1区2区| 99爱在线| 色综合色综合色综合| 俺也去色| 国产99久久久国产精品免费看| 超碰99久久| 色久五月天| 色五月婷婷、老熟女| 久99| 激情五月图| 久操无码| 播五月婷婷开心| 久久久久网站| 婷婷五月色情天| 一起草av在线观看| 五月丁香激情四射| 99综合视频| 影音先锋毛片网站| 五月婷婷六月丁香激情深爱| 97色五月天| 99久久黄色顶级视频| 丁香婷婷五月天激情四射| 超碰A V在线| 视频一区二区在线| 九月丁香八月婷婷久久综合久97| av在线激情| 丁香五月色网| 人妻系列久久久久久久久久久| 俺来也综合网精品一区| 我要射综合| 婷婷六月伊人| 色欲午夜无码久久久久久张津瑜| 综合激情视频| 色色亚洲99com| 五月婷婷六月激情| AV在线观看网站| 99在线免费视频| 五月天激情网址| 五月婷在线影院| 久久精品4| 一区二区成人电影| 噜噜噜精品欧美成人在线观看| 五月四色婷婷| 五月婷婷丁香| 97在线观视频免费观看| 都市激情亚洲| 丁香六月 婷婷六月| 五月丁香五月丁香| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 碰超在线九色| 激情久久久| 99热这里只有精品98| 色五月天网| 天天五月情| 婷婷午夜综合| 岛国AAAV| 五月丁香综合激情在线观看| 日日夜夜久| 操人久久| 思思热99er| 五月天激情四射网站| 六月婷婷色综合| 夜夜天天天天天干天天爽| 激情小说 五月天| 香蕉婷婷色五月| 激情婷婷六月天| 男人大jjc女人免费视频| 日韩欧美婷婷丁| 成人电影在线免费试看| 五月天 另类图片| 99爽视频| 热久69| XXXX岛国| 久久综合九九| 久久99精品日本| 六月色狠狠色| 激情丁香五月| 日本三级日本三级三级人妇四虎| 思思精品视频| 91九九九九九九| 久久精品五月天| 五月天自拍网| 99色在线视频| 亚洲午夜精品久久久久久人妖| 99热在线这里| 久久视9精| 色愛综合网| 午夜做爱影院| 爱狠射| 99热这里只有精品国产免费| 夜夜 操无码| 百度一下国产精品A| 亚洲网站999| 五月丁香狠狠地噜噜噜噜| 色99在线视频| 激情黄色小说色五月| 久色五月婷婷综合| 91精品激情9| 亚洲婷婷五月天在线激情综合网| 五月花激情| 狠狠久久婷婷| 成人网在线视频| 一本久婷婷综合| 婷婷久久婷婷色五月| 久热一本| 婷婷色在线观看| 99热这里只有精品55| 免费视频WWW在线观看网站| 97色片| 色五月婷婷色五月婷婷色五月婷婷| AAA久久| 久久精品婷婷五月丁香| 九九婷婷综合| 欧亚洲在线高清视频| 婷婷五月色播| 日本99热| 五月综合久久| 激情五月婷在线精品| 嫩草AV久久伊人妇女超级A| 影音先锋色婷婷| 女人被男人吃奶到高潮| 亚洲网视屏| 欧美日韩成人在线观看| 综合色色网| 97人妻碰碰碰久久香蕉| 天天爽在线视频| 9999三级片| 七七九色| 99精品在线| www超碰| 99热这里只有精品2| 粉嫩av蜜桃av蜜臀av| 91久久五月天| 狠狠色五月激情| 天天天干夜夜夜操| 玖操97| AA片在线观看视频在线播放| 婷婷噜噜| 五月天色色网站| 五月婷婷六月丁香综合| 五月六月丁香婷婷在线观看| 亚洲中文AV网站| 国产美女视频久| 色色五月天网站| 99re这里| www激情五月天| 久久一伦| 丁香五月天婷婷激情| aaaaa不卡| 国产亚洲色婷婷久久99精品91| 狠色狠色狠狠色综合网| 亚洲成人精品三区| 狠狠干综合| 99精品视频在线| 五月久久| 九九成人视频| 亚洲人人操| 97视频久久| 亚洲精品V天堂中文字幕| 激情激情激情网| 日韩AV中文字幕在线| 99毛片| 99久久精彩视频。| 久久五月天激情婷婷| 爆乳熟妇一区二区三区爆乳照片| 免费试看小视频 99| 天堂网色婷婷| 乱岳熟女50岁| 久久综合性| 五月色天五月色| 婷婷五月中文字幕| 九九丁香社区欧美激情| 色五月丁香婷婷| 久久色这里只有精品| 婷婷的久久网站| 中国女人内射6XXXXX| 婷婷六月丁| 色噜噜狠狠色综合日日| www,超碰| 亚洲a片免费观看| 五月婷婷深深爱| 五月天久久综合婷婷丁香| 激情综合网五月婷婷| 亚洲人操亚洲人| 色婷婷色99国产综合精品| 五月婷婷色丁香| 99热99操| 色吊丝av中文字幕| 日本激情综合| 538在线精品| 亚洲性爱电影| 天天干天天干天天| 九九热在线精品视频| www好屌操| 自拍偷窥99热| 久久九区| 综合大香蕉| 五月天综合色| 99热www| 欧美性色A片免费免费观看的| 9999三级片| 婷婷五月天激情AV影院| 这里只有精品久| 丁香婷婷精品视频| 日本妈妈乱| 九九热啪啪| 婷婷激情综合色五月久久91| 九九九九九九九九九九九九九九九九九九九在线视频 | 色综合激情| 激情五月色在线播放| 色综合天天网| 天天天天天操| 开心五月婷| 开心五月婷婷在线视频免费观看| 欧美黑人巨大猛烈cuckold| 中文资源在线a | 国产91视频| 99色色| 91精品久久久久、久五月天| 婷婷 丁香 精品| 可以直接看的AV网站| 婷婷狠狠久久| 色色色色色色97| 99秘 在线| 激情五月天之六月婷婷| 色欲香综合网| 雪千夏麻豆| 日韩成人电影AV| 国内外色色色色色成人视频| 另类少妇人与禽zOZZ0性伦| av大香蕉| 被强行糟蹋的女人A片| 人妻久久久| 日韩色色视频| 免费看成人AA片无码视频吃奶| 久久人妻精品| 色婷婷激情五月天丁香| 亚洲av成人电影在线观看| 日本波多野结衣视频| 性欧美大战久久久久久久83| se婷97| 欧美激情 日韩无码 婷婷 五月天| 99草在线免费观看视频| 中文精品在| 国产67194| ww亚洲ww在线观看| 婷婷五月天美女视频| 久久婷婷六月| 婷婷六月色| 婷婷天天舔| 五月丁香婷婷综合激情基地| 亚洲亚洲永久无码777777| www.开心激情| 国产激情综合五月久久| 五月天丁香色色| 国产乱轮一区二区三区| 99re在线观看| 国产色色色色| 久久五月丁香伊人青草| 五月的色婷婷高潮| 99热免费| 亚洲操B视频| 五月开心婷婷中文字幕| 五月婷婷AV| 五月丁香色综合| 精品人妻一区二区三区四区不卡在| 久久综合九九| 婷婷成人AV| 99热只有精品综合| 综合婷婷五月天| 色情综合| 久久久久8888| 婷婷五月天激情综合深爱激情 | 9视频1在线| 性日本激情| 五月天伊人手机在线播放AV| 在线综合网| 色色五月天 亚洲| 色五月婷婷在线| 五月天伊人日日噜影片AV| 日狠狠| 欧亚洲在线高清视频| 亚洲综合丁香五月| 激情图片五月天| 99热人人操人人操| 亚洲五月丁| 五月天操逼网| 色婷婷影音| 热的国产,热的综合,热的有码| 国产色色色色| 9久热精品在线视频| 婷婷色五月激情强奸四射| 色情丁香五月天| 天天舔天天摸| 亚洲成AV人片在线观看| 狠狠人人| 99视频精品在线| 久久婷婷的综合色丁香五月| 欧美久久婷婷| 亚洲中文AV| 另类色网| 成人片在线播放| 色色五月婷婷久久| 99热99精品| 亚州欧美黄色电影| 激情婷婷网| 久久激情视频| 97丁香花五月天激情小说| 五月婷婷五月丁香| 伊人婷婷五月天av| 激情综合网色播五月| 香蕉人妻AV久久久久天天| 五月婷婷亚洲| 超碰人人在线| 亚洲超碰在线| 久久婷婷五月综合| 天天日夜夜草进麻麻的子宫| 日本黄色三级片内射| 激情综合网五月在线播放| 亚洲色五月| 欧美婷婷综合| 日本爆乳片手机在线播放| 性爱五月婷| 丁香五月色五月婷婷宗合| 97在线观视频免费观看| 天天干天天爽天天操| 99精品偷自拍| 丁香五月六月激情久久| 99久久高清视频| 婷婷五月天成人网站| 操人妻AV| 久草热视频在线观看| 九九热9| 我要射综合| 九九综合影音先锋| 婷婷午夜天| 婷婷综合另类| 五月天丁香网站| 91热视频色网站| 天天日天天舔| 色婷婷丁香五月天| 国产AV一区二区三区最新精品| 99热成人精品| 无码人妻一区二区一牛影视| 九九这里有精品| 台湾无码A片一区二区| 亚洲激情综| 久久精品4| www.狠狠| 亚洲人人操BD| 久热黄色| 爱久久小说下载网| 99色视频| 蜜桃婷婷丁香五月天狠狠久久综合| 欧美大片| 大香蕉伊人爱在线| 色婷婷五月天激情| 欧美日本不卡黄色片| 婷香五月激情视频| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 国産精品| 少妇人妻丰满做爰XXX| 色色cOm| 久热久操久热久草国产91| AV在线免费播放| 开心四月婷婷在线色播播| WwW色婷婷| 激情五月丁香亭亭 | 国内久久亭亭| 国产毛片精品一区二区色欲黄A片| 五月婷婷无码专区| 欧美一级色| 精品少妇人妻AV无码专区偷人| 天天草天天摸| 婷婷伊人无码| 九月婷婷激情| 婷婷欠久少妇| 五月婷婷色色| 99久在线精品99re8热| 五月激情视频| 成人AV网站在线| 天天干天天操天天拍| 这里只有精品网| 色色是色N一| 丁香九月激情在线视频| www久久99| 五月婷婷激情久久| 99爱最新免费视频在线观看| 91日韩在线| 五月刺激丁香月综合| 丁香五月天堂| 五月天色五月| 婷婷五月天综合色| 97色伦另类图片小说视频| 六月婷婷视频| www.cao.com久久| 人人草人人舔| 91碰视频| 丁香五月天社区| 婷婷五月丁香伊人网| 五月丁香啪啪啪综合网| 中文字幕无码成人电影| 色天使色综合| 色婷婷中文| 久久丁香| h在线看免费版在线看| 99热这里是精品| 婷婷成人丁香色情基地30 | 超碰婷婷色| 开心激情网在线| 激情婷婷六月天| 丁香五月婷婷色| 99热精在线九九久久保| 色婷婷狠狠干| 中文字幕婷婷五月天| 99精品国产在热久久婷婷| 99视频综合| 午夜天堂一区人妻| 国精产品一区一区三区免费视频| 开心五月婷婷| 激情内射人妻1区2区3区| 亚洲激情另类| 丁香五月天堂| 婷婷五月影院| BBWCUCKOLD精品熟妇| 婷婷亚洲综合| av国产精品| 99性爱视频| 99re8这里只有精品99re8热视频| 中文字幕永久免费| 色五月婷婷色| 青草青草视频2免费观看| 色久天| 色墦五月丁香| 二色av| 丁香激情网| 色999;丁香五月| 99热这里只有精彩| 韩国真做片在线观看| 激情五月天色播| 国产精品色| 亚洲视频在线观看| 大香蕉久久综合网| 五月叮香啪| 激情綜合網址| 只有精品在线观看| 久久五月婷婷开心网| 五月色精品| 色欲久久久久| 99久久婷| 福利视频在线播放| 青青操成人福利| 亚洲精品网址| 五月婷丁香花| 色五月丁香五月婷婷五月成人网| 欧美va在线观看| 亚洲成人高清在线| 欧美日本免费一道免费视频 | 91porn一起草| 丁香五月图片| 情趣视频66| 大香线蕉伊人| 亚洲国产精品二二三三区| 色99最新网址| 九久9精品| 这里只有精品99www| 99久久久| 天天干天天干天天干天天干天天干| 大地9中文在线观看免费高清| 激情性爱五月天网页| 中文字幕婷婷在线| 色婷婷久久综合久色| 天天干天天爽天天操| 亚洲另类日本| 欧美顶级少妇做爰HD | 五月天激情久色| 婷婷丁香人妻天天爽| 精品婷婷| 91色色色视频| 思思网站| 天堂中文国产| 九色成人AV在线| 五月综合丁香婷婷| 久久久久久久久久人妻| 久久激情五月婷婷| 第五婷婷伊人丁香| 五月丁香成人版| 六月丁香啪啪啪| 丁香五月色情| 丁香九月婷婷综合| 久久人妻www| 亚洲欧美婷婷五月色综合| 久久综合九色综合88i| 狠狠做五月| 丁香六月五月天| 婷婷五月天成人网| 亚洲第一黄网| 成人丁香| 男人的天堂99| 五月五丁香婷婷| 日日杆天天| 丁香六月激情毛片| 五月婷婷二月丁香| 四川BBB搡BBB爽爽视频| 99久久久国产大片| 色婷婷婷婷| 大香蕉久久久久久久久| 好好干av| 国产又爽又猛又粗的视频A片| 五月婷婷激情性爱| 婷婷五月激情中文字幕| 五月丁香婷婷伊人日韩| 深爱激情网婷婷| 婷婷久草| 亚洲九九夜夜| www.色99| 秋霞A V毛片| 天天干天天爽| 五月婷婷六月丁香首页| 五月婷亚洲精品| 性爱激情五月| 亚洲色综合性| 九月丁香婷婷网| 九九成人精品| 99五月香婷婷丁香在线视频| 99久久成人| 99热在线观看| 99色视频在线观看| 国产,欧美,学生妹,视频| 天天色爽| 亚洲视频一区| 久久开心五月婷婷| 国产操逼视频网站| 激情五月婷婷五月| 热久69| 婷婷五月六月丁香| 色欲影香| 九九热AV| 欧美成人无码一区二区三区| 国色天香成人网| 五月激情综合激情五月| 久久无码成人| 丁香婷婷成人网| 91天堂网综合| 影视av久久久噜噜噜噜噜三级| 五月开心久久| 婷婷丁香五月综合| 天天看片日日夜夜| 九月丁香婷婷基地| 五月天开心激情综合网| 色五月婷婷操逼| 亚洲另类电影| 丁香五月激情欧欧美| 亚洲视频在线观看| 亚亚州久久高潮| 99.N在线视频| 99热激情| wwwC0maV五月花| 9久操| 99九九玖玖| 人人人操Av| 亚洲视频一区| 色婷婷小说网| 激情五月综合视频| 激情婷婷。| 日本久久人人| 五月婷婷开心爱| 国产亚洲99久久精品熟| 26UUU欧美激情一区二区| 五月天亚洲图片婷婷| 极品人妻VIDEOSSS人妻| 激情五月综合婷婷| 激情丁香五月婷| av婷婷丁香| 9色在线视频| 日本色婷婷久久99精品91| 久久日婷婷| 99热亚洲| 热久久精品视频网站| 玖玖婷婷婷丁香五月| 五月天婷婷在线播放| 精品福利911| 激情久久综合网| 亚洲色热| 六月婷婷五月丁香| 五月丁香激情婷婷综合字幕| 日韩在线观看亚洲| 不卡在线视频| 婷婷综合| www.minyis.com【JT】实力收量可预付QQ2101460746 | 性爱五月婷| 九九热精品| 五月婷婷香| 色婷婷丁香六月| 国内在线99视频| 岛国av网站| 久久婷婷六月综合综合色| 婷婷五月小说色综合| 99超级超级超级碰| 香蕉久久国产AV一区二区 | 久久人妻久久久久| 久久激情天堂| 久久99免费视频网站| 狠狠狠狠狠| 欧美日韩成人在线网站| 五月花亭亭| 日日操夜夜操狠狠操| 亚洲一区二区无遮挡A片| 免费看欧美成人A片无码| 国产成人高清| 99性色| 欧美视频在线观看噜噜| WWW夜夜| 91色涩| 五月丁香激情啪啪网| 久99999热视频在线观看免费| 996热re视频精品视频| 婷婷综合色五月天| 人人做人人看人人摸| 99热这里只有99| 欧洲不卡视频| 97影院一级片| 国产精品日日躁夜夜躁| 欧美一线视频| www.久久9| 色吊操色妞| 精品人妻在线免费观看| 97色干在线观看| 色色色综合网| 久久久中文| 六月丁香五月婷婷| 色色无码| 天天日天天插| 国产毛片欧美毛片久久久 | 狠狠操性爱av| 婷婷五月天黄色小说| 婷婷五月天亚洲精品| 国产丁香五月天婷婷| 亚洲中文无码成人| 99久99热| 五月丁香婷婷啪啪综合网| 婷婷六月丁香1| 国产六月婷婷| 99人人操人人摸| 五月丁香五月天现场视频| 六月丁香婷婷开心综合基地| 26uuu欧美亚洲日韩| 亚洲日韩26uuu| 人人干人人操人人摸人人做| 6080av| 99性感视频| 成人五月天视频播放| www,26uuu,c0m,色情| 五月花在线观看视频| 天天色天天日天天舔| 91色操| 天天干天干| 丁香五月天啪啪| 操人妻AV| 色婷婷玖玖影院| 99精品视频偷拍| 婷婷丁香五月天婷婷| 五月人人丁香婷婷五月人人丁香| 这里只有精品在线播放| 色五月婷婷激情| www.91在线观看| 色播五月网| 99riav 亚洲| yw.av| 五月天天堂久久| 天天爽天天爽天天爽天天爽天天爽天天爽天天| 婷婷五月天亚洲天堂| 日日舔夜夜操| 91九色首页| 免费无码毛片一区二区A片 | 亚洲区,视频区,视频区免费| 日韩AAA| 99操逼| 婷婷五月综合在线| 怎么样可以看免费的一级av| 久久久A级视频| 99精品在线| 激情婷婷丁香色五月| 狠狠色综合网| 国产成人一区二区三区在线观看| 五月丁香六月婷婷激情四射| 五月丁香A片| 久久精品亚洲热| 99热最新| 微拍92| 久久天天天| 久久五月综合| 大香蕉久久| 99九精品| 九九热这里只有国产精品| 久久hd| 欧美精品在线观看| 99玖玖免费视频| 五月天激情婷婷丁香| 激情久久综合| 99在线播放| 久久婷婷五月草视频在线播放| 26uuu精品一区二区| 激情99| 五月综合丁香婷婷| 婷婷五月图片小说网| 久久99热这里只有精品| 天天爽天天干| 久久加勤综合| 日本丁香五月婷婷| 免费婷婷| 五月丁了香蕉综合| 快色t v在线入口| 青青草成人网| 久草a片| 五月婷婷婷自由综合| 日日操日日撸| 久操激情| 伊人玖玖婷婷| 久久久九九九 99| 草AV9999| 国产av天堂| 亚洲超碰在线| 熟女网站久久| 五月丁香六月婷婷久久| 激情五月视频在线婷婷| 国产伦亲子伦亲子视频观看| 九九99在线观看视频| 六月婷婷综合激情| 亚洲在线视频321| 五月花婷婷丁香| 人妻丰满精品一区二区A片 | 九九这里精品| 丁香五月性爱| 成人五月天在线观看| 成片免费播放| 特黄三级片| 丁香婷婷六月天| 精品久热69| 六月丁香激情| 成人毛片在线免费观看| 丁香六月激情| 天堂五月婷婷| 激情五月天啪啪| 91疯狂操操操操| www.夜夜| 久热中文字幕| 久激情网| 久久婷婷六月| 国产AV一区二区三区最新精品| 久久机热这里只有精品免费视频| 婷婷色婷婷| 丁香五月天啪啪| 丁香六月婷婷| 婷婷亚洲五月丁香综合在线 | 五月花激情| 丁香五月综合高清在线| 97精品综合| www.日韩艹| 91九色PORNY肉丝在线| 国产日日操夜夜操的肉棒视频| 春色激情| 综合成人小说婷婷| 丁香五月手机在线| 少妇激情五月天| 99惹| 91九色PORNY肉丝在线| 婷婷丁香色情| 操九色| 99热只有这里有精品| 亚洲激情无码久久| 91妻人人爽人人看片| 五月停停激情网| 久久久欧美精品sm网站| 激情五月天婷婷丁香| 久久五月丁香伊人青草| 婷婷六月天国产综合| 色色色色av色色色色| 大香蕉狼人久久| 另类激情综合| 天天干天天叉| 9久久婷婷国产综合精品性色| 色婷婷五月天在线观看| 久久久99精品| 大香蕉婷婷久久| 亚洲V国产V欧美V久久久久久| 日韩色色视频www| 超碰人人操| 91九九| 五月天狠狠网| 激情深爱五月婷婷| 婷婷五月天丁香综合网| 99操逼| 亚洲综合婷婷五月| 91凹凸在线| 国产SUV精品一区二区6| 五月丁香六月玩女人| 777色婷婷爱五月| 五月天婷婷网站| 天天肏夜夜肏| 天天爽天天做| 欧亚色色| 久久人操-久草婷婷-成人AV| 天天干一干| 性色五月天| 色亚洲中文| 日韩日比视频| 婷婷五月天免费99| 丁香六月色婷婷| 色情五月停停丁香| 午夜理论片最新午夜理论剧| 五月丁香激情啪啪网| 亚洲婷婷五月天| 丁香婷婷月| 五月人妻婷婷| 成人午夜无码视频| 停停六月 综合| 99成人| 色丁香五月天| 99热这里只有精品2| 久久99热这里| 日本综合色色| 婷婷五月激情五月丁香五月| 午夜69成人做爰视频| 天堂色婷婷| 96五月丁香熟女| 男人天堂亚洲综合| 91九色在线| 色五月婷婷伊人| 天堂在线观看视频| 少妇做爰免费视看片| 五月婷婷综合激情网| 人妻操逼视频| 丁香色五月婷婷91桃色| 五月天激情在线视频| 色丁香久久| 在线视频99| 色综合色色色色色色综合| 日韩精品无码一区二区| 九九色影院| 九九Av| 97婷婷狠狠| 爱婷婷都市激情| 99这里只有精品99| 五月综合六月婷婷| 久热最新视频| 99爱最新免费视频在线观看| 五月花婷婷在线精品视频| 影音先锋色婷婷| 六月撸婷婷| 另类 在线| 亚洲无aV在线中文字幕 | 婷婷激情肏屄网| 成人视频一区| 狠狠色综合网| 超碰99在线| 激情欧美婷婷| 天天日天天干天天爱| 99色综合网| 五月天婷婷基地丁香| 五月丁香六月色婷婷综合五月天| 日韩啪啪视频| 九九激情网| 天天激情5月天亚洲| 天天想夜夜爽天天爽| 色狠狠五月天| 色99视| 丁香六月爱综合| 天堂AV在线看| 色婷婷五月天偷拍| 干一干xxxx| 综合大香蕉| 一本色道久久综合狠狠躁小说| 婷婷五月天成人网| 国产99久久久国产精品免费看| 99热官网| 婷婷六月激情综合| 看逼中文字幕| 99热主页日本| 日本女va| 激情九九综合网| 五月亭亭六月天| www.五月天色色.com| av在线观看免费| AV九九| 日本久久九| 婷婷色操| 丁香九月综合| 久久96热| 日本天堂免费99| 人人操av| 日韩青青| 久久看婷婷| 色色99色色| 久久五月婷天天干| 色婷婷日本| 色五月综合网| 久草视频大香蕉99| 97久久草草超级碰碰碰| 五婷婷六月合| 丁香五月婷婷视频| 丁香五月伊人| 三日本无码| 玖玖爱综合网| 在线综合婷婷| 色色色在线观看| 另类小说五月天| 国产性爱色| 婷婷五月成人| 丁香五月激情图片| 亚洲成人免费电影| 欧美婷婷丁香社区在线播放| 神马欧美精| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 色婷婷狠狠18禁| www.91av.com| 激情五婷网| 99人人操人人摸| 久久九九网| 99riAV成人在线视频| 99操逼视频| 99热99热| 五月丁香综合啪啪| 婷五月天丁香婷五月| 狠狠 婷婷| 91九色熟女| www五月婷婷| 九月婷婷| 99热8| 99热个人在线| 久99| 九九在线视频| 天天色中文字幕女优AV| 天天干,天天舔| 丁香五月社区| 婷婷99视频全集高清| 五月丁香综合啪啪| 激情五月丁香亭亭| 五月天久久色| 色婷婷丁香网| 丁香婷婷色色| 爱狠射| 天天爱天天做天天爽| 丁香五月婷婷色| 丁香五月婷婷激情完整版| 婷婷激情鹿城五月天| 五月激情婷婷在线| 一本久道综合99| 久久婷婷综合五月趴| 香蕉久久av一区二区三区| 亚洲五月婷| 五月天婷婷AV| 色播五月丁香综合| 天天舔天天摸天天透| 99精彩视频| 亚洲精久久| 五月婷婷三级| 超碰猛烈的性猛交| 小视频久久久aaa| 久久国产成人9999久久久久| 色五月丁香激情视频| 另类图片五月天| 超碰成人电影| AA久久| 激情人妻综合| 色色综合激情| 国产91九色| 99热思思| 久婷婷色| 日本99色| 九九热大香蕉| 操97免费超级视频| 丁香五月开心亚洲| 狠狠99| 日韩在线99| 色欲午夜无码久久久久久张津瑜| 天天操精品| 五月婷婷在线免费| 艹天天射| 七七九色| 欧美色色色色色| 亚洲综合1024| 日韩啪啪视频| site:pnnrt.com| 日韩三级片一区二区| 97人人干| 热99久久这里只有精品| 国产视频色色色色色色色| 色综合久久88色综合中文字幕| 人人色人人弄人人操| 玖玖福利视频资源| 五月停停99| www.婷婷五月| 91.com男女操| 婷婷社区五月天| 色色综合日韩| 狠狠色噜噜狠| 色视频五月天| 性视频久久| 激情婷婷五月| 亚洲婷婷婷| 日逼影音先锋AV男人资源站| 欧美综合激情丁香五月六月婷| 成人网站av免费网站推荐| 97久久久久| 思思网站| 大鸡巴伊人网| 9有码中文| 五月婷婷在线短视频| 国产乱子轮XXX农村| www.av骚货| 综合一区二区三区| 人人干人人看| 亭亭五月天黑人2014| 天天干天天操天天射| 性一交一乱一交A片久久四色| 五月丁香婷婷在线综合蜜桃| 五月婷A V在线| 九九这里有精品| 婷婷综合| 色婷婷狠狠18yy| 激情综合区| 国产欧美日韩一区二区三区| 色欲色香,www,com| 色综合色色| 亚洲色色精品| www99久久| 亚洲精品久久久久久久久久飞鱼 | 欧美色五月| 久热99狠| 久操热| 99色视频免费在线规看| 色婷婷19| www.金莲av| 久99热| 婷婷射婷婷舔| 丁香五月亚洲激情婷婷射| 伊人九热| av九九| se99视频| 五月天激情站| www.97干视频| 嫩草极品| 婷婷精品免费久久| 亚洲欧州色情在线观看| 67194国产| 国产第99页| 精品夜夜澡人妻无码AV| www,com,五月色色| 五月丁香色婷| 精品久色| 天天综合网~91综合网| 国产AV影片| 六月色色| 日日噜噜夜夜狠狠久久丁香六月| 久久国产精品乱子伦_靑青草…| 狠干综合| 97人妻超级碰碰碰碰碰| 午夜婷婷| 亚洲99在线| 日日狠狠久久偷偷四色综合免费 | 婷婷丁香综合在线| 九九色综合| 亚洲成人AV在线观看| 色五月综合激情| 美女婷婷六月色| 91色久| 丁香久久久| 婷婷六久久| 久久人妻少妇嫩草AV| 九九热99热| 亚洲AV综合网| 丁香五月婷婷视频| 丁香五月婷婷俺也要去| 婷婷五月天va| WWW,色五月| 玖玖色综合网| 丁香五月先锋| 免费观看2018www黄色操逼网站| 中文字幕日本最新乱码视频| 婷婷五月激情中文字幕| 伊人久久五月天| 丁香六月婷婷色播| 思思久久精品| 中文字幕婷婷五月天在线观看| 五月丁综合在线观看| 美女丁香五月天| 五月天婷婷黄色视频| 亚洲区,视频区,视频区免费| 在线天堂9| 五月婷激情影院| 91热网址| 日韩在线一级| yazhochengrenavwang| 丁香婷婷老司机久操| 婷婷五月丁香99| 97成人丁香| 亚洲人成网站999综合| 婷婷五月天成人视频| 国产99久| 天堂va久久久噜噜噜久久Va| 热99视频精品在线| 婷婷热色| 五月丁香婷婷综合网色欲| 丁香五月天激情四射网络不好| 丁香五月综合狠狠| 大香蕉福利导航| 91人人人人人人人| 丁香五月婷婷少妇| 色一情一乱一乱一区9| 98永久精品| 97人人干人人操| 天天天久久久| 丁香六月天婷婷色| 国产精品久久久60086| 亚洲丁香五月| 99热这里是精品| 五月丁香激情四射| 人妻无码精品一区| 婷婷六月天| 五月天丁香婷婷视频网址| 色八戒操婷婷| 亚洲视频国产一区| 大香蕉伊人久久| 天堂va久久久噜噜噜久久Va| 亚洲成人在线播放| 日本的α片xxxwww| 五月丁香六月色情网欧美| 丁香五月婷婷天激情| 女人天堂 AV| 色色五月婷婷久久| 99热手机在线精品| 在线观看免费视频| 亚洲精品九九| 婷婷丁香花五月天| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 六月婷久久| 伊人久久激情图区五月| 丁香婷婷啪啪啪| 婷婷丁香六月天| 色情综合网| 亚洲熟妇AV乱码在线观看| 九月婷婷人人操人人舔人人爱| 亚洲天堂无码| 天天综合激情| 激情五月深爱婷婷| 九九99免费视频| 中文字幕日本最新乱码视频| 日本在线wwww| 久青青久| 五月天综合在线观看| 狠狠爱综合| 操B无码视频国语| 97婷婷丁香| tingtingzonghewang| 99狠狠| 成人片黄网站色大片免费毛片| 狠狠色丁香久久综合婷婷亚洲成人福利| 亚洲综合在线播放| 婷婷成人综合五月| 人妻AV在线观看| 96自拍视频九色在线观看| 骚。com| 久久这里只有精品8| 97成人在线视频| 99re热精品在线视频| 这里只精品热在线18| 丁香五月婷久久| 91久久人人操| 久久五月丁香伊人青草| 人人草人人爱| 久久精品A片777777| 综合久久综合久久| 深爱五月婷| 亚洲激情AV| 久99在线视频| 婷婷六月五月| 五月丁香六月激情综合| www.五月天色色色| 亚洲九九99精品视频在线播放| 翔田千里 50岁 无码| 久综合4| 久久老码第一| 九九99精品视频| 爆乳熟女-区二区三区| 99热这里只有精品98| 热久久91| 97香蕉人人在线观看| 五月丁香在线精品| 婷婷狠狠干| 色综合视频| 激情五月,激情综合网| 2018国产大陆天天弄| 色综合色综合网| 色色色在线观看| 亚洲韩国日产综合AV| 久久久五月激| 精品人妻伦一二三区久久| 亚洲综合婷婷五月| 五月丁香亭亭| 人人97操| 久色国产| 日本少妇裸体做爰高潮片| site:xmssd.com| 亚洲成人一区| Www99热| 婷婷丁香五月天激情| 婷婷色资源| 九九色99| 人妻日日日| 夜夜夜夜操| 成人无码髙潮喷水A片| 丁香九月综合| 噜噜视频| 天天做天天要天天爱| 婷婷五月丁香综合| 久久久.COM| 五月天婷婷网站888| 五月天婷婷社区久久综合| 天天干狠狠| 人人操婷婷| 国产色色色色| 丁香激情五月天| 婷婷瑟瑟五月天| 婷婷五月丁香性爱| 第四色婷婷丁香五月| 熟妇天天综合| 99爱这里只有精品免费视频| 高清 码 免费看片短视频| 五月丁香六月婷婷综合网缴情| 久久se 综合网| 狠狠干思思热| 国产色色小草视频| 久久婷婷六月综合| 伊人久热91| 五月天丁香成人社| 香蕉综合在线| 久9热| 六月天六月婷| 免费观看日韩成人av|