Facebook hat de koade foar it DotSlash-projekt iepene

Facebook kundige de iepen boarne fan dotslash oan, in kommando-rigelprogramma ûntworpen om it makliker te meitsjen om in set útfierbere bestannen foar ferskate platfoarms te fersprieden. It hulpprogramma is ûntworpen om skripts út te fieren dy't de ynlaad automatisearje fan in útfierber bestân dat geskikt is foar it hjoeddeistige platfoarm, en kontrolearje de yntegriteit en útfiering. De nutskoade is skreaun yn Rust en wurdt ferspraat ûnder de MIT- en Apache 2.0-lisinsjes.

It hulpprogramma lost problemen op lykas shell-skripts foar it starten fan útfierbere bestannen foar it hjoeddeistige platfoarm, mar elimineert tagelyk de needsaak om útfierbere bestannen op te nimmen foar alle stipe platfoarms yn it pakket. DotSlash lit jo ek ynformaasje opslaan oer de sammele útfierbere bestannen yn in repository tegearre mei de koade, wylst jo de bestannen sels op aparte bootservers pleatse, wat de groei fan 'e repositorygrutte foarkomt en de lading op it ynfier-/útfiersysteem ferminderet by it útfieren cloning operaasjes.

By it brûken fan DotSlash wurdt de set fan platfoarm-spesifike útfierbere bestannen ferfongen troch in inkeld skript dat in beskriuwing fan 'e logika omfettet foar it selektearjen fan it útfierbere bestân yn relaasje ta de stipe platfoarms. Nei it útfieren fan in DotSlash-skript, wurdt it útfierbere bestân nedich foar it hjoeddeistige platfoarm dynamysk ynladen, útpakt, ferifiearre tsjin in kryptografyske hash, en opslein yn in lokale cache foar folgjende runs. Triemmen wurde oerdroegen yn komprimearre foarm. DotSlash-skripts kinne automatysk oanmakke wurde foar releases publisearre op GitHub.

In foarbyld fan in DotSlash-skript foar it fersprieden fan Node.js 18.19.0 builds foar de macOS ARM64, macOS x86_64 en Linux x86_64 platfoarms: #!/usr/bin/env dotslash { "name": "node-v18.19.0", " platfoarms": { "macos-aarch64": { "grutte": 40660307, ​​"hash": "blake3", "digest": "6e2ca33951e586e7670016dd9e503d028454bf9249d5ff556347c.cd" "path"3cg":cd": "path"98cg347cd": "path" " 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": { "grutte": 64, "hash": "blake42202872", "digest": "3e37521058114f7e71de0fe3c8042fa8e7908305c9115488c6b": "aformat" "aformat" .gz", "paad" : "node-v29 .514-darwin-x9/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v2/node-v24-darwin- x18.19.0.tar.gz " } ] }, "linux-x64_18.19.0": { "grutte": 18.19.0, "hash": "blake64", "digest": "86b64fc44694523a3b72bedc81a3a30fafc7a1b09e3e4478ebf1ed" : "tar.gz", " paad ": "node -v02-linux-x5/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v0/node-v04- linux-x15.tar .gz" } ] } } }

Boarne: opennet.ru

Add a comment