Get-LatestModuleVersion

EulandaXtools — Funktionsreferenz

Get-LatestModuleVersion

ÜBERSICHT

Ermittelt die jüngste verfügbare Version unter einem Basis-URL (http/https) oder Ordner.

SYNTAX

Get-LatestModuleVersion [-Base] <string> [[-MinVersion] <string>] [[-MaxVersion] <string>]
    [[-ArtifactName] <string>] [<CommonParameters>]

BESCHREIBUNG

Prüft auf das Vorhandensein eines Artefakts je Version unter dem Pfad {Base}/{Version}/{ArtifactName} (bei Ordnern entsprechend per Join-Path). Die Eingabeparameter MinVersion/MaxVersion sind Strings und werden intern zu [Version] (Major.Minor.Build) normalisiert; eine angegebene Revision (4. Stelle) wird ignoriert.

Logik: 1) Nur MinVersion: genau diese Version prüfen; wenn vorhanden, zurückgeben. 2) Min+Max: vom Min bis Max hochzählen; beim ersten GAP stoppen; letzte gefundene Version ist das Ergebnis. 3) Nur MaxVersion: von Max down bis Major.Minor.0; erste gefundene Version zurückgeben; sonst $null.

Standard-Artefaktname ist 'EulandaXtools.zip', kann per -ArtifactName überschrieben werden.

Diese Funktion kann eingesetzt werden um eine benötigte Version auf einem Webserver oder dem lokalen Dateisystem zu sichen. Sie kann aber auch benutzt werden um im PowerShell Modulpfad zu suchen ob ein Modul in der benötigten Version verfügbar ist.

Hierzu kann ArtifactName bei Archiven eine Zip-Datei sein oder bei installierten Modulen eine psm1-Datei.

PARAMETER

-Base

Type: string
Mandatory: True

Basis-URL (http/https) oder Dateisystem-Ordner, unter dem die Versionsordner liegen.

-MinVersion

Type: string

Unteres Limit als String (z. B. '1.0', '1.0.3'). Wird intern zu Major.Minor.Build normalisiert.

-MaxVersion

Type: string

Oberes Limit als String (z. B. '1.0.99'). Wird intern zu Major.Minor.Build normalisiert.

-ArtifactName

Type: string
Default: 'EulandaXtools.zip'

Dateiname des zu prüfenden Artefakts innerhalb des Versionsordners. Default: 'EulandaXtools.zip'.

AUSGABEN

string oder $null

BEISPIELE

# Schaut im PS5 Benuter-Mdoulpfad nach, ob es ein Modul in der benötigten Version gibt
Get-LatestModuleVersion -Base 'C:\Users\cn\Dokumente\WindowsPowerShell\Modules\EulandaXtools' -MinVersion '1.0.3' -MaxVersion '1.0.99' -ArtifactName 'EulandaXtools.psm1'
# HTTP, nur Min: genau 1.0.4 prüfen
Get-LatestModuleVersion -Base 'https://files.eulanda.eu/apps/eulandaxtools' -MinVersion '1.0.4'
# HTTP, Bereich: von 1.0.3 bis 1.0.99 hochzählen, beim ersten GAP stoppen
Get-LatestModuleVersion -Base 'https://files.eulanda.eu/apps/eulandaxtools' -MinVersion '1.0.3' -MaxVersion '1.0.99'
# HTTP, nur Max: von 1.0.99 runter bis 1.0.0, erste Fundstelle nehmen
Get-LatestModuleVersion -Base 'https://files.eulanda.eu/apps/eulandaxtools' -MaxVersion '1.0.99'
# Folder, nur Min: genau 1.0.4 prüfen
Get-LatestModuleVersion -Base 'C:\Users\cn\Desktop\eulandaxtools' -MinVersion '1.0.4'
# Folder, Bereich: von 1.0.3 bis 1.0.99 hochzählen, beim ersten GAP stoppen
Get-LatestModuleVersion -Base 'C:\Users\cn\Desktop\eulandaxtools' -MinVersion '1.0.3' -MaxVersion '1.0.99'
# Folder,nur Max: von 1.0.99 runter bis 1.0.0, erste Fundstelle nehmen
Get-LatestModuleVersion -Base 'C:\Users\cn\Desktop\eulandaxtools' -MaxVersion '1.0.99'