Dans le répertoire de votre projet, lancez ces commandes :
npm install -g truffle
npm install @truffle/hdwallet-provider
npm install --save dotenv
- Ce qui a été fait et n'est pas à faire dans le cas d'un clone du projet :
truffle init
- Dépôt d'un Smart Contract de test dans le répertoire contracts
- Création du fichier de déploiement : migrations/1_script.js
- Configuration du fichier truffle-config.js pour utiliser les librairies dotenv et hdwallet
- Compilation du contrat :
truffle compile
truffle deploy
- Créez et configurez un fichier .env avec les clés suivantes :
# Api Key récupérée depuis https://app.infura.io/ (pour test sur goerli par exemple)
INFURA_ID=
# Seed Phrase de votre compte sur Metamask
MNEMONIC=
# Api Key récupérée depuis https://www.alchemy.com/ (pour test sur mumbai par exemple)
ALCHEMY_ID=
- Selon le ou les réseaux que vous souhaitez, il faut configurer le fichier truffle-config.js (ici, fait pour Ethereum-Goerli et Polygon-Mumbai)
- Exécutez la commande suivante pour déployer votre contrat sur la blockchain publique :
truffle deploy --network [goerli|mumbai]
Pour exécuter les tests unitaires Solidity, il faut lancer ganache et exécuter la commande suivante :
truffle test --to 1