Sampler.psd1
@{ # Script module or binary module file associated with this manifest. RootModule = 'Sampler.psm1' # Version number of this module. ModuleVersion = '0.116.3' # Supported PSEditions # CompatiblePSEditions = @('Desktop','Core') # Removed to support PS 5.0 # ID used to uniquely identify this module GUID = 'b59b8442-9cf9-4c4b-bc40-035336ace573' # Author of this module Author = 'Gael Colas' # Company or vendor of this module CompanyName = 'SynEdgy Limited' # Copyright statement for this module Copyright = '(c) Gael Colas. All rights reserved.' # Description of the functionality provided by this module Description = 'Sample Module with Pipeline scripts and its Plaster template to create a module following some of the community accepted practices.' # Minimum version of the Windows PowerShell engine required by this module PowerShellVersion = '5.0' # Modules that must be imported into the global environment prior to importing this module RequiredModules = @( 'Plaster' ) # Modules to import as nested modules of the module specified in RootModule/ModuleToProcess NestedModules = @() # Functions to export from this module FunctionsToExport = @('Add-Sample','Convert-SamplerHashtableToString','Get-BuildVersion','Get-BuiltModuleVersion','Get-ClassBasedResourceName','Get-CodeCoverageThreshold','Get-MofSchemaName','Get-OperatingSystemShortName','Get-PesterOutputFileFileName','Get-Psm1SchemaName','Get-SamplerAbsolutePath','Get-SamplerBuiltModuleBase','Get-SamplerBuiltModuleManifest','Get-SamplerCodeCoverageOutputFile','Get-SamplerCodeCoverageOutputFileEncoding','Get-SamplerModuleInfo','Get-SamplerModuleRootPath','Get-SamplerProjectName','Get-SamplerSourcePath','Invoke-SamplerGit','Merge-JaCoCoReport','New-SampleModule','New-SamplerJaCoCoDocument','New-SamplerPipeline','Out-SamplerXml','Set-SamplerPSModulePath','Split-ModuleVersion','Update-JaCoCoStatistic') # Cmdlets to export from this module CmdletsToExport = '' # Variables to export from this module VariablesToExport = '' # Aliases to export from this module AliasesToExport = '*' # List of all modules packaged with this module ModuleList = @() # Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. PrivateData = @{ PSData = @{ # Extension for Plaster Template discoverability with `Get-PlasterTemplate -IncludeInstalledModules` Extensions = @( @{ Module = 'Plaster' minimumVersion = '1.1.3' Details = @{ TemplatePaths = @( 'Templates\Classes' 'Templates\ClassResource' 'Templates\Composite' 'Templates\Enum' 'Templates\MofResource' 'Templates\PrivateFunction' 'Templates\PublicCallPrivateFunctions' 'Templates\PublicFunction' 'Templates\Sampler' ) } } ) # Tags applied to this module. These help with module discovery in online galleries. Tags = @('Template', 'pipeline', 'plaster', 'DesiredStateConfiguration', 'DSC', 'DSCResourceKit', 'DSCResource', 'Windows', 'MacOS', 'Linux') # A URL to the license for this module. LicenseUri = 'https://github.com/gaelcolas/Sampler/blob/main/LICENSE' # A URL to the main website for this project. ProjectUri = 'https://github.com/gaelcolas/Sampler' # A URL to an icon representing this module. IconUri = 'https://raw.githubusercontent.com/gaelcolas/Sampler/main/Sampler/assets/sampler.png' # ReleaseNotes of this module ReleaseNotes = '## [0.116.3-preview0002] - 2023-04-01 ### Changed - Template `SimpleModule` - The template has been changed to create a module with the minimum scaffolding when using default values for the template questions. The minimum scaffolding enable the building and testing of the module, but default there is no pipeline so it possible to use any platform to run the pipeline. - Additional template parameters have been added which will add additional functionality to the module. - `UseGit` - This parameter enables project files that helps with the use of Git for the project. The template will ask if Git should be used, default is No. - `UseGitVersion` - This parameter adds project files that helps with the use of GitVersion for the project. GitVersion is dependent on Git being used for the project. The template will ask if GitVersion should be used if the use of Git was chosen, default is No. - `UseCodeCovIo` - This parameter adds project files that helps with the use of CodeCov.io for the project. CodeCov.io is dependent on Git being used for the project. The template will ask if CodeCov.io should be used if the use of Git was chosen, default is No. - `UseGitHub` - This parameter adds project files that helps with the use of GitHb.com for the project. GitHub.com is dependent on Git being used for the project. The template will ask if GitHub.com should be used if the use of Git was chosen, default is No. - `UseAzurePipelines` - This parameter adds project files that enables the project to run the pipeline in Azure Pipelines (in Azure DevOps). The template will ask if Azure Pipelines should be used, default is No. - `UseVSCode` - This parameter adds project files that helps when using Visual Studio Code as the project code editor. The template will ask if Visual Studio Code should be used, default is No. - The file `build.yaml` will only contain tasks from `Sampler.GitHubTasks` if template parameter `UseGitHub` is set to true (the answer to the template question is Yes). - The file `RequiredModules.psd1` will only contain the module `Sampler.GitHubTasks` if template parameter `UseGitHub` is set to true (the answer to the template question is Yes). - If Git is not used (`UseGit` is false) the QA test that uses Git is removed for the generated file `module.tests.ps1`. - Removed module Plaster from the template file `RequiredModules.psd1.template` since it is not direct requirement for any project. _It will still be saved_ _to `output/RequiredModules` for a project as it is defined as a required_ _module in Sampler''s module manifest, and Sampler is still a required modul._ - Pipeline script for resolving dependencies improved. - Evaluating PowerShellGet version now supports parameter `AllowOldPowerShellGetModule` (still not recommended to use this parameter). - Now defaults to save the modules PowerShellGet and PackageManagement to the folder `output/RequiredModules` (same logic as for module PSDepend) to not make permanent changes to the contributors machine. If parameter `PSDependTarget` is either set to `CurrentUser` or `AllUsers` the modules are installed. ### Fixed - Removed duplicate header in template file `README.md.template`. - Fix typo in the file `about_ModuleName.help.template` and in `module.template`. - Integration tests clean up the test drive after each test. - Update generated module manifest to have recommended values for properties. Fixes [#326](https://github.com/gaelcolas/Sampler/issues/326). - Now correctly uses the key `CodeCoverage` in the file `build.yaml.template`. Fixes [#359](https://github.com/gaelcolas/Sampler/issues/359). - Pipeline script for resolving dependencies improved. - `Get-PackageProvider` no longer throws an exception when NuGet provider is missing (in Windows PowerShell in a clean Windows install). - `Install-PackageProvider` now defaults to installing in the current user scope to avoid requiring an elevated prompt. This is the only change that is permanent on the contributors machine. It is not possible to avoid this as long at the module PowerShellGet requires the NuGet package provider. - Remove duplicate code that set `AllowPrerelease` when installing package provider. - Fixed wrong splatting variable that prevented `Install-PackageProvider` to run. - Removing all existing PowerShellGet and PackageManagement module that is loaded into the session to load the newly saved or installed. - Handle parameter `AllowOldPowerShellGetModule` when loading PowerShellGet module version. - Fix message on `Write-Progress` statement. - Small style cleanups. - Fixed aliases in `prefix.ps1` to support ModuleBuild v3.0.0. The fix makes ModuleBuilder not seeing the aliases (using AST) so that the module manifest is not changed during build, instead they are exported during module import. In the future we could add a separate public file that defines the aliases to export so the module manifest is updated during build. ' Prerelease = 'preview0002' } # End of PSData hashtable } # End of PrivateData hashtable } |