📦 Pacchetto
Copiare una richiesta di impostazione con i passaggi di installazione e la guida markdown completa per questo plugin.
📦 Gestire i pacchetti dell'applicazione per la distribuzione in Capgo Cloud, compresa l'upload, le verifiche di compatibilità e l'encryption.
⬆️ Upload
Sezione intitolata “ ⬆️ Carica”Alias: u
npx @capgo/cli@latest bundle upload⬆️ Carica un nuovo bundle dell'applicazione su 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 le app >200MB o per le esigenze 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,betaOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| -a | string | chiave API per collegarsi al proprio account |
| -p | string | Percorso del folder da caricare, se non fornito utilizzerà il webDir impostato in capacitor.config |
| -c | string | Canale da collegare. Utilizzare virgole per più canali, ad esempio production,beta |
| —rollout | string | Imposta il bundle caricato come obiettivo di distribuzione per il canale specificato 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 |
| —rollout-cache-ttl-seconds | string | Cache TTL per la decisione di distribuzione di Cloudflare in secondi |
| -e | string | Collega un link all'URL esterno al posto dell'upload su Capgo Cloud |
| —iv-session-key | string | Imposta la chiave IV e la chiave di sessione per l'URL del pacchetto esterno |
| —s3-region | string | Regione per il tuo bucket S3 |
| —s3-apikey | string | API chiave per il tuo endpoint S3 |
| —s3-apisecret | string | API segreto per il tuo endpoint S3 |
| —s3-endpoint | string | URL dell'endpoint S3 |
| —nome-bucket-s3 | string | Nome per il tuo bucket 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) |
| —chiave-dati-v2 | string | Chiave di firma privata (sistema v2) |
| —url-bundle | 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 il controllo se notifyAppReady() viene chiamato nella sorgente code e 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 |
| —link | string | Collegamento a risorsa esterna (ad esempio GitHub release) |
| —comment | string | Commento su questa versione, potrebbe essere un messaggio di rilascio, un hash di commit, un messaggio di commit, ecc. |
| —min-update-version | string | Versione minima richiesta per aggiornarsi a questa versione. Utilizzato solo se l'aggiornamento automatico è disabilitato nel canale |
| —auto-min-update-version | boolean | Imposta la versione di aggiornamento minima in base ai pacchetti nativi |
| —ignore-metadata-check | boolean | Ignora il controllo dei metadati (node_modules) durante l'upload |
| —fail-on-incompatible | boolean | Fallisce l'upload (uscita non zero) al posto di caricare quando il pacchetto è incompatibile con le attuali versioni dei pacchetti nativi del canale. In un terminale interattivo puoi ancora scegliere una versione nativa; rifiutando fallisci. Non può essere combinato con —ignore-metadata-check. |
| —ignore-checksum-check | boolean | Ignora il controllo del checksum durante l'upload |
| —force-crc32-checksum | boolean | Forza il checksum CRC32 per l'upload (sovrascrive la detezione automatica) |
| —timeout | string | Timeout per il processo di upload in secondi |
| —multipart | boolean | [DEPRECATED] Utilizza —tus invece. Utilizza il protocollo multipart per gli upload su S3 |
| —zip | boolean | Carica il bundle utilizzando zip nel Capgo cloud (legacy) |
| —tus | boolean | Carica il bundle utilizzando TUS nel Capgo cloud |
| —tus-chunk-size | string | Dimensione del chunk in byte per gli upload TUS ripetibili (default: auto) |
| —partial | boolean | [DEPRECATED] Utilizza —delta invece. Carica aggiornamenti incrementali |
| —parziale-solo | boolean | [DEPRECATED] Utilizza —delta-solo invece. Carica solo aggiornamenti incrementali, saltando il bundle completo |
| —delta | boolean | Carica aggiornamenti delta (solo file modificati) per aggiornamenti istantanei, super-veloci al posto di download zip grandi |
| —delta-solo | boolean | Carica solo aggiornamenti delta senza bundle completo per la massima velocità (utile per app grandi) |
| —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 |
| —imposta-bundle-automatico | boolean | Imposta il bundle in capacitor.config.json |
| —carico-secco | boolean | Carica in modo secco il processo del bundle: aggiungi la riga nel database senza caricare file o aggiornare canali (Usato da Capgo per test interni) |
| —package-json | string | Permessi per file package.json nei monorepos (separati da virgola) |
| —node-modules | string | Permessi per directory node_modules nei monorepos (separati da virgola) |
| —cifra-parziale | boolean | Cifra file di aggiornamento delta (abilitato automaticamente per aggiornatore > 6.14.4) |
| —elimina-bundle-collegato-al-carico | boolean | Localizza il bundle attualmente collegato al canale che stai cercando di caricare, e lo elimina |
| —no-brotli-patterns | string | File da escludere dalla compressione Brotli (globs separati da virgola, ad esempio “.jpg,.png |
| —disabilita-brotli | boolean | Disabilita completamente la compressione Brotli anche se la versione dell'aggiornamento lo supporta |
| —versione-esiste-ok | boolean | Esci con successo se la versione del pacchetto già esiste, utile per i flussi di lavoro CI/CD con progetti monorepo |
| —auto-iscriviti | boolean | Consenti ai dispositivi di unirsi automaticamente a questo canale (aggiorna le impostazioni del canale di aggiornamento) |
| —anteprima-qrcode | boolean | Print a terminal QR code for this bundle preview after upload |
| —invia-notifica-aggiornamento | boolean | Invia una notifica di controllo di aggiornamento nativa ai dispositivi dopo aver aggiornato i pacchetti collegati del canale |
| —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) |
| —verbose | boolean | Abilita l'output verboso con registrazione dettagliata |
🧪 Compatibilità
Sezione intitolata “ 🧪 Compatibilità”npx @capgo/cli@latest bundle compatibility🧪 Verifica la compatibilità di un bundle con un canale specifico in Capgo Cloud per assicurarsi che gli 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 | Testo di output al posto degli emoji |
| —package-json | string | Percorso dei file package.json per i monorepos (separati da virgola) |
| —node-modules | string | Percorso dei directory node_modules per i monorepos (separati da virgola) |
| —supa-host | string | URL del host personalizzato per Supabase (per l'auto-hosting o lo sviluppo Capgo) |
| —supa-anon | string | Chiave anonima personalizzata per Supabase (per l'auto-hosting) |
🔹 Tipo di rilascio
Sottosezione intitolata “ 🔹 Tipo di rilascio”npx @capgo/cli@latest bundle releaseTypeStampa ‘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 | API chiave per collegarsi al proprio account |
| -c | string | Canale da confrontare con |
| —package-json | string | Percorso dei file package.json per i monorepos (separati da virgola) |
| —node-modules | string | Percorso dei directory node_modules per i monorepos (separati da virgola) |
| —supa-host | string | URL del host personalizzato per Supabase (per l'auto hosting o lo sviluppo Capgo) |
| —supa-anon | string | Chiave anonima personalizzata per Supabase (per l'auto hosting) |
🗑️ Elimina
Sezione intitolata “ 🗑️ Elimina”Alias: d
npx @capgo/cli@latest bundle delete🗑️ Elimina un bundle specifico da Capgo Cloud, facoltativamente scegliendo 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 pacchetti 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 tuo account |
| —supa-host | string | URL personalizzato di host Supabase (per hosting self o Capgo sviluppo) |
| —supa-anon | string | Chiave anonima personalizzata Supabase (per hosting self) |
🧹 Pulizia
Sottosezione intitolata “ 🧹 Pulizia”Alias: c
npx @capgo/cli@latest bundle cleanup🧹 Elimina gli archivi vecchi in Capgo Cloud, mantenendo il numero specificato di versioni recenti. Gli archivi collegati ai canali sono preservati a meno che non si utilizzi —ignore-channel.
Esempio:
npx @capgo/cli@latest bundle cleanup com.example.app --bundle=1.0 --keep=3Opzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| -b | string | Numero di versione del pacchetto dell'applicazione da eliminare |
| -a | string | Chiave API per collegarsi al tuo account |
| -k | string | Numero di versioni da mantenere |
| -f | boolean | Rimozione forzata |
| —ignore-channel | boolean | Elimina i pacchetti anche se collegati a canali (AVVISO: elimina anche i canali) |
| —supa-host | string | URL del host Supabase personalizzato (per l'auto-hosting o lo sviluppo Capgo) |
| —supa-anon | string | Chiave anonima personalizzata di Supabase (per l'hosting self-service) |
🔒 Crittografa
Sezione intitolata “ 🔒 Crittografa”npx @capgo/cli@latest bundle encryptCrittografa un bundle zip per un archiviazione esterna sicura. Restituisce ivSessionKey per l'upload/decrittografia. Ottieni checksum utilizzando ‘bundle 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 | Percorso dei file package.json per i monorepositori (separati da virgole) |
🔓 Sfida crittografica
Sezione intitolata “ 🔓 Sfida crittografica”npx @capgo/cli@latest bundle decrypt🔓 Decrittografa un bundle crittografato (principalmente per test). Stampa la chiave di sessione base64 per la verifica.
Esempio:
npx @capgo/cli@latest bundle decrypt ./myapp_encrypted.zip CHECKSUMOpzioni:
| Parametro | Tipo | Descrizione |
|---|---|---|
| —chiave | string | Percorso personalizzato per la chiave di firma privata |
| —chiave-dati | string | Chiave di firma privata |
| —checksum | string | Checksum del bundle, per verificare l'integrità del bundle |
| —package-json | string | Periferiche package.json per progetti monorepo (separate da virgole) |
npx @capgo/cli@latest bundle zip🗜️ Crea un file zip del tuo bundle di app. Restituisce checksum per l'uso con l'encryption. 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 | Output in JSON |
| —no-code-check | boolean | Ignora la verifica se notifyAppReady() viene chiamata nel file sorgente code e l'indice presente nella cartella radice |
| —key-v2 | boolean | Usa la crittografia v2 |
| —package-json | string | Periferiche dei file package.json per progetti monorepo (separati da virgole) |