Un système pour automatiser l'installation et la configuration des ressources.
Table des matières
- Caractéristiques
- Démarrer rapidement
- Installation
- Utilisation de base
- Ressources définies personnalisées
- Bibliothèque de ressources intégrées
- Enregistrement
- Docs supplémentaires
- Feuille de route
- Hypothèses
- Qu'est-ce que Pystall?
Caractéristiques
- Tirez d'une bibliothèque de ressources intégrées pour une installation rapide
- Définissez vos propres ressources locales et distantes personnalisées
- Journalisation intégrée
- La capacité de construire des scripts dans un binaire sans dépendance
- Spécification des ressources dans les fichiers
- Et plus
Démarrer rapidement
Installation
De PYPI
Vous pouvez installer le projet à partir de PYPI à l'aide pip install pystall ou pip3 install pystall
De la source
Clone Ce réprimande source à l'aide du bouton GitHub ou git clone https://github.com/Descent098/pystall
Ensuite, dans le répertoire racine (celui avec setup.py) exécutez pip install . ou sudo pip3 install . Cela installera le package et ses dépendances.
Utilisation de base
Ressources définies personnalisées
Ce script affiche le téléchargement du programme d'installation de Python 3 (A .exe) l'installateur GO (A .MSI) et une image de logo (a .png).
from pystall . core import EXEResource , MSIResource , StaticResource , build
python = EXEResource ( "python-installer" , "https://www.python.org/ftp/python/3.8.1/python-3.8.1.exe" )
go = MSIResource ( "Golang" , "https://dl.google.com/go/go1.13.5.windows-amd64.msi" )
logo = StaticResource ( "Wallpaper" , ".png" , "https://canadiancoding.ca/static/img/post-banners/python-post-banner.9bf19b390832.png" )
build ( python , go , logo )
Bibliothèque de ressources intégrées
Il existe également la possibilité d'utiliser la bibliothèque intégrée de ressources qui ont été configurées.
from pystall . core import build
from pystall . library import python , go , micro
build ( python , go , micro )
Enregistrement
Si vous voulez des journaux pendant que le script s'exécute, vous pouvez utiliser la fonction show_logs () dans la bibliothèque de base
from pystall . core import build , show_logs
from pystall . library import python , go , chrome , micro
show_logs ()
build ( python , go , chrome , micro )
Docs supplémentaires
Pour une liste complète des ressources de bibliothèque disponibles, comment étendre le cadre de fonctionnalités spécifiques et un guide de développement si vous souhaitez contribuer, consultez les documents: https://pystall.readthedocs.io/en/latest/
Feuille de route
Pour une feuille de route plus détaillée, consultez le Board Planning Board sur GitHub: https://github.com/descent098/pystall/projects/1
Hypothèses
- Vous exécutez Windows, Linux (actuellement basé sur Debian, avec le support Arch à l'avenir) ou Mac OS (en cours)
- Votre machine est basée sur X86 64 bits (non, je n'ajouterai pas une prise en charge 32 bits, mais le support ARM arrive)
- Vous avez une connexion Internet (si le téléchargement des ressources et ne pas utiliser de copies locales des installateurs)
Qu'est-ce que Pystall?
Pystall est:
- Un système pour écrire des scripts uniques pour configurer des environnements sur les plates-formes
- Une méthode d'écriture de configurations du système relativement sans chauffeur
- Un moyen de créer des binaires faciles à distribuer pour gérer les installations compliquées.
- Destiné aux utilisateurs finaux à la recherche d'une syntaxe simple pour créer des scripts
Pystall n'est pas:
- Un utilitaire de gestion des serveurs
- Un utilitaire de gestion des infrastructures
- Un remplacement d'orchestration (ANSIBLE, JENKINS, PUPET, CHEF ETC.)
- Destiné à la mise à jour cohérente (en termes de fréquence) vers les packages existants (bien que je ne sois pas nécessairement à cela à l'avenir)
- Un système absolument automatisé, en raison de la quantité de compromis d'extensibilité, j'ai choisi de laisser les installateurs à configurer lorsqu'ils s'exécutent (c'est-à-dire que l'exécution de l'installateur Python Exe vous oblige toujours à faire la configuration).