Facebook ka hapur kodin për projektin DotSlash

Facebook njoftoi burimin e hapur të dotslash, një mjet i linjës komanduese i krijuar për ta bërë më të lehtë shpërndarjen e një grupi skedarësh të ekzekutueshëm për platforma të ndryshme. Programi është krijuar për të ekzekutuar skriptet që automatizojnë shkarkimin e një skedari të ekzekutueshëm të përshtatshëm për platformën aktuale, duke kontrolluar integritetin dhe ekzekutimin e tij. Kodi i shërbimeve është shkruar në Rust dhe shpërndahet nën licencat MIT dhe Apache 2.0.

Programi zgjidh probleme të ngjashme me skriptet e guaskës për lëshimin e skedarëve të ekzekutueshëm për platformën aktuale, por në të njëjtën kohë eliminon nevojën për të përfshirë skedarë të ekzekutueshëm për të gjitha platformat e mbështetura në paketë. DotSlash gjithashtu ju lejon të ruani informacione rreth skedarëve të ekzekutueshëm të mbledhur në një depo së bashku me kodin, ndërkohë që i vendosni vetë skedarët në serverë të veçantë të nisjes, gjë që shmang rritjen e madhësisë së depove dhe zvogëlon ngarkesën në sistemin hyrës/dalës gjatë kryerjes. operacionet e klonimit.

Kur përdorni DotSlash, grupi i skedarëve të ekzekutueshëm specifikë të platformës zëvendësohet me një skript të vetëm që përfshin një përshkrim të logjikës për zgjedhjen e skedarit të ekzekutueshëm në lidhje me platformat e mbështetura. Pas ekzekutimit të një skripti DotSlash, skedari i ekzekutueshëm i kërkuar për platformën aktuale shkarkohet në mënyrë dinamike, shpaketohet, verifikohet kundrejt një hash kriptografik dhe ruhet në një memorie lokale për ekzekutimet pasuese. Skedarët transferohen në formë të ngjeshur. Skriptet DotSlash mund të gjenerohen automatikisht për publikimet e publikuara në GitHub.

Një shembull i një skripti DotSlash për shpërndarjen e ndërtimeve Node.js 18.19.0 për platformat macOS ARM64, macOS x86_64 dhe Linux x86_64: #!/usr/bin/env dotslash { “emri”: “node-v18.19.0”, “ platformat": { "macos-aarch64": { "madhësia": 40660307, ​​"hash": "blake3", "digest": "6e2ca33951e586e7670016dd9e503d028454bf9249d5bf556347d3ffform",98atd347" rruga": " node- v34 -darwin-arm18.19.0/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v64/node-v18.19.0-darwin-arm18.19.0. tar.gz" } ] }, "macos-x64_86": { "madhësia": 64, "hash": "blake42202872", "digest": "3e37521058114f7e71de0fe3c8042fa8",7908305e9115488c"6c : "tar.gz", "rruga" : "node-v29 .514-darwin-x9/bin/node", "ofruesit": [ { "url": "https://nodejs.org/dist/v2/node-v24-darwin- x18.19.0.tar.gz " } ] }, "linux-x64_18.19.0": { "madhësia": 18.19.0, "hash": "blake64", "digest": "86b64fc44694523a3b72bedc81a3a30fafc7a1b09dform",3ebf ": "tar.gz", " path ": "node -v4478-linux-x1/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v02/node-v5- linux-x0.tar .gz" } ] } } }

Burimi: opennet.ru

Shto një koment