Le pub des programmeurs
- 1 927 réponses
- 117 participants
- 123 798 vues
- 130 followers
Anonyme
521410
Sujet de la discussion Posté le 25/08/2005 à 17:21:03Le pub des programmeurs
Salut y a des programeurs sur AF si oui vous bossez sous quoi ?
Al1r
2279
AFicionado·a
Membre depuis 17 ans
1821 Posté le 01/02/2019 à 19:39:51
Citation :
Hello je reviens (encore) avec python. Bon finalement je suis bien obligé de m'y mettre, la je développe un petit programme en python qui exécute une liste de commandes via SSH sur un serveur (sous linux) depuis mon PC pour faire de l'automatisation. Jusque la rien de bien spécial, ca marche plutôt bien.
Pour palier ce genre de problème, RedHat développe un produit qui est très souple pour ce genre de sport: Ansible.
plus accessible, tu peux installer Jenkins. Jenkins + ansible dans le genre automatisation c'est assez top.
AL1
Djardin
19834
Drogué·e à l’AFéine
Membre depuis 19 ans
1822 Posté le 01/02/2019 à 21:14:40
Citation :
Question peut être conne mais y'a une raison particulière pour toi de faire ça en python et pas en script bash directement ?
c'est plus facile de faire des tests unitaires et du TDD en python qu'en bash ? Et de maintenir, faire des libs, réutiliser et faire relire ?
On a un truc du genre au taf, en bash et au début c'était un mini-script, donc pas besoin de quoi que ce soit.
Mais plus ça va, plus il grossit et là après quelques années il fait énormément de trucs. Et on se rends compte que si au lieu de faire du bash on aurait fait du python on aurait pu avoir des tests, des librairies, un truc maintenable et fiable.
Alors que là on a un très gros paquets de scripts.
Référence en matière de bon gout capillaire et vestimentaire.
homme à tête de zizi.
Anonyme
30851
1823 Posté le 01/02/2019 à 21:35:31
Citation :
Question peut être conne mais y'a une raison particulière pour toi de faire ça en python et pas en script bash directement ?
Pour une raison toute simple le serveur n'est pas à l'heure ni à la date. Et les deux machines privées non plus et pour parfaire le truc tout ce petit monde n'est absolument pas synchronisé, et je ne peux pas modifier ca. Et pour faire de l'archivage c'est vraiment pas pratique du tout
Merci pour le conseil open ssh je vais regarder ca.
Al1r > Oui, j'imagine bien, mais j'aimerais autant que possible mettre moi même les mains dans le cambouis et développer le truc. Je ne pense pas faire mieux que les développeurs de jenkins ou autre (très très trèèèès loin de la c'est le premier vrai truc en python que je fait qui dépasse 3 lignes) mais j'ai envie de comprendre et de bricoler par moi même. Et je voudrais faire aussi quelque chose de très léger le plus générique possible et facile à déployer.
La pour l'instant le programme arrive à ouvrir des scripts qui sont dans un fichier texte, à reconnaitre des mots clés et à les remplacer par autre chose (genre mkdir %DAY_DATE%_fichiers devient mkdir 2019_02_01_fichiers) mais il y a moyen de pousser encore un peu et d'avoir un petit outil bien sympathique je pense
[ Dernière édition du message le 01/02/2019 à 22:02:12 ]
Truelle est un manchot
10420
Drogué·e à l’AFéine
Membre depuis 14 ans
1824 Posté le 01/02/2019 à 21:50:11
Je ne suis pas sur mais je crois que SaltStack est le genre d'outil du type ansible qui peut faire ce boulot.
Sinon pour les scripts bash trop gros il y a Xonsh pour faire à la fois du python et du Bash dans sa console. C'est devenu mon shell par défaut.
Sinon pour les scripts bash trop gros il y a Xonsh pour faire à la fois du python et du Bash dans sa console. C'est devenu mon shell par défaut.
Anonyme
4548
1825 Posté le 01/02/2019 à 23:04:37
djardin > je suis d'accord avec toi mais ce n'est sans doute absolument pas la raison pour laquelle truelle fait ça en python.
Al1r
2279
AFicionado·a
Membre depuis 17 ans
1826 Posté le 02/02/2019 à 09:37:18
Citation :
c'est le premier vrai truc en python que je fait qui dépasse 3 lignes
C'est tout à ton honneur et je respecte ton choix.
Mais çà n'empêche pas de pouvoir s'aider avec des outils déjà prêts.
Que ce soit Ansible, jenkins, SaltStak,..., tu peux y intégrer tes propres modules (Bash, shell, Py,...)
et profiter des avantages (idempotence, récursivité, boucle, monitoring,...) qu'offrent ces outils.
Tu peux alors consacrer plus de temps sur des objectifs plus personnel que programmer des boucles, du monitoring, ...
Pour ansible par exemple, tu peux tout centraliser sur une machine et éxecuter les modules sur d'autres machines "remote" y compris tes propres modules. Lorsque c'est fini, il n'a pas de traces de "l'executeur" sur les machines distantes.
En quelques ligne de codes, tu peux patcher tout ton parc de machines, deployer tes outils, faire du nettoyage, etc...
AL1
Anonyme
4548
1827 Posté le 02/02/2019 à 10:50:15
Ansible ça nécessite quand même que Python soit installé sur les machines cibles. Pas un problème avec une distro relativement récente ou si on peut installer ce qu'on veut dessus mais ce n'est pas forcément le cas.
Mais oui sinon c'est top comme outil et faut pas réinventer la roue.
Mais oui sinon c'est top comme outil et faut pas réinventer la roue.
[ Dernière édition du message le 02/02/2019 à 13:40:51 ]
Anonyme
30851
1828 Posté le 09/02/2019 à 12:10:37
Bon au final c'est quasiment fini ! C'est fonctionnel mais il y a encore besoin de peaufiner et d'améliorer quelques trucs. Du coup entre temps me suis rendu compte que ce qu'il me faut c'est une session ssh interactive par machine pour ne pas perdre les instructions qui avaient pu être faites avant. Il y a une solution ici dont je me suis mal inspiré pour faire mon truc (avec très peu de modifs pour le moment). Voila si jamais ca peut servir : https://daanlenaerts.com/blog/2016/07/01/python-and-ssh-paramiko-shell/
Dr Pouet
52037
Membre d’honneur
Membre depuis 20 ans
1829 Posté le 09/02/2019 à 12:14:12
Est-ce qu’il n’y a pas même une librairie pour faciliter l’utilisation d’une telle session ssh ? Il le semble que ça existait en Perl.
[ Dernière édition du message le 09/02/2019 à 12:14:30 ]
- < Liste des sujets
- Charte