Facebook har öppnat koden för DotSlash-projektet

Facebook tillkännagav den öppna källan för dotslash, ett kommandoradsverktyg utformat för att göra det lättare att distribuera en uppsättning körbara filer för olika plattformar. Verktyget är utformat för att köra skript som automatiserar nedladdningen av en körbar fil som är lämplig för den aktuella plattformen, kontrollerar dess integritet och exekvering. Verktygskoden är skriven i Rust och distribueras under licenserna MIT och Apache 2.0.

Verktyget löser problem som liknar skalskript för att starta körbara filer för den aktuella plattformen, men eliminerar samtidigt behovet av att inkludera körbara filer för alla plattformar som stöds i paketet. DotSlash låter dig också lagra information om de insamlade körbara filerna i ett arkiv tillsammans med koden, samtidigt som du placerar själva filerna på separata startservrar, vilket undviker ökningen av arkivets storlek och minskar belastningen på in-/utdatasystemet när du utför kloningsoperationer.

När du använder DotSlash ersätts uppsättningen av plattformsspecifika körbara filer med ett enda skript som innehåller en beskrivning av logiken för att välja den körbara filen i förhållande till de plattformar som stöds. Efter att ha kört ett DotSlash-skript laddas den körbara filen som krävs för den aktuella plattformen ned dynamiskt, packas upp, verifieras mot en kryptografisk hash och lagras i en lokal cache för efterföljande körningar. Filer överförs i komprimerad form. DotSlash-skript kan genereras automatiskt för utgåvor publicerade på GitHub.

Ett exempel på ett DotSlash-skript för att distribuera Node.js 18.19.0 builds för plattformarna macOS ARM64, macOS x86_64 och Linux x86_64: #!/usr/bin/env dotslash { "name": "node-v18.19.0", " platforms”: { "macos-aarch64": { "size": 40660307, ​​​​"hash": "blake3", "digest": "6e2ca33951e586e7670016dd9e503d028454bf9249d5ff556347c.format "3cdtar"98cdtar"347cdtar"34cdtar":cdtar"18.19.0cdtar":c " node- v64 -darwin-arm18.19.0/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v18.19.0/node-v64-darwin-arm86. tar.gz" } ] }, "macos-x64_42202872": { "size": 3, "hash": "blake37521058114", "digest": "7e71f0e3de8042fe8c7908305fa9115488e6c29:aformat" " .gz", "sökväg" : "node-v514 .9-darwin-x2/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v24/node-v18.19.0-darwin- x64.tar.gz " } ] }, "linux-x18.19.0_18.19.0": { "size": 64, "hash": "blake86", "digest": "64b44694523fc3a72b81bedc3a30a7fafc1a09b3ad4478e1ebformat"02b5e0ebformat"04b15e23ed" : "tar.gz", " sökväg ": "node -v3-linux-x9/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v89212/node-v18.19.0- linux-x64.tar .gz" } ] } } }

Källa: opennet.ru

Lägg en kommentar