PlasterManifest.xml
<?xml version="1.0" encoding="utf-8"?> <plasterManifest schemaVersion="1.1" templateType="Project" xmlns="http://www.microsoft.com/schemas/PowerShell/Plaster/v1"> <metadata> <name>PowerCD</name> <id>34bfb116-806a-4cc0-a625-04988aa64999</id> <version>0.1.0</version> <title>New Powershell Module for Continuous Delivery (PowerCD)</title> <description>Create a Powershell Module based on common practices, and configure it for Continuous Delivery</description> <author>Justin Grote</author> <tags>Module, Powershell, Appveyor, Github, Continuous Delivery, CI, CD</tags> </metadata> <parameters> <parameter name='ModuleName' type='text' prompt=' ___ ________ `n / _ \___ _ _____ ____/ ___/ _ \`n / ___/ _ \ |/|/ / -_) __/ /__/ // /`n /_/ \___/__,__/\__/_/ \___/____/ `n =================================================`n The Name of your module | Default' default='MyNewModule' /> <parameter name='ModuleDesc' type='text' default='My New Module' prompt='Enter a description of the module. This is required for publishing to the PowerShell Gallery. | Default' /> <parameter name='Version' type='text' prompt='Enter the starting version of the module | Default' default='0.1.0' /> <parameter name='FullName' type='user-fullname' prompt='Enter your full name or an alias/handle. This will be used for Git commit messages and author information | Default' store='text' /> <parameter name='FirstFunctionName' type='text' default='Get-MyModuleItem' store='text' prompt='Enter the name of the first Powershell Function you would like in your module' /> <parameter name='License' type='choice' prompt='Select a license (see http://choosealicense.com for help choosing)' default='0' store='text'> <choice label='&MIT' help="Adds a MIT license file (https://choosealicense.com/licenses/mit)." value="MIT" /> <choice label='&Apache 2.0' help="Adds a Apache 2.0 license file (https://choosealicense.com/licenses/apache-2.0/)." value="Apache" /> <choice label='&GNU GPLv3' help="Adds a GNU GPLv3 license file (https://choosealicense.com/licenses/gpl-3.0/)." value="GNU" /> <choice label='&None' help="No license." value="None" /> </parameter> <parameter name='Editor' type='choice' prompt='Additional Editor Integrations' default='0' store='text' > <choice label='Visual Studio &Code' help="Your editor is Visual Studio Code." value="VSCode"/> <choice label='&None' help="No editor specified or you don't wish to set up any specific editor integrations" value="None"/> </parameter> <parameter name='AppVeyor' type='text' default='Y' store='text' prompt='Do you wish to add Appveyor support? | Default' /> </parameters> <content> <!-- Basic Module Scaffolding --> <newModuleManifest destination='${PLASTER_PARAM_ModuleName}.psd1' moduleVersion='$PLASTER_PARAM_Version' rootModule='${PLASTER_PARAM_ModuleName}.psm1' author='$PLASTER_PARAM_FullName' description='$PLASTER_PARAM_ModuleDesc' encoding='UTF8-NoBOM' /> <file destination='Public\' source='' /> <file destination='Private\' source='' /> <file destination='Build\' source='' /> <file destination='Release\' source='' /> <file destination='Tests\' source='' /> <file source='Tests\00-PowershellModule.Tests.ps1' destination='' /> <file source='PSModule.build.ps1' destination='' /> <file source='.git*' destination='' /> <file source='GitVersion.yml' destination='' /> <file source='Build\**' destination='Build' /> <!-- First Function --> <templateFile source='Templates\Default\firstfunction.ps1.txt' destination='Public\${PLASTER_PARAM_FirstFunctionName}.ps1' /> <!-- License Files --> <!-- TODO: Substitute Year and Fullname in MIT License using TemplateFile or modify? --> <!-- TODO: Figure out how to substitute Template with MIT --> <templateFile condition="$PLASTER_PARAM_License -eq 'MIT'" source='Templates\Default\license\MIT.txt' destination='LICENSE' /> <templateFile condition="$PLASTER_PARAM_License -eq 'Apache'" source='Templates\Default\license\Apache.txt' destination='LICENSE' /> <templateFile condition="$PLASTER_PARAM_License -eq 'GPL'" source='Templates\Default\license\GPL.txt' destination='LICENSE' /> <!-- Appveyor --> <file condition="$PLASTER_PARAM_Appveyor -like 'Y*'" source='appveyor.yml' destination='appveyor.yml' /> </content> </plasterManifest> |