For the January 2017 Mississippi PowerShell User Group virtual meeting, Mike F Robbins will be presenting “PowerShell Non-Monolithic Script Module Design” on Tuesday, January 10th at 8:30pm central time.
Creating a script module in PowerShell is a very simplistic process, but there are a number of reasons why you might not want to create one huge monolithic PSM1 script module file that contains all of your module’s functions. During this session, Microsoft MVP Mike F Robbins will demonstrate how to separate each of your module’s functions into its own dedicated PS1 file that’s dot-sourced from your script module’s PSM1 file along with discussing this design methodology and the challenges that it creates, many of which may not be initially apparent. By default, functions in your module won’t be exported and many times resolving one problem seems to create more problems such as cmdlets from other modules showing up as being exported by your module. The solution to these problems and more will be provided during this session. Mike will also demonstrate using a Pester test to validate that all of the functions are indeed exported along with using a function to help automate the module manifest update process when additional functions are added to your module.
Mike F Robbins is a Microsoft MVP and a SAPIEN Technologies MVP. He is a co-author of Windows PowerShell TFM 4th Edition and is a contributing author of a chapter in the PowerShell Deep Dives book. Mike has written guest blog articles for the Hey, Scripting Guy! Blog, PowerShell Magazine, and PowerShell.org. He is the winner of the advanced category in the 2013 PowerShell Scripting Games. Mike is also the leader and co-founder of the Mississippi PowerShell User Group. He blogs at mikefrobbins.com and can be found on twitter @mikefrobbins.
The Mississippi PowerShell User Group Meetings are held online (via Skype for Business) on the second Tuesday of each month at 8:30pm Central Time and are free to attend. The system requirements to attend these online meetings can be found on the MSPSUG website under the “Attendee Info” section.
Register via EventBrite to receive the URL for this meeting.