Stockage personnalisé
Copiez un prompt de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Capgo propose des solutions de stockage personnalisées pour vos lots d'application, vous permettant de héberger vos mises à jour sur votre propre infrastructure ou sur des services de stockage tiers. Cela est particulièrement utile pour les organisations ayant des exigences de sécurité spécifiques, des besoins de conformité ou une infrastructure de stockage existante.
Vue d'ensemble
Section intitulée « Vue d'ensemble »Le stockage personnalisé dans Capgo fonctionne en téléchargeant votre lot sur un emplacement externe et en fournissant à Capgo l'URL pour y accéder. Le Capgo SDK téléchargera ensuite les mises à jour directement de votre emplacement de stockage personnalisé au lieu du stockage cloud par défaut de Capgo.
Téléchargement d'URL externe
Titré “Chargement d’un URL externe”La manière la plus simple d'utiliser un stockage personnalisé est d'uploader votre bundle sur n'importe quelle URL accessible au public et de fournir cette URL à Capgo.
Téléchargement d'URL externe de base
Sous-section intitulée « Téléchargement d'URL externe de base »npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zipCette commande indique à Capgo de référencer le bundle à l'URL spécifiée au lieu de l'uploader dans le stockage cloud de Capgo.
Avec Chiffrement
Section intitulée « Avec Chiffrement »Pour un stockage externe sécurisé, vous pouvez chiffrer votre bundle et fournir les clés de déchiffrement :
npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zip --iv-session-key YOUR_IV_SESSION_KEYCapgo provides built-in support for Amazon S3 and S3-compatible storage services. The CLI can automatically upload your bundle to S3 and configure Capgo to use the S3 URL.
Section intitulée « Options de téléchargement S3 »
Section intitulée « Options de téléchargement S3 »npx @capgo/cli@latest bundle upload \ --s3-region us-east-1 \ --s3-apikey YOUR_ACCESS_KEY \ --s3-apisecret YOUR_SECRET_KEY \ --s3-bucket-name your-bucket-nameConfiguration S3 complète
Section intitulée « Configuration S3 complète »For S3-compatible services or custom endpoints:
npx @capgo/cli@latest bundle upload \ --s3-region us-east-1 \ --s3-apikey YOUR_ACCESS_KEY \ --s3-apisecret YOUR_SECRET_KEY \ --s3-endpoint https://s3.your-provider.com \ --s3-bucket-name your-bucket-name \ --s3-port 443 \ --no-s3-ssl # Only if your endpoint doesn't support SSLParamètres de configuration S3
Section intitulée « Paramètres de configuration S3 »| Paramètre | Description | Obligatoire |
|---|---|---|
--s3-region | Région AWS pour votre conteneur S3 | Oui |
--s3-apikey | Clé d'accès S3 | Oui |
--s3-apisecret | Clé secrète d'accès S3 | Oui |
--s3-bucket-name | Nom de votre conteneur S3 | Oui |
--s3-endpoint | URL de l'endpoint S3 personnalisé | Non |
--s3-port | Port de l'endpoint S3 | Non |
--no-s3-ssl | Désactiver SSL pour l'upload S3 | Non |
Préparation et Chiffrement du Bundle
Titre de la section « Préparation et Chiffrement du Bundle »Lorsque vous utilisez un stockage personnalisé, notamment avec le chiffrement, vous devez préparer vos bundles correctement. Cela implique la création d'un fichier zip et le chiffrement facultatif.
Étape 1 : Créer un Bundle Zip
Section titled “Step 1: Create a Zip Bundle”Créez d'abord un fichier zip de votre bundle d'application :
npx @capgo/cli@latest bundle zip com.example.app --path ./distThe zip command will return the checksum of the zip file. You can use this checksum to encrypt the zip file if needed. Use the --json Faculté de récupérer un résultat structuré incluant le checksum.
Options de commande Zip
Section titled “Zip Command Options”npx @capgo/cli@latest bundle zip [appId] \ --path ./dist \ --bundle 1.2.3 \ --name myapp-v1.2.3 \ --json \ --no-code-check \ --key-v2 \ --package-json ../../package.json,./package.json| Option | Description |
|---|---|
--path | Chemin du dossier à archiver (par défaut webDir de capacitor.config) |
--bundle | Numéro de version du Bundle pour nommer le fichier zip |
--name | Nom personnalisé pour le fichier zip |
--json | Résultats en format JSON (inclus checksum) |
--no-code-check | Ignorer la vérification de la fonction notifyAppReady() et du fichier index |
--key-v2 | Utiliser l'encryption v2 |
--package-json | Chemins des fichiers package.json pour les monorepos (séparés par des virgules) |
Étape 2 : Chiffrer le Bundle (Facultatif)
Section intitulée “Étape 2 : Chiffrer le Bundle (Optionnel)”Pour une sécurité renforcée, chifrez votre archive zip avant de l'uploader :
# Using default local keynpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM
# Using custom key filenpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM --key ./path/to/.capgo_key_v2
# Using key data directlynpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM --key-data "PRIVATE_KEY_CONTENT"Le CHECKSUM ce paramètre est obligatoire et doit être le checksum de votre fichier zip. Vous pouvez obtenir le checksum à partir de la sortie de la commande zip (utilisez --json l'option pour une sortie structurée).
Par défaut, la commande de chiffrement utilisera votre clé privée de signature locale. Vous pouvez spécifier une clé personnalisée à l'aide de --key ou --key-data options.
La commande de chiffrement retournera le ivSessionKey nécessaire pour l'upload ou la déchiffrement.
Options de commande d'encryption
Section intitulée « Options de commande d'encryption »| Option | Description |
|---|---|
zipPath | Chemin du fichier zip à chiffrer (obligatoire) |
checksum | Checksum du fichier zip (obligatoire) - obtenez-l’à partir de la commande zip |
--key | Chemin personnalisé pour la clé de signature privée (facultatif, utilise par défaut la clé locale) |
--key-data | Données de la clé de signature privée directement (facultatif) |
--json | Résultats de sortie sous format JSON |
Exemples complets de workflow
Section intitulée « Exemples complets de workflow »Exemple 1 : URL externe avec encryption
Section intitulée « Exemple 1 : URL externe avec encryption »-
Construire votre application :
Fenêtre de terminal npm run build -
Créer un zip bundle :
Fenêtre de terminal npx @capgo/cli@latest bundle zip com.example.app --path ./dist --bundle 1.2.3Notez le checksum retourné par cette commande.
-
Chifrez le bundle :
Fenêtre de terminal npx @capgo/cli@latest bundle encrypt ./com.example.app-1.2.3.zip CHECKSUM_FROM_STEP_2Notez le
ivSessionKeyà partir de l'output. -
Téléchargez sur votre stockage : Téléchargez le fichier zip chiffré sur votre service de hébergement.
-
Inscrivez-vous avec Capgo :
Fenêtre de terminal npx @capgo/cli@latest bundle upload \--external https://your-cdn.com/bundles/com.example.app-1.2.3.zip \--iv-session-key IV_SESSION_KEY_FROM_STEP_3
Exemple 2 : Téléchargement direct S3
Titre de la section « Exemple 2 : Téléchargement direct S3 »-
Construire votre application :
Fenêtre de terminal npm run build -
Télécharger directement sur S3 :
Fenêtre de terminal npx @capgo/cli@latest bundle upload \--s3-region us-west-2 \--s3-apikey YOUR_ACCESS_KEY \--s3-apisecret YOUR_SECRET_KEY \--s3-bucket-name your-app-bundles \--channel Production
Exemple 3 : S3 avec chiffrement
Titre de la section « Exemple 3 : S3 avec chiffrement »-
Construire et compresser :
Fenêtre de terminal npm run buildnpx @capgo/cli@latest bundle zip com.example.app --path ./dist --key-v2 -
Chiffrer le bundle :
Fenêtre de terminal npx @capgo/cli@latest bundle encrypt ./com.example.app.zip CHECKSUM -
Télécharger sur S3 avec chiffrage :
Fenêtre de terminal npx @capgo/cli@latest bundle upload \--s3-region us-west-2 \--s3-apikey YOUR_ACCESS_KEY \--s3-apisecret YOUR_SECRET_KEY \--s3-bucket-name your-app-bundles \--iv-session-key IV_SESSION_KEY_FROM_STEP_2 \--channel Production
Considérations de sécurité
Section intitulée « Considérations de sécurité »Lors de l'utilisation d'un stockage personnalisé, considérez ces bonnes pratiques de sécurité :
Contrôle d'accès
Section intitulée « Contrôle d'accès »- Assurez-vous que vos URL de stockage soient accessibles à vos utilisateurs d'application mais pas découvrables publiquement
- Utilisez des URL signées ou une authentification basée sur des jetons lorsque possible.
- Implémentez les en-têtes CORS appropriés pour les applications web
Chiffrement
Section intitulée « Chiffrement »- Utilisez toujours les outils d'encryption Capgo pour chiffrer les bundles sensibles.
- Stockez les clés de chiffrement de manière sécurisée et les renouvelez régulièrement
- Utilisez HTTPS pour toutes les URL de bundle (obligatoire pour les applications mobiles et Electron)
Surveillance
Section intitulée « Surveillance »- Monitor access logs to detect unusual download patterns
- Set up alerts for failed bundle downloads
- Vérifiez régulièrement vos autorisations de stockage
Troubleshooting
Section intitulée « Résolution des problèmes »Problèmes courants
Section intitulée « Problèmes courants »Le bundle ne télécharge pas :
- Vérifiez que l'URL est accessible au public et utilise HTTPS (obligatoire pour les applications mobiles et Electron)
- Vérifiez les en-têtes CORS pour les applications web
- Assurez-vous que le format du bundle est correct
Erreurs de chiffrement :
- Vérifiez que le
ivSessionKeycorrespond au bundle chiffré - Vérifiez que le bundle a été chiffré avec la bonne clé
- Utilisez l'encryption v2 pour les nouveaux lots
Échecs d'upload S3 :
- Vérifiez vos identifiants et vos permissions S3
- Vérifiez les politiques de votre bac et la configuration CORS
- Assurez-vous que la région spécifiée est correcte
Commandes de débogage
Section intitulée « Commandes de débogage »Vérifiez l'état du lot :
npx @capgo/cli@latest app debugVérifiez l'intégrité du lot :
npx @capgo/cli@latest bundle listÉtapes suivantes
Section intitulée « Étapes suivantes »- Apprenez à Canaux pour gérer différents environnements de déploiement
- Découvrez Mise à jour personnaliser l'application des mises à jour
- Configurer Intégration CI/CD pour automatiser votre flux de stockage personnalisé
Continuez de là depuis Stockage personnalisé
Titre de la section « Continuez de là depuis Stockage personnalisé »Si vous utilisez Stockage personnalisé pour planifier la sécurité et la conformité, connectez-l’à Chiffrement pour le détail d'implémentation dans Chiffrement, Conformité pour le détail d'implémentation dans Conformité, Capgo Scanner de sécurité pour le flux de travail du produit dans Capgo Scanner de sécurité, Capgo Sécurité pour le flux de travail du produit dans Capgo Sécurité, et le Centre de confiance Capgo pour le flux de travail du produit dans le Centre de confiance Capgo