Skip to content

Commit

Permalink
Start clean up for publishing
Browse files Browse the repository at this point in the history
  • Loading branch information
Chris Hunt committed May 6, 2024
1 parent e13acff commit d0a481f
Show file tree
Hide file tree
Showing 13 changed files with 205 additions and 12 deletions.
156 changes: 156 additions & 0 deletions .github/workflows/powershell.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
name: PowerShell

on:
push:
branches: [ "main" ]
paths-ignore:
- 'docs/**'
- 'Changelog.md'
- 'README.md'
pull_request:
branches: [ "main" ]

permissions:
contents: read

jobs:
build:
permissions:
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
name: Build
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # avoid shallow clone so nbgv can do its work.

- name: Run PSScriptAnalyzer
uses: microsoft/psscriptanalyzer-action@6b2948b1944407914a58661c49941824d149734f
with:
# Check https://github.com/microsoft/action-psscriptanalyzer for more info about the options.
# The below set up runs PSScriptAnalyzer to your entire repository and runs some basic security rules.
path: .\src
recurse: true
# Include your own basic security rules. Removing this option will run all the rules
includeRule: '"PSAvoidGlobalAliases", "PSAvoidUsingConvertToSecureStringWithPlainText"'
output: results.sarif

# Upload the SARIF file generated in the previous step
- name: Upload SARIF results file
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: results.sarif

- uses: dotnet/nbgv@1801854259a50d987aaa03b99b28cebf49faa779
id: nbgv

- name: Build
shell: pwsh
run: ./build.ps1 build ${{ steps.nbgv.outputs.VersionMajor }} ${{ steps.nbgv.outputs.VersionMinor }} ${{ steps.nbgv.outputs.BuildNumber }} ${{ steps.nbgv.outputs.VersionRevision }} ${{ steps.nbgv.outputs.PrereleaseVersionNoLeadingHyphen }}

- name: Store build output
uses: actions/upload-artifact@v4
with:
name: build
path: |
publish
retention-days: 1

#test7:
# permissions:
# contents: read # for actions/checkout to fetch code
# actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
# name: Test PowerShell 7
# needs: Build
# runs-on: ubuntu-latest
# container:
# image: mcr.microsoft.com/powershell:${{ matrix.pwshv }}-ubuntu-22.04
# strategy:
# matrix:
# pwshv: ['7.3','7.4']
#
# steps:
# - uses: actions/checkout@v4
#
# - name: Download build output
# uses: actions/download-artifact@v4
# with:
# name: build
# path: publish
#
# - name: Install Utils
# shell: pwsh
# run: |
# apt-get update
# apt-get install curl jq -y
#
# - uses: testspace-com/setup-testspace@v1
# with:
# domain: ${{github.repository_owner}}
#
# - name: Test
# shell: pwsh
# run: ./build.ps1 test
#
# - name: Publish Results to Testspace
# run: testspace "[v${{ matrix.pwshv }}]testResults.xml"
#
# if: always()

# test5:
# permissions:
# contents: read # for actions/checkout to fetch code
# actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
# name: Test PowerShell 5
# needs: Build
# runs-on: windows-latest
# steps:
# - uses: actions/checkout@v4
# with:
# fetch-depth: 0
#
# - name: Download build output
# uses: actions/download-artifact@v4
# with:
# name: build
# path: publish
#
# - uses: testspace-com/setup-testspace@v1
# with:
# domain: ${{github.repository_owner}}
#
# - name: Test
# shell: powershell
# run: ./build.ps1 test
#
# - name: Publish Results to Testspace
# run: testspace "[v5.1]testResults.xml"
# if: always()

publish:
permissions:
contents: read # for actions/checkout to fetch code
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
name: Publish
#needs: [test7, test5]
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/dotnet/sdk:8.0
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v4

- name: Download build output
uses: actions/download-artifact@v4
with:
name: build
path: publish

- name: Publish
shell: pwsh
run: ./build.ps1 publish
env:
PSPublishApiKey: ${{ secrets.NUGETAPIKEY }}
2 changes: 1 addition & 1 deletion build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ function Docs {
Add-ModuleProperty Name -H1 |
Add-ModuleProperty Description |
Add-HelpDocText "Commands" -H2 |
Add-ModuleCommands -AsLinks |
Add-ModuleCommand -AsLinks |
Out-HelpDoc -Path 'docs/README.md'

# Individual Commands
Expand Down
4 changes: 4 additions & 0 deletions docs/Add-HelpDocText.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,7 @@ Add-HelpDocText [-Text] <string> [-HelpDoc] <psobject> [-H1] [<CommonParameters>
- `[string]` **Text** _Parameter help description_ Mandatory
- `[psobject]` **HelpDoc** _Parameter help description_ Mandatory, ValueFromPipeline
- `[Switch]` **H1** _Parameter help description_

## Outputs

- `System.Object`
8 changes: 6 additions & 2 deletions docs/Add-ModuleCommands.md → docs/Add-ModuleCommand.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Add-ModuleCommands
# Add-ModuleCommand


Add-ModuleCommands [-HelpDoc] <psobject> [-AsLinks] [<CommonParameters>]
Add-ModuleCommand [-HelpDoc] <psobject> [-AsLinks] [<CommonParameters>]


## Parameters
Expand All @@ -10,3 +10,7 @@ Add-ModuleCommands [-HelpDoc] <psobject> [-AsLinks] [<CommonParameters>]

- `[psobject]` **HelpDoc** _Parameter help description_ Mandatory, ValueFromPipeline
- `[Switch]` **AsLinks** _Parameter help description_

## Outputs

- `System.Object`
4 changes: 4 additions & 0 deletions docs/Add-ModuleProperty.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,7 @@ Add-ModuleProperty [-Property] <string> [-HelpDoc] <psobject> [-H1] [<CommonPara
- `[string]` **Property** _Parameter help description_ Mandatory
- `[psobject]` **HelpDoc** _Parameter help description_ Mandatory, ValueFromPipeline
- `[Switch]` **H1** _Parameter help description_

## Outputs

- `System.Object`
10 changes: 10 additions & 0 deletions docs/Get-HelpCommandData.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,19 @@

Get-HelpCommandData [-Name] <string> [<CommonParameters>]

Get-HelpCommandData [-HelpSource] <psobject> [<CommonParameters>]


## Parameters

### Parameter Set 1

- `[string]` **Name** _Parameter help description_ Mandatory, ValueFromPipeline

### Parameter Set 2

- `[psobject]` **HelpSource** _Parameter help description_ Mandatory, ValueFromPipeline

## Outputs

- `System.Object`
4 changes: 4 additions & 0 deletions docs/Get-HelpModuleData.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,7 @@ Get-HelpModuleData [-Name] <string> [<CommonParameters>]
### Parameter Set 1

- `[string]` **Name** _Parameter help description_ Mandatory, ValueFromPipeline

## Outputs

- `System.Object`
5 changes: 5 additions & 0 deletions docs/New-HelpDoc.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,8 @@ New-HelpDoc [-HelpModuleData] <psobject> [<CommonParameters>]
### Parameter Set 1

- `[psobject]` **HelpModuleData** _Parameter help description_ Mandatory, ValueFromPipeline

## Outputs

- `System.Collections.Hashtable
`
4 changes: 4 additions & 0 deletions docs/Out-HelpDoc.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,7 @@ Out-HelpDoc [[-Path] <string>] [-HelpDoc] <psobject> [<CommonParameters>]

- `[string]` **Path** _Parameter help description_
- `[psobject]` **HelpDoc** _Parameter help description_ Mandatory, ValueFromPipeline

## Outputs

- `System.Object`
14 changes: 7 additions & 7 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ Helper for building markdown docs from PowerShell Command Help.

## Commands

- [Add-HelpDocText](Add-HelpDocText.md) _No parameter help description_
- [Add-ModuleCommands](Add-ModuleCommands.md) _No parameter help description_
- [Add-ModuleProperty](Add-ModuleProperty.md) _No parameter help description_
- [Get-HelpCommandData](Get-HelpCommandData.md) _No parameter help description_
- [Get-HelpModuleData](Get-HelpModuleData.md) _No parameter help description_
- [New-HelpDoc](New-HelpDoc.md) _No parameter help description_
- [Out-HelpDoc](Out-HelpDoc.md) _No parameter help description_
- [Add-HelpDocText](Add-HelpDocText.md) _No help description_
- [Add-ModuleCommand](Add-ModuleCommand.md) _No help description_
- [Add-ModuleProperty](Add-ModuleProperty.md) _No help description_
- [Get-HelpCommandData](Get-HelpCommandData.md) _No help description_
- [Get-HelpModuleData](Get-HelpModuleData.md) _No help description_
- [New-HelpDoc](New-HelpDoc.md) _No help description_
- [Out-HelpDoc](Out-HelpDoc.md) _No help description_

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
function Add-ModuleCommands {
function Add-ModuleCommand {
[CmdletBinding()]
param (
[Parameter(Mandatory, Position = 0, ValueFromPipeline)]
Expand Down
2 changes: 2 additions & 0 deletions src/public/New-HelpDoc.ps1
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
function New-HelpDoc {
[Diagnostics.CodeAnalysis.SuppressMessageAttribute('PSUseShouldProcessForStateChangingFunctions', '', Justification = 'Does not alter state')]
[CmdletBinding()]
[OutputType('System.Collections.Hashtable')]
param (
[Parameter(Mandatory, Position = 0, ValueFromPipeline)]
[PSCustomObject]
Expand Down
2 changes: 1 addition & 1 deletion version.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/main/src/NerdBank.GitVersioning/version.schema.json",
"version": "0.1.1",
"version": "0.2.0",
"cloudBuild": {
"buildNumber": {
"enabled": true
Expand Down

0 comments on commit d0a481f

Please sign in to comment.