Composing my Software Factory through packages

May 8, 2011 at 9:21 PM

We have a software factory. Currently this factory is distributed as one big system.

I would like to start with a minimal set, and add support for extra functionality using NuGet packages.

Example:

Package MyFactory-Core contains core functionality.

Package MyFactory-Spf2010 contains SharePoint Foundation 2010 specific functionality.

Each packages contains things like:

  • Scaffolders
  • Validators
  • PowerShell Modules for build and package
  • Guidance

Some of the elements like the Validators, Modules and Guidance should also be useable outside the NuGet console context.

Q1: Should I copy over for example PowerShell modules in install.ps1 to a root level folder PowerShellModules and add this folder to the PSModulePath, or add a PowerShellModules folder to each package and add all these folders to the PSModulePath?

Q2: I use elements of the different packages (like the validators) also outside Visual Studio, for example during the build of the solution from a build server. Should I copy over the files, or create and run a special ExternalInit.ps1 per package that I call for all packages to get all required PowerShell functions available outside the NuGet console?