Question Publier des fonctions
- Selenae
- Auteur du sujet
- Hors Ligne
- Nouveau membre
- Messages : 11
- Remerciements reçus 0
Dans l'entreprise ou je travaille nous utilisons de nombreuses fonctions au quotidien. Ces fonctions ce trouve dans des fichiers .ps1 présent chez chaque utilisateurs.
j'aimerais mettre en place une gestion centralisé de ces fonctions. Le but est que si je modifie/ajoute une fonction, cette modification se répercute chez tout le monde.
Je pense que pour faire ca je dois
- créer un module contenant mes fonctions et placer celui-ci sur un serveur.
- Modifier le profil de chaque utilisateur pour qu'il charge se module.
Pourriez-vous me dire si c'est la meilleur facon de procéder et me donner une idée de comment mettre cela en place
Je vous remercie d'avance
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
- Messages : 6302
- Remerciements reçus 68
Selenae écrit:
Dans le profile machine, pas besoin de dupliquer le profil utilisateur.- Modifier le profil de chaque utilisateur pour qu'il charge se module.
Selenae écrit:
La meilleure je ne sais pas, en tout cas elle me semble cohérente.Pourriez-vous me dire si c'est la meilleur facon de procéder
Selenae écrit:
me donner une idée de comment mettre cela en place
C'est à dire ? De quelles infos as-tu besoin ?
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Selenae
- Auteur du sujet
- Hors Ligne
- Nouveau membre
- Messages : 11
- Remerciements reçus 0
Mon problème c'est que je ne vois pas clairement comment mettre cela en place. Dans ma tête c'est clair mais l'ecrire est plus compliqué.
Donc quand les utilisateurs de mon entreprise lance leur session Powershell il faut que le profil de celle-ci contienne une fonction qui :
- Va vérifier que le module toto ( par exemple ) est bien installé
- Si c'est le cas va vérifier sa version par rapport a la version du module publié dans un share
- Si elle est moins recente, le script doit installer la nouvelle version du module.
Voila c'est cette pour cette partie que je ne sais pas comment m'y prendre. Aurais tu un exemple de code a me donner ou un tutorial à appliquer ?
Un grand merci
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
- Messages : 6302
- Remerciements reçus 68
C'est le principalDans ma tête c'est clair
Selenae écrit:
Il n'y a là rien de complexe, il te manque juste qq informations.mais l'ecrire est plus compliqué.
Selenae écrit:
Pour moi, mais je ne connais ton infrastructure, le profile machine (All Users, All Hosts ) est le plus adapté, ainsi tu protéges ton script et laisse la possibilité aux utilisateurs avancé de modifier le leur.Donc quand les utilisateurs de mon entreprise lance leur session Powershell il faut que le profil de celle-ci contienne une fonction
Selenae écrit:
Pour le 3 un fichier manifest de module (.psd1) t'aidera, un de ces usages est le versionning, \"enfin presque\", mais c'est une autre discussion...1- Va vérifier que le module toto ( par exemple ) est bien installé
2- Si c'est le cas va vérifier sa version par rapport a la version du module publié dans un share
3- Si elle est moins recente, le script doit installer la nouvelle version du module.
Pour le 2, dans un premier temps le share doit être vu comme un lieu de stockage temporaire (lecture et écriture), mais pas l'éxécution, sinon il te faudra modifier la configuration intranet de chaque poste.
Pour le 1 il faut savoir où tu veux placer ton module, la variable système %PSModulePath% peut être à modifier, à moins d'utiliser les chemins existant par défaut :
[code:1]
$env:«»Psmodulepath -split ';'
#C:\Documents and Settings\USERACCOUNT\Mes documents\WindowsPowerShell\Modules
#C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules\
[/code:1]
La présence peut être valider par :
[code:1]
Get-Module -ListAvailable
[/code:1]
Ou via Import-module associé à une gestion d'erreur.
Un module peut aussi utiliser des données propres à chaque utilisateur, ce n'est certainement pas ton besoin, mais c'est peut être un point à envisager.
Selenae écrit:
Si tu as le temps on peut le faire au fil de l'eau, mais un point à la fois et sans engagement sur le temps, en même temps d'autres 'forumeurs' peuvent participer.Aurais tu un exemple de code a me donner
Selenae écrit:
J'en ai un en cours sur les modules, et je me demande si je ne vais pas le scinder en deux parties. Compte une ou deux semaines avec sa publication.ou un tutorial à appliquer ?
Selenae écrit:
Pas de discrimination, les petits merci sont aussi acceptésUn grand merci
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les initiés
- Publier des fonctions