Stockage personnalisé
Copiez une commande 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 ensembles de packages, vous permettant d'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 besoins de sécurité spécifiques, des exigences 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 bundle vers 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
Section intitulée « Téléchargement d'URL externe »La méthode la plus simple pour utiliser le stockage personnalisé est de télécharger votre bundle vers n'importe quelle URL accessible au public et de fournir cette URL à Capgo.
Téléchargement de URL externe de base
Section intitulée « Téléchargement de 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'adresse URL spécifiée au lieu de le télécharger 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_KEYIntégration S3
Section intitulée « Intégration S3 »Capgo offre une prise en charge intégrée pour Amazon S3 et les services de stockage S3 compatibles. Le CLI peut télécharger automatiquement votre bundle vers S3 et configurer Capgo pour utiliser l'URL S3.
S3 Options d'envoi
Section intitulée « S3 Options d'envoi »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 »Pour les services de stockage S3 compatibles ou les points de terminaison personnalisés :
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 | ID de 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 point de terminaison S3 personnalisé | Non |
--s3-port | Port pour l'endpoint S3 | Non |
--no-s3-ssl | Désactiver SSL pour l'upload S3 | Non |
Préparation et chiffrement du paquet
Section intitulée « Préparation et chiffrement du paquet »Lorsque vous utilisez un stockage personnalisé, en particulier avec le chiffrement, vous devez préparer vos paquets correctement. Cela implique la création d'un fichier zip et le chiffrement facultatif.
Étape 1 : Créer un paquet Zip
Section intitulée « Étape 1 : Créer un paquet Zip »Créez d'abord un fichier zip de votre paquet d'application :
npx @capgo/cli@latest bundle zip com.example.app --path ./distLa commande zip renverra le checksum du fichier zip. Vous pouvez utiliser ce checksum pour chiffrer le fichier zip si nécessaire. Utilisez l'option pour obtenir un résultat structuré incluant le checksum. --json Options de la commande Zip
Section intitulée « Options de la commande Zip »
Fenêtre de terminalnpx @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| Description | Chemin du dossier à zipper (par défaut, webDir de __CAPGO_KEEP_0__.config) |
|---|---|
--path | Path to the folder to zip (defaults to webDir from capacitor.config) |
--bundle | Nom personnalisé pour le fichier zip |
--name | Custom name for the zip file |
--json | Résultats de sortie au format JSON (incluant le checksum) |
--no-code-check | Ignorer la vérification de l'appel à notifyAppReady() et du fichier index |
--key-v2 | Utiliser l'encryption v2 |
--package-json | Chemins vers les 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 (Facultatif) »Pour une sécurité renforcée, chiffrer votre zip bundle 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 (utiliser --json option pour un format structuré)
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 ou
La commande de chiffrement retournera les ivSessionKey nécessaires pour l'upload ou la déchiffrement.
Options de la commande de chiffrement
Titre de la section « Options de la commande de chiffrement »| Option | Description |
|---|---|
zipPath | Chemin vers le fichier zip à chiffrer (obligatoire) |
checksum | Somme de contrôle du fichier zip (obligatoire) - obtenez-l’à partir de la commande zip |
--key | Chemin personnalisé pour la clé de signature privée (facultatif, utilise la clé locale par défaut) |
--key-data | Données de clé de signature privée directement (facultatif) |
--json | Résultats de sortie sous format JSON |
Section intitulée « Exemples de workflow complets »
Exemple 1 : URL externe avec chiffrementSection intitulée « Exemple 1 : URL externe avec chiffrement »
Construirez votre application :-
Section intitulée « Exemple 1 : URL externe avec chiffrement »
Fenêtre de terminal npm run build -
Créer un fichier zip :
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.
-
Chiffrer le fichier zip :
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écharger sur votre stockage : Charger le fichier zip chiffré sur votre service de hébergement.
-
Enregistrez-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
Section intitulée « 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
Section intitulée « 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 chiffrement :
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 de stockages personnalisés, prenez en compte ces meilleures pratiques de sécurité :
Contrôle d'accès
Section intitulée « Contrôle d'accès »- Assurez-vous que les 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 »- Chiffrez toujours les bundles sensibles à l'aide des outils de chiffrement Capgo
- Stockez les clés de chiffrement de manière sécurisée et les roulez régulièrement
- Utilisez HTTPS pour toutes les URL de bundle (obligatoire pour les applications mobiles et Electron)
Surveillance
Section intitulée « Surveillance »- Surveillez les journaux d'accès pour détecter des modèles de téléchargement inhabituels
- Configurez des alertes pour les téléchargements de bundles échoués
- Effectuez régulièrement des audits de vos permissions de stockage
Section intitulée « Dépannage »
Problèmes courantsSection 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 que le format du bundle est correct
Erreurs d'encryption :
- Vérifiez que le
ivSessionKeycorrespond au bundle chiffré - Vérifiez que le bundle a été chiffré avec la bonne clé
- Assurez-vous que l'encryption v2 est utilisé pour les nouveaux bundles
Échecs d'upload S3 :
- Vérifiez vos identifiants et vos permissions S3
- Vérifiez les politiques de la boîte et la configuration CORS
- Assurez-vous que la région spécifiée est correcte
Commandes de débogage
Commandes de débogageVérifiez l'état du paquet :
npx @capgo/cli@latest app debugVérifiez l'intégrité du paquet :
npx @capgo/cli@latest bundle listÉtapes suivantes
Section intitulée « Étapes suivantes »- Apprenez-en plus sur Canaux pour gérer différents environnements de déploiement
- Explorez Comportement de mise à jour pour personnaliser la façon dont les mises à jour sont appliquées
- Configurer Intégration CI/CD context : Page/zone : Capgo Builder / page de produit de construction native dans le cloud. Rôle : Étiquette de navigation ou élément de menu court. Clé de message `native_build_feature_ci_cd` (Native Build Feature Ci Cd).
pour automatiser votre flux de stockage personnalisé
Continuez d'ici Stockage personnaliséTitre de la section « Continuez d'ici Stockage personnalisé » Si vous utilisez Stockage personnalisé pour planifier la sécurité et la conformité, connectez-l’à 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 Capgo Centre de confiance pour le flux de travail du produit dans Capgo Centre de confiance.