diff --git a/README.md b/README.md index c0aa816..cb14667 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,50 @@ -# DroneHelper +
+ + +
-[![Build Status](https://drone.ocram85.com/api/badges/OCram85/DroneHelper/status.svg)](https://drone.ocram85.com/OCram85/DroneHelper) ++ + + +
-## Description ++ :hammer_and_wrench: Helper module for Drone.io based build pipelines. +
-## About + -The DroneHelper PowerShell Modules adds several feature to a `Gitea -> Drone.IO` based build pipeline. It's designed +## :key: General + +The DroneHelper PowerShell module adds several features for `Gitea -> Drone.IO` based build pipelines. It's designed to perform all needed tasks for PowerShell Module development like: - `FileLinter` -> Runs basic FileLinter tests with console and log file output -- `Linter` -> Runs PSScriptAnalyer with embedded to custom profiles. -- `UnitTest` -> Executes Pester tests with code coverage with console and log file output. +- `Linter` -> Runs PSScriptAnalyzer with embedded to custom profiles. +- `UnitTest` -> Runs Pester tests including code coverage report with console and log file output. - `BuildReport` -> Takes all generated reports and reports them back as Pull Request Comment for a simplified overview. - `StateReporter` -> Marks the current pipeline run / build as failed if the previous steps also raised errors. - `DoksUpdater` -> Automatically updates the markdown based docs generated form your Comment Based Help blocks in your functions -To use these feature, all you have to do, is follow the `.drone.yml` template: +To use these features, all you have to do, is follow the `.drone.yml` template: ### `.drone.yml` Template @@ -40,9 +66,14 @@ steps: environment: EXCLUDE: "(.exe|.dll|.ico|.gitkeep)" commands: + - | + apt-get update + apt-get install -y file + - | pwsh -NonInteractive -c "& { - Import-Module 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module 'DroneHelper' -ErrorAction 'Stop'; Invoke-FileLinter }" @@ -52,7 +83,8 @@ steps: commands: - | pwsh -NonInteractive -c "& { - Import-Module -Name 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Install-ModuleDependency; Invoke-Linter }" @@ -61,9 +93,14 @@ steps: image: mcr.microsoft.com/dotnet/sdk:6.0-focal failure: ignore commands: + - | + apt-get update + apt-get install -y file + - | pwsh -NonInteractive -c "& { - Import-Module -Name 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Install-ModuleDependency; Invoke-UnitTest -Verbosity 'Detailed' -ExcludeTag 'Integration' }" @@ -79,7 +116,8 @@ steps: commands: - | pwsh -NonInteractive -c "& { - Import-Module 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Send-PRComment }" when: @@ -92,7 +130,8 @@ steps: commands: - | pwsh -NonInteractive -c "& { - Import-Module -Name 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Install-ModuleDependency; Invoke-BuildState }" @@ -116,13 +155,15 @@ steps: commands: - | pwsh -NonInteractive -c "& { - Import-Module -Name 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Install-ModuleDependency; Update-ModuleMeta -Verbose }" - | pwsh -NonInteractive -c "& { - Import-Module -Name 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Install-ModuleDependency; New-BuildPackage -Verbose }" @@ -148,7 +189,8 @@ steps: commands: - | pwsh -NonInteractive -c "& { - Import-Module -Name 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Install-ModuleDependency; Invoke-Publish -Verbose }" @@ -175,7 +217,8 @@ steps: commands: - | pwsh -NonInteractive -c "& { - Import-Module -Name 'DroneHelper'; + Install-Module -Name 'DroneHelper' -Repository 'PSGallery' -ErrorAction 'Stop'; + Import-Module -Name 'DroneHelper' -ErrorAction 'Stop'; Install-ModuleDependency; Update-Docs -Verbose }" diff --git a/src/DroneHelper.psd1 b/src/DroneHelper.psd1 index a0d08af..2c975a5 100644 --- a/src/DroneHelper.psd1 +++ b/src/DroneHelper.psd1 @@ -153,19 +153,19 @@ PSData = @{ # Tags applied to this module. These help with module discovery in online galleries. - # Tags = @() + Tags = @('gitea', 'drone.io', 'Module Build helper') # A URL to the license for this module. - # LicenseUri = '' + LicenseUri = 'https://gitea.ocram85.com/OCram85/DroneHelper/src/branch/master/LICENSE' # A URL to the main website for this project. - ProjectUri = 'https://gitea.ocram85.com/OCram85/DroneHelper' + ProjectUri = 'https://gitea.ocram85.com/OCram85/DroneHelper' # A URL to an icon representing this module. - # IconUri = '' + IconUri = 'https://gitea.ocram85.com/OCram85/DroneHelper/raw/branch/master/assets/logo256.png' # ReleaseNotes of this module - # ReleaseNotes = '' + ReleaseNotes = 'See https://gitea.ocram85.com/OCram85/DroneHelper/releases page for details.' # Prerelease string of this module # Prerelease = ''