Templates/Sampler/plasterManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<plasterManifest schemaVersion="1.0" xmlns="http://www.microsoft.com/schemas/PowerShell/Plaster/v1"> <metadata> <name>Sampler</name> <id>01ff2349-1b77-46dd-a247-ce056aae043c</id> <version>0.0.1</version> <title>Sampler Module Template</title> <description>Sampler Module Template with bootstrap</description> <author>Gael Colas</author> <tags>Sampler,Template, Build, Module</tags> </metadata> <parameters> <parameter name="ModuleType" type="choice" default='1' prompt="Select the type of Module you would like to create:"> <choice label='Simple &Module Without Build' help="Creates a simple module without the build automation." value="SimpleModule_NoBuild"/> <choice label='&Simple Module with build automation' help="Creates a simple module with minimal structure and build scripts." value="SimpleModule"/> <choice label='Select &features...' help="Will prompt you for more details as to what you'd like to scaffold." value="CustomModule"/> <choice label='&Complete Module Sample' help="Creates a module with complete structure and example files." value="CompleteSample"/> <choice label='&DSC Community Module' help="Creates a DSC module according to the DSC Community baseline with a pipeline for build, test, and release automation." value="dsccommunity"/> </parameter> <parameter store="text" name="ModuleAuthor" type="text" prompt="Author's name" default="$Env:Username" /> <parameter store="text" name="ModuleName" type="text" prompt="Name of your module" /> <parameter store="text" name="MainGitBranch" type="text" prompt="Name of your default branch" default="main" /> <parameter name="ModuleDescription" type="text" prompt="Description of this module" /> <parameter name="CustomRepo" default="PSGallery" type="text" prompt="Do you pull from default repository (PSGallery) or a custom repository?" /> <parameter name="ModuleVersion" type="text" prompt="Module version" default="0.0.1" /> <parameter name="GitHubOwner" default="MyOrgName" type="text" prompt="What is the name of the GitHub owner (personal or organization account) that will publish the module?" condition="$PLASTER_PARAM_ModuleType -notin @('dsccommunity', 'SimpleModule_NoBuild')" /> <parameter name="GitHubOwnerDscCommunity" default="dsccommunity" type="text" prompt="What is the name of the GitHub owner (personal or organization account) that will publish the module?" condition="$PLASTER_PARAM_ModuleType -in @('dsccommunity')" /> <parameter name="UseGitVersion" type="choice" prompt="Do you want to add configuration for GitVersion to handle automatic versioning for your project?" default="0" condition="$PLASTER_PARAM_ModuleType -notin @('SimpleModule_NoBuild', 'CustomModule')" > <choice label='&Yes' value='true' /> <choice label='&No' value='false' /> </parameter> <parameter name="UseCodeCovIo" type="choice" prompt="Do you want to use the service CodeCov.io for code coverage reporting?" default="1" condition="$PLASTER_PARAM_ModuleType -notin @('SimpleModule_NoBuild', 'CustomModule')" > <choice label='&Yes' value='true' /> <choice label='&No' value='false' /> </parameter> <parameter store="text" name="License" type="choice" prompt="Do you want to include a License to your project?" default="1" condition='$PLASTER_PARAM_ModuleType -eq "CustomModule"' > <choice label='&Yes' value='true' /> <choice label='&No' value='false' /> </parameter> <parameter store="text" name="LicenseType" type="choice" prompt="What license do you want?" default="2" condition='$PLASTER_PARAM_License -eq "true" -and $PLASTER_PARAM_ModuleType -eq "CustomModule"' > <choice label='&Apache' help="Adds an Apache license file." value="Apache" /> <choice label='&MIT' help="Adds an MIT license file." value="MIT" /> <choice label='&None' help="No license specified." value="None" /> </parameter> <parameter store="text" name="SourceDirectory" type="choice" prompt="What name do you give your source folder?" default="2"> <choice label="&The Module's name (${PLASTER_PARAM_ModuleName})" value="${PLASTER_PARAM_ModuleName}" /> <choice label="&source" value="source" /> <choice label="s&rc" value="src" /> </parameter> <parameter name="Features" type="multichoice" prompt="What feature would you like to add to your project?" default="0" condition='$PLASTER_PARAM_ModuleType -eq "CustomModule"' > <choice label='&*All' help="Adds all features below." value="All"/> <choice label='&Enum' help="Adds enum folders and an example." value="Enum"/> <choice label='&Classes' help="Adds PSv5+ Classes folders and an example." value="Classes"/> <choice label='&DSC Resources' help="Adds DSCResources folders and an example." value="DSCResources"/> <choice label='&Sample Scripts' help="Adds Sample scripts in folders." value="SampleScripts"/> <choice label='&Git ignore' help="Adds project .gitignore." value="git"/> <choice label='&Unit Tests' help="Adds Tests folders and example with your features." value="UnitTests"/> <choice label='&Quality tests' help="Adds the Module quality verifying Unit tests, help and code coverage." value="ModuleQuality"/> <choice label='&Build' help="Adds Build folders and an scripts." value="Build"/> <choice label='&AppVeyor' help="Adds AppVeyor folders and an example." value="AppVeyor"/> <choice label='Test&Kitchen' help="Adds TestKitchen folders, yaml and an example." value="TestKitchen"/> </parameter> </parameters> <!-- condition='' ${PLASTER_PARAM_ModuleType} SimpleModule CustomModule CompleteSample SimpleModule_NoBuild SharedDscConfig -in @("SimpleModule","CustomModule","CompleteSample","SimpleModule_NoBuild","SharedDscConfig") ${PLASTER_PARAM_ModuleAuthor} ${PLASTER_PARAM_ModuleName} ${PLASTER_PARAM_ModuleDescription} ${PLASTER_PARAM_ModuleVersion} ${PLASTER_PARAM_License} true false ${PLASTER_PARAM_LicenseType} Apache MIT None ${PLASTER_PARAM_Features} All UnitTests ModuleQuality AppVeyor TestKitchen DSCResources Enum Classes SampleScripts git --> <content> <!-- MODULES FOLDER SCAFFOLDING --> <!-- SOURCE MAIN Folder --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}' /> <!-- CLASSES Folder--> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Classes' condition='(${PLASTER_PARAM_Features} -in @("All","Classes")) -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample")' /> <!-- Enum Folder--> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Enum' condition='${PLASTER_PARAM_Features} -in @("All","Enum") -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample")' /> <!-- PRIVATE FUNCTIONS Folder--> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Private' condition='${PLASTER_PARAM_ModuleType} -notin @("dsccommunity","SharedDscConfig")' /> <!-- PUBLIC FUNCTIONS Folder --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Public' condition='${PLASTER_PARAM_ModuleType} -notin @("dsccommunity","SharedDscConfig")' /> <!-- PESTER MAIN FOLDER --> <file source='' destination='${PLASTER_PARAM_ModuleName}/tests' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SimpleModule_NoBuild","SharedDscConfig") -or ${PLASTER_PARAM_Features} -in @("All","UnitTests","ModuleQuality","TestKitchen")' /> <!-- UNIT TESTS Private Functions folder --> <file source='' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Private' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "SampleScripts"))' /> <!-- UNIT TESTS Public folder --> <file source='' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Public' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "SampleScripts"))' /> <!-- UNIT TESTS Classes Sample Files --> <file source='../Classes/tests/Unit/Classes/class1.tests.ps1' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Classes/class1.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -in @("All") -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -Contains "Classes")' /> <file source='../Classes/tests/Unit/Classes/class2.tests.ps1' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Classes/class2.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -in @("All") -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -Contains "Classes")' /> <file source='../Classes/tests/Unit/Classes/class11.tests.ps1' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Classes/class11.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -in @("All") -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -Contains "Classes")' /> <file source='../Classes/tests/Unit/Classes/class12.tests.ps1' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Classes/class12.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -in @("All") -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -Contains "Classes")' /> <!-- UNIT TESTS Private Functions Sample Files --> <file source='Get-PrivateFunction.tests.ps1' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Private/Get-PrivateFunction.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "SampleScripts"))' /> <!-- UNIT TESTS Public Functions Sample Files --> <file source='Get-Something.tests.ps1' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Public/Get-Something.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "SampleScripts"))' /> <!-- UNIT TESTS DSC Resources folder --> <file source='' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Modules' condition='${PLASTER_PARAM_ModuleType} -in @("") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "DSCResources"))' /> <!-- UNIT TESTS DSC module sample file --> <file source='../MofResource/tests/Unit/Modules/Folder.Common.tests.ps1' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/Modules/Folder.Common.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "DSCResources"))' /> <file source='' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/DSCResources' condition='${PLASTER_PARAM_ModuleType} -in @("") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "DSCResources"))' /> <templateFile source='../MofResource/tests/Unit/DSCResources/DSC_Folder.tests.ps1.template' destination='${PLASTER_PARAM_ModuleName}/tests/Unit/DSCResources/DSC_Folder.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or (${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "UnitTests" -and ${PLASTER_PARAM_Features} -contains "DSCResources"))' /> <!-- QUALITY TESTS for Module --> <templateFile source='module.tests.ps1.template' destination='${PLASTER_PARAM_ModuleName}/tests/QA/module.tests.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("SimpleModule","SimpleModule_NoBuild","CompleteSample","SharedDscConfig") -or (${PLASTER_PARAM_Features} -Contains ("ModuleQuality") -or ${PLASTER_PARAM_Features} -contains "All")' /> <!-- PUBLIC FUNCTION Sample --> <file source='Get-Something.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Public/Get-Something.ps1' condition='${PLASTER_PARAM_ModuleType} -ne "SharedDscConfig" -and (${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_Features} -Contains "SampleScripts")' /> <!-- PRIVATE FUNCTION Sample --> <file source='Get-PrivateFunction.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Private/Get-PrivateFunction.ps1' condition='${PLASTER_PARAM_ModuleType} -ne "SharedDscConfig" -and (${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <!-- CLASSES Samples Folder --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Classes/' condition='${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "Classes" -and ${PLASTER_PARAM_Features} -Contains "SampleScripts") -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample")' /> <!-- CLASSES Samples Files --> <file source='../Classes/Classes/1.class1.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Classes/1.class1.ps1' condition='${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "Classes" -and ${PLASTER_PARAM_Features} -Contains "SampleScripts") -or ${PLASTER_PARAM_ModuleType} -in @("CompleteSample")' /> <file source='../Classes/Classes/2.class2.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Classes/2.class2.ps1' condition='${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "Classes" -and ${PLASTER_PARAM_Features} -Contains "SampleScripts") -or ${PLASTER_PARAM_ModuleType} -in @("CompleteSample")' /> <file source='../Classes/Classes/3.class11.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Classes/3.class11.ps1' condition='${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "Classes" -and ${PLASTER_PARAM_Features} -Contains "SampleScripts") -or ${PLASTER_PARAM_ModuleType} -in @("CompleteSample")' /> <file source='../Classes/Classes/4.class12.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Classes/4.class12.ps1' condition='${PLASTER_PARAM_Features} -Contains "All" -or (${PLASTER_PARAM_Features} -Contains "Classes" -and ${PLASTER_PARAM_Features} -Contains "SampleScripts") -or ${PLASTER_PARAM_ModuleType} -in @("CompleteSample")' /> <!-- OUTPUT FOLDER --> <file source='' destination='${PLASTER_PARAM_ModuleName}/output' condition='${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample","SimpleModule")' /> <!-- REQUIRED MODULES FOLDER --> <file source='' destination='${PLASTER_PARAM_ModuleName}/output/RequiredModules' condition='${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample","SimpleModule")' /> <!-- WikiSource FOLDER --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/WikiSource' condition='${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample")' /> <!-- END OF MODULES FOLDER SCAFFOLDING --> <!-- REPOSITORY Files --> <!-- GITIGNORE --> <file source='../Git/gitignore' destination='${PLASTER_PARAM_ModuleName}/.gitignore' condition='${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_Features} -Contains "git" -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SimpleModule_NoBuild","SharedDscConfig")' /> <!-- GITATTRIBUTES --> <file source='../Git/gitattributes' destination='${PLASTER_PARAM_ModuleName}/.gitattributes' condition='${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_Features} -Contains "git" -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SimpleModule_NoBuild","SharedDscConfig")' /> <!-- KITCHEN YAML Sample --> <templateFile source='kitchen.yml.template' destination='${PLASTER_PARAM_ModuleName}/.kitchen.yml' condition='${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_Features} -Contains "TestKitchen"' /> <!-- BUILD SCRIPTS --> <!-- BUILD.ps1 (ENTRY POINT) --> <file source='../Build/build.ps1' destination='${PLASTER_PARAM_ModuleName}/build.ps1' condition='${PLASTER_PARAM_Features} -Contains "All" -or ${PLASTER_PARAM_Features} -Contains ("Build") -or ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SharedDscConfig")' /> <!-- REQUIRED MODULES MANIFEST --> <templateFile source='../Build/RequiredModules.psd1.template' destination='${PLASTER_PARAM_ModuleName}/RequiredModules.psd1' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SharedDscConfig") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("Build")' /> <!-- RESOLVE DEPENDENCY Script (used in build.ps1) --> <file source='../Build/Resolve-Dependency.ps1' destination='${PLASTER_PARAM_ModuleName}/Resolve-Dependency.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SharedDscConfig") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("Build")' /> <templateFile source='../Build/Resolve-Dependency.psd1.template' destination='${PLASTER_PARAM_ModuleName}/Resolve-Dependency.psd1' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SharedDscConfig") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("Build")' /> <!-- BUILD YAML CONFIGURATION --> <templateFile source='../Build/build.yaml.template' destination='${PLASTER_PARAM_ModuleName}/build.yaml' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","SimpleModule","CompleteSample","SharedDscConfig") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("Build")' /> <!-- APPVEYOR --> <file source='appveyor.yml' destination='${PLASTER_PARAM_ModuleName}/appveyor.yml' condition='${PLASTER_PARAM_Features} -Contains ("AppVeyor")' /> <!-- AZURE PIPELINES --> <templateFile source='azure-pipelines.yml.template' destination='${PLASTER_PARAM_ModuleName}/azure-pipelines.yml' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample", "SimpleModule") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("Azure-Pipelines")' /> <templateFile source='azure-pipelines_dsccommunity.yml.template' destination='${PLASTER_PARAM_ModuleName}/azure-pipelines.yml' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity")' /> <!-- END OF BUILD SCRIPTS --> <!-- DSC RESOURCES files and folders --> <!-- DSCResources --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/DSCResources' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("DSCResources")' /> <!-- Examples --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Examples' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("DSCResources")' /> <!-- Modules helpers for DSC resource --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Modules' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("DSCResources")' /> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Modules/Folder.Common' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("DSCResources")' /> <file source='../MofResource/Modules/Folder.Common/Folder.Common.psm1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Modules/Folder.Common/Folder.Common.psm1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <!-- DSCResource Sample Files --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/DSCResources/DSC_Folder/' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='../MofResource/DSC_Folder/DSC_Folder.schema.mof' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/DSCResources/DSC_Folder/DSC_Folder.schema.mof' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='../MofResource/DSC_Folder/DSC_Folder.psm1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/DSCResources/DSC_Folder/DSC_Folder.psm1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/DSCResources/DSC_Folder/en-US' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='../MofResource/DSC_Folder/en-US/DSC_Folder.strings.psd1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/DSCResources/DSC_Folder/en-US/DSC_Folder.strings.psd1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <!-- DSCResource Examples Sample Files --> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Examples/Resources/' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='../Examples/README.md' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Examples/README.md' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Examples/Resources/Folder/' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='../Examples/Resources/Folder/1-DscResourceTemplate_CreateFolderAsSystemConfig.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Examples/Resources/Folder/1-DscResourceTemplate_CreateFolderAsSystemConfig.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='../Examples/Resources/Folder/2-DscResourceTemplate_CreateFolderAsUserConfig.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Examples/Resources/Folder/2-DscResourceTemplate_CreateFolderAsUserConfig.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <file source='../Examples/Resources/Folder/3-DscResourceTemplate_RemoveFolderConfig.ps1' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/Examples/Resources/Folder/3-DscResourceTemplate_RemoveFolderConfig.ps1' condition='${PLASTER_PARAM_ModuleType} -in @("") -or ${PLASTER_PARAM_Features} -Contains ("All") -or (${PLASTER_PARAM_Features} -Contains ("DSCResources") -and ${PLASTER_PARAM_Features} -Contains ("SampleScripts"))' /> <!-- END OF DSCResources files and folders --> <!-- MODULE MANIFEST --> <newModuleManifest destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/${PLASTER_PARAM_ModuleName}.psd1' moduleVersion='$PLASTER_PARAM_ModuleVersion' author='$PLASTER_PARAM_ModuleAuthor' description='$PLASTER_PARAM_ModuleDescription' rootModule='$PLASTER_PARAM_ModuleName.psm1' condition='-not (Test-Path "${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/${PLASTER_PARAM_ModuleName}.psd1")' /> <modify path='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/${PLASTER_PARAM_ModuleName}.psd1' condition='(Test-Path "${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/${PLASTER_PARAM_ModuleName}.psd1")'> <replace condition="$PLASTER_FileContent -notmatch '\n\s*Prerelease\s\=\s'"> <original><![CDATA[(?mi)^(?<psdata>(?<newline>\s*)PSData \= @\{\r\n)(?<end>.*)]]></original> <substitute>${psdata}${newline} Prerelease = ''${end}</substitute> </replace> </modify> <templateFile source='module.template' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/${PLASTER_PARAM_ModuleName}.psm1' condition='-not (Test-Path "${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/${PLASTER_PARAM_ModuleName}.psm1")' /> <!-- LICENSE based on type of license MIT/Apache2/CC...--> <!-- MIT License --> <templateFile source='LICENSES/LICENSE.MIT.template' destination='${PLASTER_PARAM_ModuleName}/LICENSE' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity") -or (${PLASTER_PARAM_License} -eq "true" -and ${PLASTER_PARAM_LicenseType} -eq "MIT")' /> <!-- APACHE License --> <templateFile source='LICENSES/LICENSE.Apache.template' destination='${PLASTER_PARAM_ModuleName}/LICENSE' condition='${PLASTER_PARAM_License} -eq "true" -and ${PLASTER_PARAM_LicenseType} -eq "Apache"' /> <!-- END OF LICENSE based on type of license MIT/Apache2/CC...--> <!-- Add Markup help files --> <templateFile source='README.md.template' destination='${PLASTER_PARAM_ModuleName}/README.md' /> <templateFile source='README_dsccommunity.md.template' destination='${PLASTER_PARAM_ModuleName}/README.md' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity")' /> <!-- ABOUT MODULE help text file --> <templateFile source='about_ModuleName.help.template' destination='${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/en-US/about_${PLASTER_PARAM_ModuleName}.help.txt' condition='-not (Test-Path "${PLASTER_PARAM_ModuleName}/${PLASTER_PARAM_SourceDirectory}/en-US/about_${PLASTER_PARAM_ModuleName}.help.txt")' /> <!-- CONTRIBUTING MD --> <file source='CONTRIBUTING.md' destination='${PLASTER_PARAM_ModuleName}/CONTRIBUTING.md' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All")' /> <!-- CODE OF CONDUCT MD --> <file source='CODE_OF_CONDUCT.md' destination='${PLASTER_PARAM_ModuleName}/CODE_OF_CONDUCT.md' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("git")' /> <!-- SECURITY MD DSC COMMUNITY --> <file source='SECURITY.dsccommunity.md' destination='${PLASTER_PARAM_ModuleName}/SECURITY.md' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity")' /> <!-- SECURITY MD DSC GENERIC --> <file source='SECURITY.generic.md' destination='${PLASTER_PARAM_ModuleName}/SECURITY.md' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("git") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <!-- CHANGELOG MD --> <templateFile source='CHANGELOG.md.template' destination='${PLASTER_PARAM_ModuleName}/CHANGELOG.md' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample","SimpleModule") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("git")' /> <!-- GITVERSION CONFIG YAML --> <templateFile source='../Git/GitVersion.yml.template' destination='${PLASTER_PARAM_ModuleName}/GitVersion.yml' condition='(${PLASTER_PARAM_UseGitVersion} -eq $true -and ${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample","SimpleModule")) -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("git")' /> <!-- MARKDOWN LINT --> <file source='markdownlint.json' destination='${PLASTER_PARAM_ModuleName}/.markdownlint.json' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("vscode")' /> <!-- VSCODE SETTINGS --> <file source='../VscodeConfig/settings.json' destination='${PLASTER_PARAM_ModuleName}/.vscode/settings.json' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("vscode")' /> <!-- PSScriptAnalyzer VSCODE CONFIG --> <file source='../VscodeConfig/analyzersettings.psd1' destination='${PLASTER_PARAM_ModuleName}/.vscode/analyzersettings.psd1' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("vscode")' /> <!-- VSCODE SETTINGS --> <file source='../VscodeConfig/tasks.json' destination='${PLASTER_PARAM_ModuleName}/.vscode/tasks.json' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample","SimpleModule") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("vscode")' /> <!-- GITHUB TEMPLATES --> <file source='' destination='${PLASTER_PARAM_ModuleName}/.github' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <file source='../GithubConfig/PULL_REQUEST_TEMPLATE.md' destination='${PLASTER_PARAM_ModuleName}/.github/PULL_REQUEST_TEMPLATE.md' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <file source='../GithubConfig/PULL_REQUEST_TEMPLATE_dsccommunity.md' destination='${PLASTER_PARAM_ModuleName}/.github/PULL_REQUEST_TEMPLATE.md' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity")' /> <file source='' destination='${PLASTER_PARAM_ModuleName}/.github/ISSUE_TEMPLATE' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <templateFile source='../GithubConfig/ISSUE_TEMPLATE/config.yml.template' destination='${PLASTER_PARAM_ModuleName}/.github/ISSUE_TEMPLATE/config.yml' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <file source='../GithubConfig/ISSUE_TEMPLATE/General.md' destination='${PLASTER_PARAM_ModuleName}/.github/ISSUE_TEMPLATE/General.md' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <templateFile source='../GithubConfig/ISSUE_TEMPLATE/Problem_with_module.yml.template' destination='${PLASTER_PARAM_ModuleName}/.github/ISSUE_TEMPLATE/Problem_with_module.yml' condition='${PLASTER_PARAM_ModuleType} -in @("CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <templateFile source='../GithubConfig/ISSUE_TEMPLATE/Problem_with_resource.yml.template' destination='${PLASTER_PARAM_ModuleName}/.github/ISSUE_TEMPLATE/Problem_with_resource.yml' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <file source='../GithubConfig/ISSUE_TEMPLATE/Resource_proposal.yml' destination='${PLASTER_PARAM_ModuleName}/.github/ISSUE_TEMPLATE/Resource_proposal.yml' condition='${PLASTER_PARAM_ModuleType} -in @("dsccommunity","CompleteSample") -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("github")' /> <!-- Codecov.io --> <templateFile source='codecov.yml.template' destination='${PLASTER_PARAM_ModuleName}/codecov.yml' condition='(${PLASTER_PARAM_UseCodeCovIo} -eq $true -and ${PLASTER_PARAM_ModuleType} -in @("dsccommunity", "CompleteSample", "SimpleModule")) -or ${PLASTER_PARAM_Features} -Contains ("All") -or ${PLASTER_PARAM_Features} -Contains ("codecov")' /> </content> </plasterManifest> |