bundle 📦
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
📦 Gestisci i pacchetti di app per la distribuzione in Capgo Cloud, inclusa l'upload, le verifiche di compatibilità e l'encryption.
⬆️ Upload
Sottosezione intitolata “ ⬆️ Upload”Alias: u
npx @capgo/cli@latest bundle upload⬆️ Carica un nuovo pacchetto di app in Capgo Cloud per la distribuzione. La versione deve essere > 0.0.0 e univoca. Le versioni cancellate non possono essere riutilizzate per motivi di sicurezza. Opzione esterna: Memorizza solo un collegamento URL (utile per app >200MB o requisiti di privacy). Capgo non esamina mai il contenuto esterno. Aggiungi l'encryption per una sicurezza senza fiducia.
Esempio:
npx @capgo/cli@latest bundle upload com.example.app --path ./dist --channel production,betaAggiorna automaticamente la prossima versione semver gratuita dal canale (o l'ultima versione remota dell'app) quando non passi --bundleUtile in CI quando package.json già corrisponde a una versione Capgo:
npx @capgo/cli@latest bundle upload --channel=production --auto-bumpnpx @capgo/cli@latest bundle upload --auto-bump majornpx @capgo/cli@latest bundle upload --auto-bump minor # default when the flag has no valuenpx @capgo/cli@latest bundle upload --auto-bump patch # alias: fixnpx @capgo/cli@latest bundle upload --auto-bump metadatanpx @capgo/cli@latest bundle upload --channel=production --auto-bump aiCon --auto-bump ai, Capgo Cloudflare Workers AI confronta i file del bundle locale con il manifesto delta del canale precedente Capgo, inferisce major | minor | patch | metadatae stampa una breve ragione nel CLI log. Se non esiste alcuna versione precedente Capgo, l'AI viene saltata e l'aggiornamento predefinito è patch.
Opzioni:
| Parametri | Tipo | Descrizione |
|---|---|---|
| –a | string | API chiave per collegarsi al tuo account |
| –p | string | Percorso della cartella da caricare, se non fornito utilizzerà il webDir impostato in capacitor.config |
| –c | string | Canale da collegare. Utilizza virgole per più canali, ad esempio production,beta |
| –rollout | string | Imposta il bundle caricato come obiettivo di distribuzione per questo canale a un percentuale da 0 a 100 |
| –rollout-percentage-bps | string | Imposta la percentuale di distribuzione del bundle caricato in punti base da 0 a 10000 |
| —cache-ttl-seconds-del-rolloout | string | Cloudflare TTL del cache per la decisione di distribuzione in secondi |
| -e | string | Collega all'URL esterno anziché caricare su Capgo Cloud |
| —chiave-di-sessione-iv | string | Imposta la chiave di IV e di sessione per l'URL del bundle esterno |
| —regione-di-s3 | string | Regione per il tuo bucket S3 |
| —chiave-di-s3-apis | string | API chiave per il tuo endpoint S3 |
| —segreto-di-s3-apis | string | API segreto per il tuo endpoint S3 |
| —endpoint S3 | string | URL dell'endpoint S3 |
| —nome cesta S3 | string | Nome per la tua cesta S3 AWS |
| —porta S3 | string | Porta per il tuo endpoint S3 |
| —no-SSL S3 | boolean | Disabilita SSL per l'upload S3 |
| —chiave v2 | string | Percorso personalizzato per la chiave di firma privata (sistema v2) |
| —dati chiave v2 | string | Chiave di firma privata (sistema v2) |
| —bundle-url | boolean | Stampa l'URL del bundle nella console |
| —no-key | boolean | Ignora la chiave di firma e invia l'aggiornamento in chiaro |
| —no-code-check | boolean | Ignora la verifica se notifyAppReady() è chiamato nel file sorgente code e se l'indice è presente nella cartella radice |
| —display-iv-session | boolean | Mostra nella console la chiave IV e di sessione utilizzate per cifrare l'aggiornamento |
| -b | string | Numero di versione del bundle da caricare |
| —auto-bump | string | Auto-incrementa dal bundle collegato al canale, altrimenti la versione più recente dell'applicazione remota. Livello: maggiore, minore (predefinito), patch (alias riparo), metadati, o ai (Workers AI inferisce il livello dal manifesto locale vs precedente delta; ricade su patch con nessuna versione precedente Capgo). Incrementa fino a quando non viene trovato un nome libero (i nomi cancellati occupano ancora lo spazio). Non può essere combinato con —bundle (-b) |
| —collega | string | Collega a una risorsa esterna (ad esempio GitHub rilascio) |
| —commento | string | Commento su questa versione, potrebbe essere un nota di rilascio, un hash di commit, un messaggio di commit, ecc. |
| —minima-versione-di-aggiornamento | string | Versione minima richiesta per aggiornarsi a questa versione. Utilizzato solo se l'aggiornamento automatico è disabilitato per i metadati nel canale |
| —aggiorna-minima-versione-di-aggiornamento | boolean | Imposta la versione di aggiornamento minima basata sui pacchetti nativi |
| —ignora-verifica-metadati | boolean | Ignora la verifica dei metadati (node_modules) durante l'upload |
| —falli-se-incompatibile | boolean | Falla l'upload (uscire con codice di uscita non zero) al posto di caricare quando il bundle è incompatibile con i pacchetti nativi del canale corrente. In un terminale interattivo puoi ancora scegliere una costruzione nativa; rifiutare fallisce. Non può essere combinato con —ignore-metadata-check. |
| —ignore-checksum-check | boolean | Ignores il controllo del checksum quando si carica |
| —force-crc32-checksum | boolean | Forza il controllo del checksum CRC32 per l'upload (sovrascrive la detezione automatica) |
| —timeout | string | Timeout per il processo di caricamento in secondi |
| —multipart | boolean | [DEPRECATED] Utilizza —tus invece. Utilizza il protocollo multipart per gli upload S3 |
| —zip | boolean | Carica il bundle utilizzando zip a Capgo cloud (legacy) |
| —tus | boolean | Carica il bundle utilizzando TUS a Capgo cloud |
| —tus-chunk-size | string | Dimensione del chunk in byte per le upload TUS ripristinabili (predefinito: auto) |
| —parziale | boolean | [DEPRECATO] Utilizza —delta invece. Carica aggiornamenti incrementali |
| —parziale-solo | boolean | [DEPRECATO] Utilizza —delta-solo invece. Carica solo aggiornamenti incrementali, saltando il bundle completo |
| —delta | boolean | Carica aggiornamenti delta (solo file modificati) per aggiornamenti istantanei e velocissimi al posto di grandi download zip |
| —delta-solo | boolean | Carica solo aggiornamenti delta senza bundle completo per massima velocità (utile per grandi app) |
| —senza-delta | boolean | Disabilita gli aggiornamenti delta anche se gli aggiornamenti istantanei sono abilitati |
| – checksum crittografato | string | Un checksum crittografato (firma). Utilizzato solo quando si carica un bundle esterno. |
| – impostazione bundle automatica | boolean | Imposta il bundle in capacitor.config.json |
| – caricamento secco | boolean | Caricamento secco del processo del bundle: aggiungi la riga nel database senza caricare file o aggiornare canali (Usato da Capgo per test interni) |
| – file package.json | string | Periferiche di file package.json per progetti monorepo (separate da virgole) |
| – directory node_modules | string | Periferiche di directory node_modules per progetti monorepo (separate da virgole) |
| – crittografia parziale | boolean | Crittografa i file di aggiornamento delta (abilitato automaticamente per l'aggiornatore > 6.14.4) |
| —elimina-bundle-collegato-all'upload | boolean | Cerca il bundle collegato attualmente nel canale che stai cercando di caricare e lo elimina |
| —no-patterni-brotli | string | File da escludere dalla compressione Brotli (glob separati da virgole, ad esempio “.jpg,.png”) |
| —disabilita-brotli | boolean | Disabilita completamente la compressione Brotli anche se la versione dell'aggiornatore lo supporta |
| —esiste-la-versione-ok | boolean | Esegui con successo se la versione del bundle esiste già, utile per i flussi di lavoro CI/CD con progetti monorepo |
| —assegna-si-stesso | boolean | Consenti ai dispositivi di unirsi automaticamente a questo canale (impostazione aggiornamento canale) |
| —anteprima-qr | boolean | Print a terminal QR code for this bundle preview after upload |
| —invia-notifica-aggiornamento | boolean | Invia una notifica di controllo aggiornamento nativa ai dispositivi dopo aver aggiornato i pacchetti dei canali collegati |
| —host-supabase | string | URL host Supabase personalizzato (per l'auto-hosting o lo sviluppo Capgo) |
| —chiave-anon-supabase | string | Chiave anonima Supabase personalizzata (per l'auto-hosting) |
| —verboso | boolean | Abilita l'output verboso con registrazione dettagliata |
🧪 Compatibilità
Sezione intitolata “ Compatibility”npx @capgo/cli@latest bundle compatibilityControlla la compatibilità di un pacchetto con un canale specifico nel Capgo Cloud per assicurarti che le aggiornamenti siano sicuri.
Esempio:
npx @capgo/cli@latest bundle compatibility com.example.app --channel productionOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| -a | string | API chiave per collegarsi al tuo account |
| -c | string | Canale per verificare la compatibilità con |
| —testo | boolean | Visualizza il testo anziché gli emoji |
| —package-json | string | Periferiche per file package.json nei monorepositori (separate da virgole) |
| —node-modules | string | Periferiche per directory node_modules nei monorepositori (separate da virgole) |
| —supa-host | string | URL host personalizzato di Supabase (per hosting self o Capgo sviluppo) |
| —supa-anon | string | Chiave anonima personalizzata di Supabase (per l'hosting self-service) |
🔹 Tipo di rilascio
Sezione intitolata “ 🔹 Tipo di rilascio”npx @capgo/cli@latest bundle releaseType🧭 Stampa “nativo” o “OTA” in base alla compatibilità con i metadati più recenti di un canale.
Esempio:
npx @capgo/cli@latest bundle releaseType com.example.app --channel productionOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| -a | string | chiave API per collegarsi al proprio account |
| -c | string | Canale da confrontare |
| —package-json | string | Percorsi dei file package.json per progetti monorepo (separati da virgola) |
| —node-modules | string | Percorsi dei directory node_modules per progetti monorepo (separati da virgola) |
| —supa-host | string | URL host personalizzato di Supabase (per hosting self o sviluppo Capgo) |
| —supa-anon | string | Chiave anonima personalizzata di Supabase (per l'hosting self-service) |
🗑️ Elimina
Sezione intitolata “ Elimina”Alias: d
npx @capgo/cli@latest bundle deleteElimina un bundle specifico da Capgo Cloud, facoltativamente con un riferimento a una versione singola.
Esempio:
npx @capgo/cli@latest bundle delete BUNDLE_ID com.example.appOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| -a | string | API chiave per collegarsi al tuo account |
| —supa-host | string | URL host personalizzato di Supabase (per l'hosting self o lo sviluppo Capgo) |
| —supa-anon | string | Chiave anonima personalizzata di Supabase (per l'hosting self) |
📋 Elenco
Sezione intitolata “ Elenco”Alias: l
npx @capgo/cli@latest bundle list📋 Elenco di tutti i bundle caricati per un'app in Capgo Cloud.
Esempio:
npx @capgo/cli@latest bundle list com.example.appOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| -a | string | API chiave per collegarsi al proprio account |
| --supa-host | string | URL host personalizzato di Supabase (per l'hosting self o lo sviluppo Capgo) |
| —supa-anon | string | Chiave anonima personalizzata di Supabase (per l'hosting self) |
🧹 Pulizia
Sezione intitolata “ 🧹 Pulizia”Alias: c
npx @capgo/cli@latest bundle cleanup🧹 Elimina le vecchie raccolte in Capgo Cloud, mantenendo il numero specificato di versioni recenti. Le raccolte associate ai canali sono conservate a meno che non si utilizzi —ignore-channel.
Esempio:
npx @capgo/cli@latest bundle cleanup com.example.app --bundle=1.0 --keep=3Opzioni:
| Param | Tipo | Descrizione |
|---|---|---|
| -b | string | Numero di versione del pacchetto dell'applicazione da eliminare |
| -a | string | API chiave per collegarsi al tuo account |
| -k | string | Numero di versioni da mantenere |
| -f | boolean | Forzare la rimozione |
| ---ignora-canale | boolean | Cancella i pacchetti anche se collegati a canali (AVVISO: cancella anche i canali) |
| ---supa-host | string | URL host personalizzato di Supabase (per hosting self o Capgo sviluppo) |
| ---supa-anon | string | Chiave anonima personalizzata di Supabase (per hosting self) |
🔒 Cifrare
Sottosezione intitolata “ 🔒 Cifrare”npx @capgo/cli@latest bundle encryptCifrare un pacchetto zip per un archiviazione esterna sicura. Restituisce ivSessionKey per l'upload/decrittografia. Ottieni checksum usando ‘pacchetto zip —json’.
Esempio:
npx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUMOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| —chiave | string | Percorso personalizzato per la chiave di firma privata |
| —chiave-dati | string | Chiave di firma privata |
| -j | boolean | Output in formato JSON |
| ---package-json | string | Permessi di accesso ai file package.json per progetti monorepo (separati da virgola) |
🔓 Decrittografare
Sottosezione intitolata “ Decrittografare”npx @capgo/cli@latest bundle decryptDecrittografa un bundle crittografato (principalmente per test).
Stampa la chiave di sessione base64 per la verifica.
npx @capgo/cli@latest bundle decrypt ./myapp_encrypted.zip CHECKSUMCopia negli appunti
| Opzioni: | Tipo | Descrizione |
|---|---|---|
| —chiave | string | Percorso personalizzato per la chiave di firma privata |
| —chiave-dati | string | Chiave di firma privata |
| —checksum | string | Checksum del pacchetto, per verificare l'integrità del pacchetto |
| —package-json | string | Permessi per i file package.json per i monorepos (separati da virgole) |
npx @capgo/cli@latest bundle zip🗜️ Crea un file zip del tuo bundle di app. Restituisce il checksum per l'uso con la crittografia. Utilizza —json per l'output leggibile da macchina.
Esempio:
npx @capgo/cli@latest bundle zip com.example.app --path ./distOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| p | string | Percorso del folder da caricare, se non fornito utilizzerà il webDir impostato in capacitor.config |
| -b | string | Numero di versione del bundle per denominare il file zip |
| -n | string | Nome del file zip |
| -j | boolean | Esegui in formato JSON |
| —no-code-check | boolean | Ignora la verifica se notifyAppReady() viene chiamata nel file code di origine e indice presente nella cartella radice |
| —key-v2 | boolean | Usa l'encryption v2 |
| —package-json | string | Percorso dei file package.json per i monorepos (separati da virgole) |