https://github.com/mod-posh/testpowershellmodule
This action simplifies the process of creating and validating PowerShell modules within a GitHub workflow.
https://github.com/mod-posh/testpowershellmodule
github-actions powershell
Last synced: 7 days ago
JSON representation
This action simplifies the process of creating and validating PowerShell modules within a GitHub workflow.
- Host: GitHub
- URL: https://github.com/mod-posh/testpowershellmodule
- Owner: mod-posh
- License: gpl-3.0
- Created: 2024-07-18T18:38:46.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-18T19:24:22.000Z (over 1 year ago)
- Last Synced: 2024-07-19T02:22:29.223Z (over 1 year ago)
- Topics: github-actions, powershell
- Language: PowerShell
- Homepage:
- Size: 20.5 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Test PowerShell Module GitHub Action
This GitHub Action is designed to create and test a PowerShell module from source files. It integrates with GitHub's Actions workflow to automate the process of setting up, testing, and validating PowerShell modules.
## Inputs
### `ModuleName`
**Required** The name of the PowerShell module.
### `Source`
**Optional** The source directory containing the module (relative to the workspace). Default is the root of the workspace.
### `Output`
**Optional** The output directory for the manifest (relative to the workspace). The default is `output``.
### `Debug`
**Optional** Enable debug mode. The default is `false``.
## Example usage
```yaml
name: Build PowerShell Module
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
path: 'Repo'
- name: Create PowerShell Manifest
uses: mod-posh/CreatePowerShellManifest@v0.0.1.0
with:
ModuleName: 'SpnLibrary'
Source: 'Repo'
Imports: 'public'
Debug: 'true'
- name: Create PowerShell Module
uses: mod-posh/CreatePowerShellModule@v0.0.1.0
with:
ModuleName: 'SpnLibrary'
Source: 'Repo'
Imports: 'public'
Debug: 'true'
- name: Test PowerShell Module
uses: mod-posh/TestpowerShellModule@main
with:
ModuleName: 'SpnLibrary'
Source: 'Repo'
Debug: 'true'
- name: Upload PowerShell Module
uses: actions/upload-artifact@v4
with:
name: your-module-output
path: ${{ github.workspace }}/output
```