AutoPlug-Client est un programme Java autonome et exécutable qui dispose de plusieurs modes d'exécution : Server-Wrapper, CLI-Tool, Background-Service. Son objectif principal est d'automatiser la mise à jour de tout logiciel lié aux serveurs et de simplifier la maintenance des serveurs en général. Bien que tous les types de serveurs soient compatibles (y compris les serveurs de jeux Steam), la majorité de ses fonctionnalités s'adressent spécifiquement à Minecraft, reconnu comme le jeu le plus vendu au monde et doté d'une communauté de modding exceptionnellement étendue.
Liens
- Téléchargez les versions stables/bêta sur le dépôt AutoPlug-Releases.
- Suivez le développement de AutoPlug-Client-Development et voyez sur quoi nous travaillons actuellement.
- Soutenez le développement en donnant.
- Des questions ou des problèmes ? Consultez la FAQ et/ou rejoignez notre Discord, pour un support en chat/voix en direct.
Que peut-il faire ?
- Mise à jour automatisée du programme lui-même, des logiciels serveur, des plugins, des mods et du JRE (Java Runtime Environment)
- Redémarrages programmés du serveur
- Création de sauvegardes automatisée et modulaire
- Exécution rapide, asynchrone et multithreadée des tâches
- Possibilité d'avoir des dossiers synchronisés (partagés)
- Panneau Web pour démarrer, arrêter, redémarrer le serveur et visualiser les derniers résumés des mises à jour
- Console en ligne
- Gestionnaire de fichiers en ligne
- Accès pour le personnel
- Base de données des détails des plugins
Statut
Stable et complet en fonctionnalités, le développement est désormais communautaire, ce qui signifie que le développeur principal ne développera plus de nouvelles fonctionnalités et se reposera sur les pull requests des autres, sauf pour les problèmes de sécurité et les bugs critiques.Projets communautaires
- Support Docker : https://github.com/lkkuma/AutoPlug-Client-Docker
- Support panneau Pterodactly : https://github.com/ImLunaUwU/PteroPlug
Vous pouvez également utiliser AutoPlug dans vos projets en l'ajoutant comme dépendance via Maven/Gradle/Sbt/Leinigen. Certaines classes utiles seraient par exemple AutoPlugConsole, qui vous permet d'exécuter des commandes AutoPlug de manière programmatique :
AutoPlugConsole.executeCommand(".check plugins");
AutoPlugConsole.executeCommand(".check server");
// etc...
Contribuer 
Merci de penser à contribuer, la communauté 💙 ça ! Gardez simplement ces points à l’esprit :
- Créez d’abord un ticket si vous souhaitez effectuer des changements importants, afin que nous puissions en discuter.
- N’oubliez pas que les gros changements nécessitent également l’écriture de tests.
- Vous pouvez choisir et travailler sur n’importe quel ticket ouvert. Faites-nous savoir que vous y travaillez.
- Évitez d’utiliser et d’écrire des méthodes/champs/classes statiques pour garantir une utilisation minimale de la mémoire.
Certaines issues ouvertes sont marquées avec un tag/label comme celui-ci : bounty: 15€ (voir la liste), ce qui signifie que la première personne
créant une pull request pour corriger/fermer cette issue recevra la récompense (15€). Notez que votre code doit comporter
au moins un test démontrant que la correction/fonctionnalité implémentée fonctionne. Notez également que les paiements sont effectués uniquement via PayPal, assurez-vous donc
que la page publique GitHub de votre profil, avec lequel vous validez la pull request, contient quelque part votre adresse email PayPal.
En vous engageant sur une issue avec le tag bounty, vous acceptez ces conditions.
Détails :
- Écrit en Java, avec JDK 8, dans IntelliJ IDEA
- Construit avec 1JPM, commande :
java ./src/main/java/JPM.java
andRun à la fin). Bibliothèques
Notez que cette liste peut être obsolète. Vérifiez le fichier build.gradle pour nos dépendances actuelles.
- AutoPlug-Core contient le code fréquemment utilisé dans tous les projets AutoPlug
- Dream-Yaml est utilisé pour la gestion des fichiers YAML.
- Better-Thread permet l’affichage des « live-tasks ».
- Pour la coloration de la console et l’affichage des tâches, Jansi et Jline sont utilisés.
- Zip4j pour décompresser et gérer les jar/zip.
- Les redémarrages de serveur sont planifiés avec Quartz.