Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/modulebuild/modulebuild
A scaffolding framework which can be used to kickstart a generic PowerShell module project.
https://github.com/modulebuild/modulebuild
build build-automation build-script build-system build-tool invoke-build module modulebuild plaster platyps portable powershell powershell-gallery powershell-module powershell-script readthedocs scaffolding-framework visual-studio
Last synced: about 1 month ago
JSON representation
A scaffolding framework which can be used to kickstart a generic PowerShell module project.
- Host: GitHub
- URL: https://github.com/modulebuild/modulebuild
- Owner: ModuleBuild
- License: other
- Created: 2017-06-08T03:08:06.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-05-02T16:40:45.000Z (over 4 years ago)
- Last Synced: 2024-09-24T04:32:31.171Z (about 2 months ago)
- Topics: build, build-automation, build-script, build-system, build-tool, invoke-build, module, modulebuild, plaster, platyps, portable, powershell, powershell-gallery, powershell-module, powershell-script, readthedocs, scaffolding-framework, visual-studio
- Language: PowerShell
- Size: 4.19 MB
- Stars: 57
- Watchers: 9
- Forks: 12
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: docs/Contributing.md
- License: LICENSE.md
Awesome Lists containing this project
README
# ModuleBuild
A scaffolding framework which can be used to kickstart a generic PowerShell module project with a bunch of extras.
## Description
A scaffolding framework which can be used to kickstart a generic PowerShell module project with an Invoke-Build backend for regular deployments and other automated tasks. This project helps make everything about starting, documenting, building, and eventually releasing your module to the PSGallary a breeze.
## Requirements
- PowerShell 5.0
- All other module requirements will be automatically installed at build time if they are not available. (This is one of the reasons PowerShell 5 or greater is required)
## Installation
Powershell Gallery (PS 5.0, Preferred method)
`install-module ModuleBuild -Scope:CurrentUser`Manual Installation
`iex (New-Object Net.WebClient).DownloadString("https://github.com/zloeber/ModuleBuild/raw/master/Install.ps1")`Or clone this repository to your local machine, extract, go to the .\releases\ModuleBuild directory
and import the module to your session to test, but not install this module.## Features
This build framework for PowerShell modules comes with several appealing baked in features which include;
- Fully portable project directory structure and build process. So portable that you can copy it to another PowerShell 5.0 capable system and it should run the same.
- Automatically combine your public and private functions into one clean psm1 file at build time.
- Automatically update your psd1 file with public functions at build time.
- Automatically scan your module release with PSScriptAnalyzer
- Automatically upload your script to the PowerShell Gallery (with appropriate API key)
- Automatically create project documentation folder structure and yml definition file for ReadTheDocs.org integration
- Automatically start Pester tests during build process
- Visual Studio Code integration (tasks)
- Easy to manage build configuration with forward compatible design and easy to use commands
- Includes ability to scan for sensitive terms (like your company domain name or other items that you may not want published)
- Functions for importing public and private functions from other projects into a ModuleBuild project
- Add new public functions to your project based on easy to create templates.## Documentation
Visit the [ReadTheDocs.org documentation](http://modulebuild.readthedocs.io/en/latest/) that this module created a manifest for automatically.
## Contribute
Please feel free to contribute by opening new issues or providing pull requests.
For the best development experience, open this project as a folder in Visual
Studio Code and ensure that the PowerShell extension is installed.* [Visual Studio Code](https://code.visualstudio.com/)
* [PowerShell Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.PowerShell)More contributing information can be found [here](https://github.com/zloeber/ModuleBuild/blob/master/docs/Contributing.md).
This module is tested with the PowerShell testing framework Pester. To run all tests, just start the included build script with the test param `.\Build.ps1 -test`.
## Other Information
**Authors:**
- [Zachary Loeber](https://www.the-little-things.net)
- [Justin Perdok](https://github.com/justin-p)**Website:** https://github.com/zloeber/ModuleBuild