„Facebook“ atidarė „DotSlash“ projekto kodą

„Facebook“ paskelbė apie atvirąjį „dotslash“ kodą – komandų eilutės įrankį, skirtą palengvinti vykdomųjų failų rinkinio platinimą skirtingoms platformoms. Priemonė skirta paleisti scenarijus, kurie automatizuoja esamai platformai tinkamo vykdomojo failo atsisiuntimą, tikrinant jo vientisumą ir vykdymą. Naudingumo kodas parašytas Rust ir platinamas pagal MIT ir Apache 2.0 licencijas.

Priemonė išsprendžia problemas, panašias į apvalkalo scenarijus, paleidžiant vykdomuosius failus dabartinei platformai, tačiau tuo pat metu pašalina būtinybę į paketą įtraukti visų palaikomų platformų vykdomuosius failus. „DotSlash“ taip pat leidžia saugykloje saugoti informaciją apie surinktus vykdomuosius failus kartu su kodu, o pačius failus patalpinti į atskirus įkrovos serverius, todėl išvengiama saugyklos dydžio augimo ir sumažinama įvesties/išvesties sistemos apkrova atliekant veiksmus. klonavimo operacijos.

Naudojant DotSlash, konkrečios platformos vykdomųjų failų rinkinys pakeičiamas vienu scenarijumi, kuris apima vykdomojo failo pasirinkimo logikos aprašymą, atsižvelgiant į palaikomas platformas. Paleidus DotSlash scenarijų, vykdomasis failas, reikalingas dabartinei platformai, dinamiškai atsisiunčiamas, išpakuojamas, patikrinamas pagal kriptografinę maišą ir išsaugomas vietinėje talpykloje vėlesniems paleidimams. Failai perkeliami suglaudinta forma. „DotSlash“ scenarijai gali būti generuojami automatiškai „GitHub“ paskelbtiems leidimams.

DotSlash scenarijaus, skirto platinti Node.js 18.19.0 versijos macOS ARM64, macOS x86_64 ir Linux x86_64 platformoms, pavyzdys: #!/usr/bin/env dotslash { "name": "node-v18.19.0", " platformos“: { "macos-aarch64": { "dydis": 40660307, ​​​​"hash": "blake3", "digest": "6e2ca33951e586e7670016dd9e503d028454bf9249d5ffc "556347dc3",98 "kelias": " node- v347 -darwin-arm34/bin/node", "teikėjai": [ { "url": "https://nodejs.org/dist/v18.19.0/node-v64-darwin-arm18.19.0. tar.gz" } ] }, "macos-x18.19.0_64": { "dydis": 86, "hash": "blake64", "digest": "42202872e3f37521058114e7de71fe0c3fa8042e8c7908305fa9115488e6b29fc514c9b2fc24 : "tar.gz", "kelias" : "node-v18.19.0 .64-darwin-x18.19.0/bin/node", "teikėjai": [ { "url": "https://nodejs.org/dist/v18.19.0/node-v64-darwin- x86.tar.gz " } ] }, "linux-x64_44694523": { "dydis": 3, "hash": "blake72", "digest": "81b3fc30a7b1bedc09a3a4478fafc1a02a5a0fafc04a15b23d3b9b89212b18.19.0dc64b at": "tar.gz", " kelias ": "mazgas -v18.19.0-linux-x18.19.0/bin/node", "teikėjai": [ { "url": "https://nodejs.org/dist/v64/node-vXNUMX- linux-xXNUMX.tar .gz" } ] } } }

Šaltinis: opennet.ru

Добавить комментарий