@voilabs/cli
v1.3.0
Published
GitHub-based Package Manager for Voilabs
Readme
@voilabs/cli
bunx @voilabs/cli login --token <API_KEY>
bunx @voilabs/cli publish
bunx @voilabs/cli install @platform/abc
bunx @voilabs/cli install @platform/abc --version 1.2.3
bunx @voilabs/cli install @platform/abc --key vlk_...
bunx @voilabs/cli install --all
bunx @voilabs/cli list
bunx @voilabs/cli keygen --install-token <salt-okunur PAT>Registry olarak voilabs/packages kullanılır:
main: Build sonrası, kurulmaya hazır paketlerraw-main: Build öncesi kaynak snapshot'ları- Her iki branch:
<paket-adı>/<version>/{...files}
install yalnızca main branch'ini kullanır. --version verilmezse registry'deki
en yüksek geçerli semver sürümü seçilir.
installation_key
publish her paketin içine bir voilabs.json yazar:
{
"name": "@platform/abc",
"version": "1.2.3",
"installation_key": "vlk_..."
}- Key, kurulum için gereken GitHub token'ını
vlk_önekiyle kodlar. Varsayılan olarak önceki sürümün key'i korunur; ilk yayında oturum token'ından türetilir. Tercih edilen:voilabs publish --install-token <salt-okunur PAT>ile yalnızca registry'yi okuyabilen fine-grained bir PAT gömün. - Key'i alan biri
voilabs install @platform/abc --key vlk_...ile GitHub hesabı/PAT'i olmadan kurulum yapar.
⚠️
vlk_yalnızca kodlamadır, şifreleme değildir: key'i paylaşmak, içindeki token'ın erişimini paylaşmaktır. Bu yüzden key'lere salt-okunur PAT gömün.
voilabs-package.json
Her kurulum, proje kökündeki voilabs-package.json dosyasına paketi ve key'ini
işler:
{
"packages": {
"@platform/abc": { "version": "1.2.3", "installation_key": "vlk_..." }
}
}Bu dosyayı başka bir projeye kopyalayıp voilabs install --all çalıştırmak,
kayıtlı tüm paketleri kayıtlı sürüm ve key'leriyle kurar. İsteğe bağlı üst
seviye installation_key alanı, kaydı olmayan paketler için varsayılan key
olarak kullanılır.
list ve keygen
voilabs list: registry'deki tüm paketleri, sürümlerini ve her paketin installation_key durumunu gösterir (--keyile de erişilebilir).voilabs keygen [paket]:voilabs.json'ı veya key'i olmayan sürümleri bulur, otomatik key üretip registry'ninmainbranch'ine yazar. Paketin başka sürümünde key varsa aynı key eksik sürümlere uygulanır; paket tamamen key'sizse--install-tokenile verilen (yoksa oturum) token'ından yeni key üretilir. 1.1.0 öncesi yayınlanmış eski paketlere key dağıtmak için idealdir.
Kimlik doğrulama sırası
install için: --key → voilabs-package.json (paket kaydı → proje geneli) →
~/.voilabs_rc → VOILABS_TOKEN/GITHUB_TOKEN/GH_TOKEN → gh auth token →
git credential helper (örn. Git Credential Manager).
VOILABS_REGISTRY ortam değişkeni, registry URL'ini geçersiz kılar (test ve
self-hosting için).
git kurulu olmayan ortamlar
install ve list, ortamda git yoksa (örn. minimal Docker/CI imajları)
registry'yi otomatik olarak GitHub API tarball'ı üzerinden indirir; ek kurulum
gerekmez. publish ve keygen için git zorunludur (apt-get install -y git
/ apk add git).
