Question

Je suis nouveau PS afin que je puisse obtenir une partie de la terminologie mal.

Si vous voulez déployer un environnement PowerShell personnalisé (composant logiciel enfichable) pour une équipe de 30 développeurs / CBM. Quelle est la meilleure façon de le faire ... si vous avez l'intention d'être le déploiement de nouvelles fonctionnalités une fois par semaine? Est-ce que l'aide PowerShell 2.0 dans ce qui concerne?

Hypothèse:
Il n'y a pas de problème avec tout le monde dans l'équipe l'installation PowerShell (V1 ou V2)

Mise à jour : Voir aussi la réponse de Jeffrey Snover à propos de v2 ci-dessous.

Était-ce utile?

La solution

Il dépendra dans une certaine mesure, le genre de changements de fonctionnalité que vous avez l'intention de le faire. Pour notre environnement, nous roulons un PS assez standard d'installation, ajoutez une ligne au profil de chacun d'exécuter un script à partir d'un dossier partagé sur un serveur. Ensuite, dans ce script, je peux faire ce que la personnalisation que je veux avoir appliqué à tout le monde.

Nous ajoutons la ligne à la machine de profil spécifique MS (l'un en% windir%), ce un choix délibéré. Nous le faisons de cette façon afin que les utilisateurs obtiennent essentiellement que cela sur leurs boîtes de production. De cette façon, quand ils écrivent quelque chose qu'ils peuvent rapidement se connecter à une boîte de test et exécutez le script pour vous assurer que le script va déployer sans dépendances nay sur ces personnalisations.

Actuellement, les personnalisations sont assez banales. La plupart du temps que quelques fonctions supplémentaires et alias. J'ai aussi un enregistreur que j'ai écrit en C # spécifiquement pour powershell il charge que jusqu'à de la dll qui est dans le même dossier réseau.

Parce que je joue avec mon environnement tant, j'ai dans mon profil:)

$ProfileDir = ([System.IO.Directory]::GetParent($profile)).FullName
$localMSProfile = "$PShome\Microsoft.Powershell_profile.ps1"
$localAllProfile = "$PShome\profile.ps1"
$userAllProfile = "$ProfileDir\profile.ps1"
$userMSProfile = "$ProfileDir\Microsoft.Powershell_profile.ps1"
$allProfiles = ($localAllProfile, $localMSProfile, $userAllProfile, $userMSProfile)

Autres conseils

Ceci est la raison pour laquelle nous avons ajouté le support des modules dans PowerShell V2 - il est le mécanisme le plus facile à déployer xcopy ensembles de fonctions. La documentation du module est assez léger à ce stade, mais devrait être beaucoup mieux dans un mois ou deux.

Expérience! Prendre plaisir! Mobilisez!

Jeffrey Snover [MSFT] Windows Management Architect Partner

Si vous roulez sur une nouvelle version du composant logiciel enfichable hebdomadaire, la version de commutation ne sera probablement pas aider à cette partie des choses. Cependant, vous serez en développement sur une plate-forme plus récente, avec l'avantage de la fonctionnalité étendue qui vient avec elle.

Comme il a déjà suggéré certains scripts pourraient soulager la douleur de déploiement au point où vous devez faire rien d'autre que de maintenir ces scripts correctement et continuer à produire des nouvelles constructions.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top