From 14e934354667e5f15a10e3c8774031eadded1bd6 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 11:49:05 +0200 Subject: [PATCH 01/22] Create building-and-testing-powershell.md --- .../guides/building-and-testing-powershell.md | 211 ++++++++++++++++++ 1 file changed, 211 insertions(+) create mode 100644 content/actions/guides/building-and-testing-powershell.md diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md new file mode 100644 index 000000000000..02a68d46db59 --- /dev/null +++ b/content/actions/guides/building-and-testing-powershell.md @@ -0,0 +1,211 @@ +--- +title: Building and testing PowerShell +intro: You can create a continuous integration (CI) workflow to build and test your PowerShell project. +--- + +{% data reusables.actions.enterprise-beta %} +{% data reusables.actions.enterprise-github-hosted-runners %} + +### Introduction + +This guide shows you how to install, test and publish a PowerShell module. + +{% data variables.product.prodname_dotcom %}-hosted runners have a tools cache with pre-installed software, which includes PowerShell and Pester. You don't have to install anything! For a full list of up-to-date software and the pre-installed versions of PowerShell and Pester, see "[Specifications for {% data variables.product.prodname_dotcom %}-hosted runners](/actions/reference/specifications-for-github-hosted-runners/#supported-software)". + +### Prerequisites + +You should be familiar with YAML and the syntax for {% data variables.product.prodname_actions %}. For more information, see "[Learn {% data variables.product.prodname_actions %}](/actions/learn-github-actions)." + +We recommend that you have a basic understanding of PowerShell and Pester. For more information, see: +- [Getting started with PowerShell](https://docs.microsoft.com/en-us/powershell/scripting/learn/ps101/01-getting-started) +- [Pester](https://pester.dev) + +{% data reusables.actions.enterprise-setup-prereq %} + +### Starting with the PowerShell workflow template + +{% data variables.product.prodname_dotcom %} provides a PowerShell workflow template that should work for most PowerShell projects. This guide includes examples that you can use to customize the template. For more information, see the [PowerShell workflow template](https://github.com/actions/starter-workflows/blob/main/ci/powershell.yml). + +To get started quickly, add the template to the `.github/workflows` directory of your repository. + +{% raw %} +```yaml +name: Test PowerShell on Ubuntu, macOS and Windows + +on: + push: + branches: [ $default-branch ] + pull_request: + branches: [ $default-branch ] + +jobs: + build: + name: Pester tests work on all platforms + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + + steps: + - uses: actions/checkout@v1 + - name: Perform a Pester test from the command-line to ensure expected results + shell: pwsh + run: Get-ChildItem | Select-Object -ExpandProperty Name -First 1 | Should -Be '.github' + - name: Perform advanced tests + shell: pwsh + run: | + Invoke-Pester Unit.Tests.ps1 -Passthru + Invoke-Pester Integration.Tests.ps1 -Passthru +``` +{% endraw %} + +### PowerShell module locations + +The table below describes the locations for various PowerShell modules in each {% data variables.product.prodname_dotcom %}-hosted runner. + +|| Ubuntu | Mac | Windows | +|------|-------|------|----------| +|**PowerShell system modules** |`/opt/microsoft/powershell/7/Modules/*`|`/usr/local/microsoft/powershell/7/Modules/*`|`C:\program files\powershell\7\Modules\*`| +|**PowerShell add-on modules**|`/usr/local/share/powershell/Modules/*`|`/usr/local/share/powershell/Modules/*`|`C:\Modules\*`| +|**User-installed modules**|`/home/runner/.local/share/powershell/Modules/*`|`/Users/runner/.local/share/powershell/Modules/*`|`C:\Users\runneradmin\Documents\PowerShell\Modules\*`| + +### Installing dependencies + +{% data variables.product.prodname_dotcom %}-hosted runners have PowerShell 7 and Pester installed. You can use `Install-Module` to install additional dependencies from the PowerShell Gallery before building and testing your code. For example, the YAML below installs the `SqlServer` and `PSScriptAnalyzer` modules. + +You can also cache dependencies to speed up your workflow. For more information, see "[Caching dependencies to speed up your workflow](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." + +{% raw %} +```yaml +steps: +- uses: actions/checkout@v2 +- name: Install dependencies + run: | + Set-PSRepository PSGallery -InstallationPolicy Trusted + Install-Module SqlServer, PSScriptAnalyzer + shell: pwsh +``` +{% endraw %} + +{% note %} + +**Note:** By default, no repositories are trusted by PowerShell. When installing modules from the PowerShell Gallery, you must explicitly set the installation policy for `PSGallery` to `Trusted`. + +{% endnote %} + +#### Caching Dependencies + +You can cache PowerShell module dependencies using a unique key, and restore the dependencies when you run future workflows using the [`cache`](https://github.com/marketplace/actions/cache) action. For more information, see "[Caching dependencies to speed up workflows](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." + +PowerShell caches dependencies in different locations, depending on the operating system of the runner. The path you'll need to cache may differ from the Ubuntu example below depending on the operating system you use. For more information, see [PowerShell caching examples](https://github.com/actions/cache/blob/main/examples.md#PowerShell). + +{% raw %} +```yaml +steps: + - uses: actions/checkout@v2 + - name: Setup PowerShell module cache + id: cacher + uses: actions/cache@v2 + with: + path: "~/.local/share/powershell/Modules" + key: ${{ runner.os }}-SqlServer-PSScriptAnalyzer + - name: Install required PowerShell modules + if: steps.cacher.outputs.cache-hit != 'true' + shell: pwsh + run: | + Set-PSRepository PSGallery -InstallationPolicy Trusted + Install-Module SqlServer, PSScriptAnalyzer -ErrorAction Stop +``` +{% endraw %} + +### Testing your code + +You can use the same commands that you use locally to build and test your code. + +#### Using PSScriptAnalyzer to lint code + +The following example installs `PSScriptAnalyzer` and uses it to lint all ps1 files. For more information, see [PSScriptAnalyzer on GitHub](https://github.com/PowerShell/PSScriptAnalyzer). + +{% raw %} +```yaml +steps: +- uses: actions/checkout@v2 +- name: Install PSScriptAnalyzer + Set-PSRepository PSGallery -InstallationPolicy Trusted + Install-Module PSScriptAnalyzer -ErrorAction Stop +- name: Lint with PSScriptAnalyzer + run: | + Invoke-ScriptAnalyzer -Path *.ps1 -Recurse -Outvariable issues + $errors = $issues.Where({$_.Severity -eq 'Error'}) + $warnings = $issues.Where({$_.Severity -eq 'Warning'}) + Write-Output "There were $($errors.Count) errors and $($warnings.Count) warnings total." + } +``` +{% endraw %} + +### Packaging workflow data as artifacts + +You can upload artifacts to view after a workflow completes. For example, you may need to save log files, core dumps, test results, or screenshots. For more information, see "[Persisting workflow data using artifacts](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)." + +The following example demonstrates how you can use the `upload-artifact` action to archive test results from running `Invoke-Pester`. For more information, see the [`upload-artifact` action](https://github.com/actions/upload-artifact). + +{% raw %} +```yaml +name: Test PowerShell on Ubuntu, macOS and Windows + +on: + push: + branches: [ $default-branch ] + pull_request: + branches: [ $default-branch ] + +jobs: + build: + name: Pester tests work on all platforms + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + + steps: + - uses: actions/checkout@v1 + - name: Test with Pester + shell: pwsh + run: | + Invoke-Pester All.Tests.ps1 -Passthru | Export-CliXml -Path All.Tests.xml + - name: Upload Pester test results + uses: actions/upload-artifact@v2 + with: + name: All-Tests + path: All.Tests.xml + # Use always() to always run this step to publish test results when there are test failures + if: ${{ always() }} +``` +{% endraw %} + +### Publishing to package registries + +You can configure your workflow to publish your PowerShell package to any package registry you'd like when your CI tests pass. + +You can store any access tokens or credentials needed to publish your module using repository secrets. The following example creates and publishes a module to the PowerShell Gallery using `Publish-Module`. For more information, see "[Creating and using encrypted secrets](/github/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." + +{% raw %} +```yaml +name: Publish PowerShell Module + +on: + release: + types: [created] + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Build and publish + env: + NUGET_KEY: ${{ secrets.NUGET_KEY }} + run: | + Publish-Module -Path . -NuGetApiKey $NUGET_KEY -Verbose +``` +{% endraw %} \ No newline at end of file From db0cdbdd4f2ec51244e4d541fc000f86d0dd9017 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 11:54:38 +0200 Subject: [PATCH 02/22] add versions guessing version support, based on python --- content/actions/guides/building-and-testing-powershell.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 02a68d46db59..53c2cd646464 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -1,6 +1,9 @@ --- title: Building and testing PowerShell intro: You can create a continuous integration (CI) workflow to build and test your PowerShell project. +versions: + free-pro-team: '*' + enterprise-server: '>=2.22' --- {% data reusables.actions.enterprise-beta %} From d7900f33b1f01a62992956e129b6fbddf3a5f46a Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 11:55:51 +0200 Subject: [PATCH 03/22] remove . github example, add 'bin' --- content/actions/guides/building-and-testing-powershell.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 53c2cd646464..89433596a01e 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -53,7 +53,7 @@ jobs: - uses: actions/checkout@v1 - name: Perform a Pester test from the command-line to ensure expected results shell: pwsh - run: Get-ChildItem | Select-Object -ExpandProperty Name -First 1 | Should -Be '.github' + run: Get-ChildItem | Select-Object -ExpandProperty Name -First 1 | Should -Be 'bin' - name: Perform advanced tests shell: pwsh run: | From 712bc2ea68f932038fddc208c17cf9e5e67d7576 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 12:07:59 +0200 Subject: [PATCH 04/22] remove errant brace --- content/actions/guides/building-and-testing-powershell.md | 1 - 1 file changed, 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 89433596a01e..48009d60e2aa 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -142,7 +142,6 @@ steps: $errors = $issues.Where({$_.Severity -eq 'Error'}) $warnings = $issues.Where({$_.Severity -eq 'Warning'}) Write-Output "There were $($errors.Count) errors and $($warnings.Count) warnings total." - } ``` {% endraw %} From 4b381eca3d6aa756975feb74a236c7f4cad9baa5 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 12:09:22 +0200 Subject: [PATCH 05/22] no multi-line, pipe not needed --- content/actions/guides/building-and-testing-powershell.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 48009d60e2aa..6a6cea607c88 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -173,8 +173,7 @@ jobs: - uses: actions/checkout@v1 - name: Test with Pester shell: pwsh - run: | - Invoke-Pester All.Tests.ps1 -Passthru | Export-CliXml -Path All.Tests.xml + run: Invoke-Pester All.Tests.ps1 -Passthru | Export-CliXml -Path All.Tests.xml - name: Upload Pester test results uses: actions/upload-artifact@v2 with: From 8a661b5f51ebb9b3fb2ff6ccfde18f98331db9d2 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 12:28:26 +0200 Subject: [PATCH 06/22] add consistency and shells --- .../actions/guides/building-and-testing-powershell.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 6a6cea607c88..418303f044b1 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -83,10 +83,10 @@ You can also cache dependencies to speed up your workflow. For more information, steps: - uses: actions/checkout@v2 - name: Install dependencies + shell: pwsh run: | Set-PSRepository PSGallery -InstallationPolicy Trusted Install-Module SqlServer, PSScriptAnalyzer - shell: pwsh ``` {% endraw %} @@ -134,9 +134,12 @@ The following example installs `PSScriptAnalyzer` and uses it to lint all ps1 fi steps: - uses: actions/checkout@v2 - name: Install PSScriptAnalyzer + shell: pwsh + run: | Set-PSRepository PSGallery -InstallationPolicy Trusted Install-Module PSScriptAnalyzer -ErrorAction Stop - name: Lint with PSScriptAnalyzer + shell: pwsh run: | Invoke-ScriptAnalyzer -Path *.ps1 -Recurse -Outvariable issues $errors = $issues.Where({$_.Severity -eq 'Error'}) @@ -206,7 +209,7 @@ jobs: - name: Build and publish env: NUGET_KEY: ${{ secrets.NUGET_KEY }} - run: | - Publish-Module -Path . -NuGetApiKey $NUGET_KEY -Verbose + shell: pwsh + run: Publish-Module -Path . -NuGetApiKey $NUGET_KEY -Verbose ``` {% endraw %} \ No newline at end of file From 1038367f698a399dd11d22061cda479c25f798a4 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 13:07:56 +0200 Subject: [PATCH 07/22] fix formatting and code --- .../guides/building-and-testing-powershell.md | 33 +++++++++---------- 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 418303f044b1..ff973623c410 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -156,34 +156,31 @@ The following example demonstrates how you can use the `upload-artifact` action {% raw %} ```yaml -name: Test PowerShell on Ubuntu, macOS and Windows +name: Upload artifact from on Ubuntu, macOS and Windows -on: - push: - branches: [ $default-branch ] - pull_request: - branches: [ $default-branch ] +on: [push] jobs: build: - name: Pester tests work on all platforms + name: Upload Pester tests work from all platforms runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-latest, windows-latest, macOS-latest] + os: [ubuntu-latest, windows-latest, macos-latest] steps: - uses: actions/checkout@v1 - - name: Test with Pester - shell: pwsh - run: Invoke-Pester All.Tests.ps1 -Passthru | Export-CliXml -Path All.Tests.xml - - name: Upload Pester test results - uses: actions/upload-artifact@v2 - with: - name: All-Tests - path: All.Tests.xml + - name: Test with Pester + shell: pwsh + run: Invoke-Pester All.Tests.ps1 -Passthru | Export-CliXml -Path All.Tests.xml + - name: Upload test results + uses: actions/upload-artifact@v2 + with: + # upload distinct zip files per OS + name: ${{ runner.os }}-All-Tests + path: All.Tests.xml # Use always() to always run this step to publish test results when there are test failures - if: ${{ always() }} + if: ${{ always() }} ``` {% endraw %} @@ -210,6 +207,6 @@ jobs: env: NUGET_KEY: ${{ secrets.NUGET_KEY }} shell: pwsh - run: Publish-Module -Path . -NuGetApiKey $NUGET_KEY -Verbose + run: Publish-Module -Path . -NuGetApiKey $env:NUGET_KEY -Verbose ``` {% endraw %} \ No newline at end of file From 92012f1afa9d5d34d03e63a9927cba81a8430848 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 15:24:30 +0200 Subject: [PATCH 08/22] added recommendation --- content/actions/guides/building-and-testing-powershell.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index ff973623c410..211ee2dea1ab 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -141,6 +141,7 @@ steps: - name: Lint with PSScriptAnalyzer shell: pwsh run: | + # Consider using github-action-psscriptanalyzer in the Marketplace instead. Invoke-ScriptAnalyzer -Path *.ps1 -Recurse -Outvariable issues $errors = $issues.Where({$_.Severity -eq 'Error'}) $warnings = $issues.Where({$_.Severity -eq 'Warning'}) From 6caa306898455f300024ebeaebb9ce6a1fb64527 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Thu, 8 Oct 2020 21:02:19 +0200 Subject: [PATCH 09/22] add to index --- content/actions/guides/index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/actions/guides/index.md b/content/actions/guides/index.md index 74739584d287..ed16f5d6226c 100644 --- a/content/actions/guides/index.md +++ b/content/actions/guides/index.md @@ -29,6 +29,7 @@ You can use {% data variables.product.prodname_actions %} to create custom conti {% link_in_list /about-continuous-integration %} {% link_in_list /setting-up-continuous-integration-using-workflow-templates %} {% link_in_list /building-and-testing-nodejs %} +{% link_in_list /building-and-testing-powershell %} {% link_in_list /building-and-testing-python %} {% link_in_list /building-and-testing-java-with-maven %} {% link_in_list /building-and-testing-java-with-gradle %} From 60d38a3645c5c480caf90d087354f0b5f263671e Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Sat, 10 Oct 2020 09:48:49 +0200 Subject: [PATCH 10/22] Update content/actions/guides/building-and-testing-powershell.md Co-authored-by: Rachael Sewell --- content/actions/guides/building-and-testing-powershell.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 211ee2dea1ab..185320747b7e 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -50,7 +50,8 @@ jobs: os: [ubuntu-latest, windows-latest, macOS-latest] steps: - - uses: actions/checkout@v1 + - name: Check out repository code + uses: actions/checkout@v2 - name: Perform a Pester test from the command-line to ensure expected results shell: pwsh run: Get-ChildItem | Select-Object -ExpandProperty Name -First 1 | Should -Be 'bin' @@ -210,4 +211,4 @@ jobs: shell: pwsh run: Publish-Module -Path . -NuGetApiKey $env:NUGET_KEY -Verbose ``` -{% endraw %} \ No newline at end of file +{% endraw %} From b33dfa6b41a9cce59ad6d13bd78e055d04f31f12 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Sat, 10 Oct 2020 10:28:13 +0200 Subject: [PATCH 11/22] Update content/actions/guides/building-and-testing-powershell.md Co-authored-by: Rachael Sewell --- content/actions/guides/building-and-testing-powershell.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 185320747b7e..343246c585f9 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -1,6 +1,7 @@ --- title: Building and testing PowerShell intro: You can create a continuous integration (CI) workflow to build and test your PowerShell project. +product: '{% data reusables.gated-features.actions %}' versions: free-pro-team: '*' enterprise-server: '>=2.22' From ca5e7c2bba5e3392742f8bfbf15a4b321ec4733b Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Sat, 10 Oct 2020 20:49:44 +0200 Subject: [PATCH 12/22] add sample builder --- content/actions/guides/building-and-testing-powershell.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 343246c585f9..b2c4594de013 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -210,6 +210,8 @@ jobs: env: NUGET_KEY: ${{ secrets.NUGET_KEY }} shell: pwsh - run: Publish-Module -Path . -NuGetApiKey $env:NUGET_KEY -Verbose + run: | + ./build.ps1 -Path /tmp/samplemodule + Publish-Module -Path /tmp/samplemodule -NuGetApiKey $env:NUGET_KEY -Verbose ``` {% endraw %} From 8215b0cc196aef90ce21d82d58ab8c560987d0a8 Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Fri, 16 Oct 2020 10:27:12 +0200 Subject: [PATCH 13/22] Update building-and-testing-powershell.md --- content/actions/guides/building-and-testing-powershell.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index b2c4594de013..979289de250a 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -12,7 +12,7 @@ versions: ### Introduction -This guide shows you how to install, test and publish a PowerShell module. +This guide shows you how to install dependencies, test your module, and publish to the PowerShell Gallery. {% data variables.product.prodname_dotcom %}-hosted runners have a tools cache with pre-installed software, which includes PowerShell and Pester. You don't have to install anything! For a full list of up-to-date software and the pre-installed versions of PowerShell and Pester, see "[Specifications for {% data variables.product.prodname_dotcom %}-hosted runners](/actions/reference/specifications-for-github-hosted-runners/#supported-software)". From e872b14ed999d07d060c1e842f8aa5e58bc5d876 Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Mon, 19 Oct 2020 12:24:27 +1000 Subject: [PATCH 14/22] Added requested changes - Added some small edits. - Converted example into a standalone. - Switched example to test-path. - Added explanations for powershell actions. - Added screenshot of example test failure. --- .../repository/actions-failed-pester-test.png | Bin 0 -> 122442 bytes .../guides/building-and-testing-powershell.md | 51 ++++++++++-------- 2 files changed, 28 insertions(+), 23 deletions(-) create mode 100644 assets/images/help/repository/actions-failed-pester-test.png diff --git a/assets/images/help/repository/actions-failed-pester-test.png b/assets/images/help/repository/actions-failed-pester-test.png new file mode 100644 index 0000000000000000000000000000000000000000..bc19a4f33fb8f80fabaf15065cbe68dc85d7a26f GIT binary patch literal 122442 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 z%0A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 A4*&oF literal 0 HcmV?d00001 diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 979289de250a..9256818fba87 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -12,9 +12,9 @@ versions: ### Introduction -This guide shows you how to install dependencies, test your module, and publish to the PowerShell Gallery. +This guide shows you how to use PowerShell for CI. It describes how to use Pester, install dependencies, test your module, and publish to the PowerShell Gallery. -{% data variables.product.prodname_dotcom %}-hosted runners have a tools cache with pre-installed software, which includes PowerShell and Pester. You don't have to install anything! For a full list of up-to-date software and the pre-installed versions of PowerShell and Pester, see "[Specifications for {% data variables.product.prodname_dotcom %}-hosted runners](/actions/reference/specifications-for-github-hosted-runners/#supported-software)". +{% data variables.product.prodname_dotcom %}-hosted runners have a tools cache with pre-installed software, which includes PowerShell and Pester. For a full list of up-to-date software and the pre-installed versions of PowerShell and Pester, see "[Specifications for {% data variables.product.prodname_dotcom %}-hosted runners](/actions/reference/specifications-for-github-hosted-runners/#supported-software)". ### Prerequisites @@ -26,44 +26,49 @@ We recommend that you have a basic understanding of PowerShell and Pester. For m {% data reusables.actions.enterprise-setup-prereq %} -### Starting with the PowerShell workflow template +### Adding a workflow for Pester -{% data variables.product.prodname_dotcom %} provides a PowerShell workflow template that should work for most PowerShell projects. This guide includes examples that you can use to customize the template. For more information, see the [PowerShell workflow template](https://github.com/actions/starter-workflows/blob/main/ci/powershell.yml). +To automate your testing with PowerShell and Pester, you can add a workflow that runs every time a change is pushed to your repository. In the following example, `Test-Path` is used to check that a file called `resultsfile.log` is present. -To get started quickly, add the template to the `.github/workflows` directory of your repository. +This example workflow file must be added to your repository's `.github/workflows/` directory: {% raw %} ```yaml -name: Test PowerShell on Ubuntu, macOS and Windows - -on: - push: - branches: [ $default-branch ] - pull_request: - branches: [ $default-branch ] +name: Test PowerShell on Ubuntu +on: push jobs: build: - name: Pester tests work on all platforms - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, windows-latest, macOS-latest] - + name: Pester test + runs-on: ubuntu-latest steps: - name: Check out repository code - uses: actions/checkout@v2 - - name: Perform a Pester test from the command-line to ensure expected results + uses: actions/checkout@v2 + - name: Perform a Pester test from the command-line shell: pwsh - run: Get-ChildItem | Select-Object -ExpandProperty Name -First 1 | Should -Be 'bin' - - name: Perform advanced tests + run: Test-Path resultsfile.log | Should -Be $true + - name: Perform a Pester test from the Tests.ps1 file shell: pwsh run: | Invoke-Pester Unit.Tests.ps1 -Passthru - Invoke-Pester Integration.Tests.ps1 -Passthru ``` {% endraw %} +* `shell: pwsh` - Configures the job to use PowerShell when running the `run` commands. +* `run: Test-Path resultsfile.log` - Check whether a file called `resultsfile.log` is present in the repository's root directory. +* `Should -Be $true` - Uses Pester to define an expected result. If the result is unexpected, then {% data variables.product.prodname_actions %} flags this as a failed test. For example: + + ![Failed Pester test](/assets/images/help/repository/actions-failed-pester-test.png) + +* `Invoke-Pester Unit.Tests.ps1 -Passthru` - Uses Pester to execute tests defined in a file called `Unit.Tests.ps1`. For example, to perform the same test described above, the `Unit.Tests.ps1` will contain the following: + ``` + Describe "Check results file is present" { + It "Check results file is present" { + Test-Path resultsfile.log | Should -Be $true + } + } + ``` + ### PowerShell module locations The table below describes the locations for various PowerShell modules in each {% data variables.product.prodname_dotcom %}-hosted runner. From edc0bc7dfb7334649b77a09a7d9b1e258f16db1c Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Wed, 21 Oct 2020 14:11:04 +1000 Subject: [PATCH 15/22] Converted "dependencies" example into a job, added small edits --- .../guides/building-and-testing-powershell.md | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 9256818fba87..73beec61b1f4 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -38,7 +38,7 @@ name: Test PowerShell on Ubuntu on: push jobs: - build: + pester-test: name: Pester test runs-on: ubuntu-latest steps: @@ -81,19 +81,23 @@ The table below describes the locations for various PowerShell modules in each { ### Installing dependencies -{% data variables.product.prodname_dotcom %}-hosted runners have PowerShell 7 and Pester installed. You can use `Install-Module` to install additional dependencies from the PowerShell Gallery before building and testing your code. For example, the YAML below installs the `SqlServer` and `PSScriptAnalyzer` modules. +{% data variables.product.prodname_dotcom %}-hosted runners have PowerShell 7 and Pester installed. You can use `Install-Module` to install additional dependencies from the PowerShell Gallery before building and testing your code. You can also cache dependencies to speed up your workflow. For more information, see "[Caching dependencies to speed up your workflow](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." -You can also cache dependencies to speed up your workflow. For more information, see "[Caching dependencies to speed up your workflow](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." +For example, the following job installs the `SqlServer` and `PSScriptAnalyzer` modules: {% raw %} ```yaml -steps: -- uses: actions/checkout@v2 -- name: Install dependencies - shell: pwsh - run: | - Set-PSRepository PSGallery -InstallationPolicy Trusted - Install-Module SqlServer, PSScriptAnalyzer +jobs: + install-dependencies: + name: Install dependencies + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Install from PSGallery + shell: pwsh + run: | + Set-PSRepository PSGallery -InstallationPolicy Trusted + Install-Module SqlServer, PSScriptAnalyzer ``` {% endraw %} @@ -103,11 +107,11 @@ steps: {% endnote %} -#### Caching Dependencies +#### Caching dependencies -You can cache PowerShell module dependencies using a unique key, and restore the dependencies when you run future workflows using the [`cache`](https://github.com/marketplace/actions/cache) action. For more information, see "[Caching dependencies to speed up workflows](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." +You can cache PowerShell dependencies using a unique key, which allows you to restore the dependencies for future workflows with the [`cache`](https://github.com/marketplace/actions/cache) action. For more information, see "[Caching dependencies to speed up workflows](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." -PowerShell caches dependencies in different locations, depending on the operating system of the runner. The path you'll need to cache may differ from the Ubuntu example below depending on the operating system you use. For more information, see [PowerShell caching examples](https://github.com/actions/cache/blob/main/examples.md#PowerShell). +PowerShell caches its dependencies in different locations, depending on the runner's operating system. For example, the `path` location used in the following Ubuntu example will be different for a Windows operating system. {% raw %} ```yaml From 630360c5f1162939335b3d23131d562f72e9559d Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Thu, 22 Oct 2020 15:47:47 +1000 Subject: [PATCH 16/22] Added edits (described below) - Some rewording edits throughout - Amended artifact yaml to match other examples - Removed yaml comments, moved explanation to bullet point. - Small changes to PS Gallery example --- .../guides/building-and-testing-powershell.md | 35 ++++++++----------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 73beec61b1f4..fc1ea6171cbf 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -152,7 +152,6 @@ steps: - name: Lint with PSScriptAnalyzer shell: pwsh run: | - # Consider using github-action-psscriptanalyzer in the Marketplace instead. Invoke-ScriptAnalyzer -Path *.ps1 -Recurse -Outvariable issues $errors = $issues.Where({$_.Severity -eq 'Error'}) $warnings = $issues.Where({$_.Severity -eq 'Warning'}) @@ -164,43 +163,39 @@ steps: You can upload artifacts to view after a workflow completes. For example, you may need to save log files, core dumps, test results, or screenshots. For more information, see "[Persisting workflow data using artifacts](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)." -The following example demonstrates how you can use the `upload-artifact` action to archive test results from running `Invoke-Pester`. For more information, see the [`upload-artifact` action](https://github.com/actions/upload-artifact). +The following example demonstrates how you can use the `upload-artifact` action to archive the test results received from `Invoke-Pester`. For more information, see the [`upload-artifact` action](https://github.com/actions/upload-artifact). {% raw %} ```yaml -name: Upload artifact from on Ubuntu, macOS and Windows +name: Upload artifact from Ubuntu on: [push] jobs: - build: - name: Upload Pester tests work from all platforms - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, windows-latest, macos-latest] - + upload-pester-results: + name: Run Pester and upload results + runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v2 - name: Test with Pester shell: pwsh - run: Invoke-Pester All.Tests.ps1 -Passthru | Export-CliXml -Path All.Tests.xml + run: Invoke-Pester Unit.Tests.ps1 -Passthru | Export-CliXml -Path Unit.Tests.xml - name: Upload test results uses: actions/upload-artifact@v2 with: - # upload distinct zip files per OS - name: ${{ runner.os }}-All-Tests - path: All.Tests.xml - # Use always() to always run this step to publish test results when there are test failures + name: ubuntu-Unit-Tests + path: Unit.Tests.xml if: ${{ always() }} ``` {% endraw %} -### Publishing to package registries +- `if: ${{ always() }}` - Configures the workflow to always run this step, even when there are test failures. + +### Publishing to PowerShell Gallery -You can configure your workflow to publish your PowerShell package to any package registry you'd like when your CI tests pass. +You can configure your workflow to publish your PowerShell module to the PowerShell Gallery when your CI tests pass. You can use repository secrets to store any tokens or credentials needed to publish your package. For more information, see "[Creating and using encrypted secrets](/github/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." -You can store any access tokens or credentials needed to publish your module using repository secrets. The following example creates and publishes a module to the PowerShell Gallery using `Publish-Module`. For more information, see "[Creating and using encrypted secrets](/github/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." +The following example creates a package and uses `Publish-Module` to publish it to the PowerShell Gallery: {% raw %} ```yaml @@ -211,7 +206,7 @@ on: types: [created] jobs: - deploy: + publish-to-gallery: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 From e4547423e60c0eb360535e855b0050992c39d682 Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Thu, 22 Oct 2020 16:28:50 +1000 Subject: [PATCH 17/22] Added small fixes --- content/actions/guides/building-and-testing-powershell.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index fc1ea6171cbf..c01d53327283 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -189,7 +189,7 @@ jobs: ``` {% endraw %} -- `if: ${{ always() }}` - Configures the workflow to always run this step, even when there are test failures. +The `always()` function configures the job to continue processing even if there are test failures. For more information, see "[always](/actions/reference/context-and-expression-syntax-for-github-actions#always)." ### Publishing to PowerShell Gallery From e2996bc49a16875604cb54b420bd34b48fe99dac Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Fri, 23 Oct 2020 11:31:42 +1000 Subject: [PATCH 18/22] Changed PSScriptAnalyzer example into a standalone job --- .../guides/building-and-testing-powershell.md | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index c01d53327283..1fb81c0041cd 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -138,24 +138,27 @@ You can use the same commands that you use locally to build and test your code. #### Using PSScriptAnalyzer to lint code -The following example installs `PSScriptAnalyzer` and uses it to lint all ps1 files. For more information, see [PSScriptAnalyzer on GitHub](https://github.com/PowerShell/PSScriptAnalyzer). +The following example installs `PSScriptAnalyzer` and uses it to lint all `ps1` files in the repository. For more information, see [PSScriptAnalyzer on GitHub](https://github.com/PowerShell/PSScriptAnalyzer). {% raw %} ```yaml -steps: -- uses: actions/checkout@v2 -- name: Install PSScriptAnalyzer - shell: pwsh - run: | - Set-PSRepository PSGallery -InstallationPolicy Trusted - Install-Module PSScriptAnalyzer -ErrorAction Stop -- name: Lint with PSScriptAnalyzer - shell: pwsh - run: | - Invoke-ScriptAnalyzer -Path *.ps1 -Recurse -Outvariable issues - $errors = $issues.Where({$_.Severity -eq 'Error'}) - $warnings = $issues.Where({$_.Severity -eq 'Warning'}) - Write-Output "There were $($errors.Count) errors and $($warnings.Count) warnings total." + lint-with-PSScriptAnalyzer: + name: Install and run PSScriptAnalyzer + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Install PSScriptAnalyzer module + shell: pwsh + run: | + Set-PSRepository PSGallery -InstallationPolicy Trusted + Install-Module PSScriptAnalyzer -ErrorAction Stop + - name: Lint with PSScriptAnalyzer + shell: pwsh + run: | + Invoke-ScriptAnalyzer -Path *.ps1 -Recurse -Outvariable issues + $errors = $issues.Where({$_.Severity -eq 'Error'}) + $warnings = $issues.Where({$_.Severity -eq 'Warning'}) + Write-Output "There were $($errors.Count) errors and $($warnings.Count) warnings total." ``` {% endraw %} From 2f06b5f9db48fac882167048a1a5cba4a05c4ccf Mon Sep 17 00:00:00 2001 From: Chrissy LeMaire Date: Fri, 23 Oct 2020 17:46:09 +0200 Subject: [PATCH 19/22] throw exceptions for errors --- content/actions/guides/building-and-testing-powershell.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 1fb81c0041cd..402234a31f3c 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -158,7 +158,11 @@ The following example installs `PSScriptAnalyzer` and uses it to lint all `ps1` Invoke-ScriptAnalyzer -Path *.ps1 -Recurse -Outvariable issues $errors = $issues.Where({$_.Severity -eq 'Error'}) $warnings = $issues.Where({$_.Severity -eq 'Warning'}) - Write-Output "There were $($errors.Count) errors and $($warnings.Count) warnings total." + if ($errors) { + Write-Error "There were $($errors.Count) errors and $($warnings.Count) warnings total." -ErrorAction Stop + } else { + Write-Output "There were $($errors.Count) errors and $($warnings.Count) warnings total." + } ``` {% endraw %} From 63b317da00f6317d7db2c757175b16d0fc2adc0d Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Thu, 29 Oct 2020 11:22:48 +1000 Subject: [PATCH 20/22] Added note about package management --- .../actions/guides/building-and-testing-powershell.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 402234a31f3c..573099716e62 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -81,7 +81,16 @@ The table below describes the locations for various PowerShell modules in each { ### Installing dependencies -{% data variables.product.prodname_dotcom %}-hosted runners have PowerShell 7 and Pester installed. You can use `Install-Module` to install additional dependencies from the PowerShell Gallery before building and testing your code. You can also cache dependencies to speed up your workflow. For more information, see "[Caching dependencies to speed up your workflow](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." +{% data variables.product.prodname_dotcom %}-hosted runners have PowerShell 7 and Pester installed. You can use `Install-Module` to install additional dependencies from the PowerShell Gallery before building and testing your code. + +{% note %} + +**Note:** The Pester package used by {% data variables.product.prodname_dotcom %}-hosted runners is regularly updated, and can introduce signficant changes. +As a result, it is recommended that you always specify the required package versions by using `Install-Module` with `-MaximumVersion`. + +{% endnote %} + +You can also cache dependencies to speed up your workflow. For more information, see "[Caching dependencies to speed up your workflow](/actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows)." For example, the following job installs the `SqlServer` and `PSScriptAnalyzer` modules: From 10ced0f1bd6d6421d93a4d7e37bd90271d1cbb18 Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Thu, 29 Oct 2020 14:50:33 +1000 Subject: [PATCH 21/22] Added update from tech review --- content/actions/guides/building-and-testing-powershell.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 573099716e62..53ea0665a425 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -85,8 +85,7 @@ The table below describes the locations for various PowerShell modules in each { {% note %} -**Note:** The Pester package used by {% data variables.product.prodname_dotcom %}-hosted runners is regularly updated, and can introduce signficant changes. -As a result, it is recommended that you always specify the required package versions by using `Install-Module` with `-MaximumVersion`. +**Note:** The pre-installed packages (such as Pester) used by {% data variables.product.prodname_dotcom %}-hosted runners are regularly updated, and can introduce signficant changes. As a result, it is recommended that you always specify the required package versions by using `Install-Module` with `-MaximumVersion`. {% endnote %} From 6a921434d83f5be3e19cb34874e51490dbe5bc96 Mon Sep 17 00:00:00 2001 From: Martin Lopes <54248166+martin389@users.noreply.github.com> Date: Thu, 29 Oct 2020 15:03:31 +1000 Subject: [PATCH 22/22] Small edit --- content/actions/guides/building-and-testing-powershell.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/actions/guides/building-and-testing-powershell.md b/content/actions/guides/building-and-testing-powershell.md index 53ea0665a425..b600e09d160f 100644 --- a/content/actions/guides/building-and-testing-powershell.md +++ b/content/actions/guides/building-and-testing-powershell.md @@ -73,7 +73,7 @@ jobs: The table below describes the locations for various PowerShell modules in each {% data variables.product.prodname_dotcom %}-hosted runner. -|| Ubuntu | Mac | Windows | +|| Ubuntu | macOS | Windows | |------|-------|------|----------| |**PowerShell system modules** |`/opt/microsoft/powershell/7/Modules/*`|`/usr/local/microsoft/powershell/7/Modules/*`|`C:\program files\powershell\7\Modules\*`| |**PowerShell add-on modules**|`/usr/local/share/powershell/Modules/*`|`/usr/local/share/powershell/Modules/*`|`C:\Modules\*`|