5.6 KiB
5.6 KiB
📦 Guide d'Installation - sdk_client
Guide complet pour installer et configurer le SDK client pour les Silent Payments.
📋 Prérequis
Système
- OS : Linux (Ubuntu 20.04+, Debian 11+, CentOS 8+), macOS 10.15+, Windows 10+
- Architecture : x86_64, ARM64 (Apple Silicon)
- RAM : 2 Go minimum, 4 Go recommandés
- Stockage : 5 Go minimum, 10 Go recommandés
- Réseau : Connexion Internet stable
Logiciels
- Rust : Version 1.70+ (obligatoire)
- Cargo : Inclus avec Rust
- wasm-pack : Version 0.12+ (pour compilation WASM)
- Git : Version 2.25+
- Node.js : Version 18.0+ (optionnel, pour tests)
🚀 Installation
1. Installation de Rust
Linux/macOS
# Installer Rust via rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Recharger l'environnement
source ~/.cargo/env
# Vérifier l'installation
rustc --version
cargo --version
Windows
# Télécharger et installer rustup depuis
# https://rustup.rs/
2. Installation de wasm-pack
# Installer wasm-pack
cargo install wasm-pack
# Vérifier l'installation
wasm-pack --version
3. Configuration SSH (Recommandé)
# Générer une clé SSH
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_sdk -C "sdk-client-automation"
# Ajouter à l'agent SSH
ssh-add ~/.ssh/id_ed25519_sdk
# Configurer Git pour utiliser la clé
git config --global core.sshCommand "ssh -i ~/.ssh/id_ed25519_sdk"
# Afficher la clé publique pour Gitea
cat ~/.ssh/id_ed25519_sdk.pub
Ajouter la clé publique à Gitea :
- Aller sur Gitea > Settings > SSH Keys
- Coller la clé publique
- Cliquer sur "Add key"
4. Clonage du Repository
# Cloner avec SSH (recommandé)
git clone git@git.4nkweb.com:4nk/sdk_client.git
cd sdk_client
# Ou cloner avec HTTPS
git clone https://git.4nkweb.com/4nk/sdk_client.git
cd sdk_client
🔧 Configuration
Variables d'Environnement
Créer un fichier .env
à la racine du projet :
# Configuration Rust
RUST_LOG=info
RUST_BACKTRACE=1
CARGO_INCREMENTAL=1
# Configuration WASM
WASM_PACK_TARGET=web
WASM_PACK_PROFILE=release
# Configuration de développement
CARGO_PROFILE_DEV_OPT_LEVEL=0
CARGO_PROFILE_RELEASE_OPT_LEVEL=3
Configuration Cargo
Le fichier Cargo.toml
est déjà configuré pour :
- Dépendances Rust
- Features WASM
- Configuration de build
- Tests et documentation
Configuration wasm-pack
# Configuration wasm-pack
wasm-pack build --target web --out-dir pkg
# Ou pour Node.js
wasm-pack build --target nodejs --out-dir pkg
🧪 Tests Post-Installation
1. Test de Compilation Rust
# Test de compilation
cargo build
# Vérifier le build
cargo build --release
# Vérifier les dépendances
cargo check
2. Test de Compilation WASM
# Compilation WASM
wasm-pack build --target web
# Vérifier les fichiers générés
ls -la pkg/
3. Test des Tests
# Tests unitaires
cargo test
# Tests d'intégration
cargo test --test integration
# Tests WASM
wasm-pack test --headless --firefox
4. Test de Linting
# Clippy (linter Rust)
cargo clippy -- -D warnings
# Formatage
cargo fmt -- --check
🚨 Dépannage
Problèmes Courants
Rust non trouvé
# Vérifier l'installation
which rustc
rustc --version
# Réinstaller si nécessaire
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.cargo/env
wasm-pack non trouvé
# Vérifier l'installation
which wasm-pack
wasm-pack --version
# Réinstaller si nécessaire
cargo install wasm-pack
Erreurs de compilation
# Nettoyer et recompiler
cargo clean
cargo build
# Vérifier les dépendances
cargo update
cargo check
Erreurs WASM
# Nettoyer et recompiler WASM
rm -rf pkg/
wasm-pack build --target web
# Vérifier les dépendances WASM
cargo tree
Logs Détaillés
# Logs de compilation Rust
RUST_LOG=debug cargo build
# Logs de compilation WASM
wasm-pack build --target web --verbose
# Logs de tests
RUST_LOG=debug cargo test
🔒 Sécurité
Vérifications de Sécurité
# Audit des dépendances Rust
cargo audit
# Vérification des vulnérabilités
cargo audit --deny warnings
# Vérification du code
cargo clippy -- -D warnings
Bonnes Pratiques
- Maintenir Rust à jour
- Utiliser des dépendances sécurisées
- Tester régulièrement le code
- Valider les entrées
- Utiliser des variables d'environnement pour les secrets
📊 Monitoring
Métriques d'Installation
# Taille du projet
du -sh .
# Nombre de fichiers
find . -type f | wc -l
# Dépendances Rust
cargo tree | wc -l
# Taille du binaire
ls -lh target/release/sdk_client.wasm
Vérification de l'Installation
# Script de vérification
./scripts/verify-installation.sh
# Tests automatisés
cargo test --all
🎯 Prochaines Étapes
Après l'installation réussie :
- Lire le Guide d'Utilisation - Utiliser le SDK
- Consulter l'Architecture - Comprendre le système
- Explorer les APIs - Utiliser les fonctionnalités
- Configurer l'Intégration 4NK_node - Déployer en production
📞 Support
En cas de problème :
- Consulter la documentation
- Vérifier les issues existantes
- Créer une nouvelle issue avec les détails du problème
- Inclure les logs et la configuration utilisée
🚀 Installation terminée ! sdk_client est prêt à être utilisé. ✨