PwSh.Fw.GenericPackageEngine

0.2.0-pre11

Declarative software package definitions engine

This is a prerelease version of PwSh.Fw.GenericPackageEngine.
There is a newer prerelease version of this module available.
See the version list below for details.

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name PwSh.Fw.GenericPackageEngine -RequiredVersion 0.2.0-pre11 -AllowPrerelease

Copy and Paste the following command to install this package using Microsoft.PowerShell.PSResourceGet More Info

Install-PSResource -Name PwSh.Fw.GenericPackageEngine -Version 0.2.0-pre11 -Prerelease

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More

Owners

Copyright

(c) 2026 Charles-Antoine Degennes. All rights reserved.

Package Details

Author(s)

  • Charles-Antoine Degennes

Tags

Windows Linux MacOS PwSh.Fw packages

Functions

Download-GenericPackageAsset Expand-GenericPackageTargets Find-GenericPackageDefinition Get-GenericPackageAssetInfo Install-GenericPackage Resolve-GenericPackageDefinition Test-GenericPackageDefinition

PSEditions

Core

Dependencies

Release Notes

## [unreleased]
### Added
- `-ResolveLatest` switch on `Resolve-GenericPackageDefinition` : replaces a
 `latest` version with the concrete value found at the provider before the
 definition is returned (github/gitlab : latest release tag, webscrapper :
 highest `(?<ver>)` capture among the page links, url : version-like token
 in the URL path, gitlab-artifact : the ref when it looks like a version),
 so `{{ VERSION }}` renders the real number everywhere, including in
 pre-install checks. Normalization strips a single leading `v`/`V` and keeps
 distro suffixes (`1.2.3-deb-1`). API-backed providers fail in the Resolve
 phase when no version can be produced ; url / gitlab-artifact keep the
 literal token when nothing can be derived locally.
 `Install-GenericPackage` always passes the switch ;
 `Expand-GenericPackageTargets` does not (offline CI matrix).
- `check` keyword : optional boolean expression over the destination path,
 evaluated twice per target by `Install-GenericPackage` — before download
 (true = package already installed → pipeline skipped, `Status=Success`,
 `Skipped=$true`) and after upload (must be true, otherwise `Status=Failed`,
 `Phase='Check'`). Nodes : `and` / `or` (≥ 2 children), `not` (one child),
 `file-exists` (leaf : `path` relative to `-DestinationPath`,
 `type: file|dir|any`). A target-level block replaces the global one ; the
 block is preserved in the resolved definition. Structural problems evaluate
 to false (fail-closed) so a broken check can never skip an installation.
 `Test-GenericPackageDefinition` validates the expression structure and warns
 when it relies on `{{ ASSET }}` (only available after the download phase).
- `Install-GenericPackage` parameters :
 - `-Force` : continue the pipeline even when the pre-check passes
   (the post-check still runs) ;
 - `-NoCheck` : skip both check phases.

FileList

Version History

Version Downloads Last updated
0.3.0 3 10/15/2026
0.3.0-pre35 3 10/14/2026
0.3.0-pre34 3 10/14/2026
0.3.0-pre33 2 10/14/2026
0.3.0-pre32 2 10/14/2026
0.3.0-pre31 2 10/14/2026
0.3.0-pre20 4 10/12/2026
0.3.0-pre19 4 10/11/2026
0.3.0-pre18 4 10/10/2026
0.2.0 12 10/9/2026
0.2.0-pre14 5 10/9/2026
0.2.0-pre13 5 10/7/2026
0.2.0-pre12 5 10/6/2026
0.2.0-pre11 (current version) 4 10/6/2026
0.2.0-pre10 5 10/6/2026
0.1.0 20 10/5/2026
0.1.0-pre04 5 10/5/2026
Show less