Facebook on avannut koodin DotSlash-projektille

Facebook julkisti avoimen lähdekoodin dotslashin, komentorivityökalun, joka on suunniteltu helpottamaan suoritettavien tiedostojen jakamista eri alustoille. Apuohjelma on suunniteltu suorittamaan komentosarjoja, jotka automatisoivat nykyiselle alustalle sopivan suoritettavan tiedoston lataamisen ja tarkistavat sen eheyden ja suorituskyvyn. Apuohjelmakoodi on kirjoitettu Rust-kielellä ja sitä jaetaan MIT- ja Apache 2.0 -lisenssien alla.

Apuohjelma ratkaisee komentotulkkikomentosarjojen kaltaiset ongelmat suoritettavien tiedostojen käynnistämiseksi nykyiselle alustalle, mutta samalla eliminoi tarpeen sisällyttää paketin kaikkien tuettujen alustojen suoritettavat tiedostot. DotSlashin avulla voit myös tallentaa tietoja kerätyistä suoritettavista tiedostoista arkistoon koodin mukana ja sijoittaa itse tiedostot erillisiin käynnistyspalvelimiin, mikä estää arkiston koon kasvun ja vähentää syöttö-/tulostusjärjestelmän kuormitusta suorituksen aikana. kloonausoperaatiot.

DotSlashia käytettäessä alustakohtaiset suoritettavat tiedostot korvataan yhdellä skriptillä, joka sisältää kuvauksen suoritettavan tiedoston valintalogiikasta suhteessa tuettuihin alustoihin. DotSlash-komentosarjan suorittamisen jälkeen nykyiselle alustalle vaadittava suoritettava tiedosto ladataan dynaamisesti, puretaan, tarkistetaan salaustiivistettä vastaan ​​ja tallennetaan paikalliseen välimuistiin myöhempiä ajoja varten. Tiedostot siirretään pakatussa muodossa. DotSlash-skriptit voidaan luoda automaattisesti GitHubissa julkaistuille julkaisuille.

Esimerkki DotSlash-komentosarjasta Node.js 18.19.0 -koontiversioiden jakamiseen macOS ARM64-, macOS x86_64- ja Linux x86_64 -alustoille: #!/usr/bin/env dotslash { "nimi": "node-v18.19.0", " alustat”: { "macos-aarch64": { "koko": 40660307, ​​​​"hash": "blake3", "digest": "6e2ca33951e586e7670016dd9e503d028454bf9249d5ffc "556347atz"g3",98 "polku": " node- v347 -darwin-arm34/bin/node", "palveluntarjoajat": [ { "url": "https://nodejs.org/dist/v18.19.0/node-v64-darwin-arm18.19.0. tar.gz" } ] }, "macos-x18.19.0_64": { "koko": 86, "hash": "blake64", "digest": "42202872e3f37521058114e7de71fe0c3fa8042e8c7908305fa9115488e6c29c514b9fc2b24c18.19.0 : "tar.gz", "polku" : "node-v64 .18.19.0-darwin-x18.19.0/bin/node", "palveluntarjoajat": [ { "url": "https://nodejs.org/dist/v64/node-v86-darwin- x64.tar.gz " } ] }, "linux-x44694523_3": { "koko": 72, "hash": "blake81", "digest": "3b30fc7a1b09bedc3a4478a1fafc02a5b0d04form at": "tar.gz", " polku ": "node -v15-linux-x23/bin/node", "providers": [ { "url": "https://nodejs.org/dist/v3/node-v9- linux-x89212.tar .gz" } ] } } }

Lähde: opennet.ru

Lisää kommentti