Skip to content

Commit a16c11c

Browse files
authored
Psm1 (#34)
* adding test * create psd1 * retrigger checks
1 parent b25ceed commit a16c11c

File tree

3 files changed

+20
-1
lines changed

3 files changed

+20
-1
lines changed

Public/Get-GitModule.ps1

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,17 @@ function Get-GitModule {
5050
Write-Verbose -Message "$(Get-Date -f T) cloning repository to $tempDir"
5151
git clone $P1 --branch $Branch --single-branch $tempDir --quiet
5252
$psd1 = Get-ChildItem $tempDir -Include *.psd1 -Recurse
53+
if (!$psd1) {
54+
# try to make manifest from psm1 file
55+
Write-Verbose -Message "$(Get-Date -f T) manifest not found, searching for root module"
56+
$psm1 = Get-ChildItem $tempDir -Include *.psm1 -Recurse
57+
if ($psm1.FullName -is [string]) {
58+
Write-Verbose -Message "$(Get-Date -f T) root module $($psm1.Name) found"
59+
$psd1File = $psm1.FullName -replace 'psm1$','psd1'
60+
New-ModuleManifest -Path $psd1File -RootModule $psm1.Name -ModuleVersion ([version]::new()) | Out-Null
61+
$psd1 = Get-ChildItem $tempDir -Include *.psd1 -Recurse
62+
}
63+
}
5364

5465
if($psd1 -is [array]) {
5566
$errorText = "$FunctionName found multiple module manifests for $ModuleName"

Public/Install-GitModule.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ function Install-GitModule {
5555
# check target directory
5656
$TargetDir = Join-Path (Join-Path $DestinationPath $ModuleInfo.Name) $ModuleInfo.Version
5757
if (!(Test-Path $TargetDir)) {
58-
New-Item $TargetDir -ItemType Directory -Force
58+
New-Item $TargetDir -ItemType Directory -Force | Out-Null
5959
} elseif ((Get-ChildItem $TargetDir) -and (!$Force)) {
6060
Write-Error "$FunctionName cannot install into non-empty directory $TargetDir, use different -Destination or -Force to override it"
6161
continue

Tests/functions/Get-GitModule.Tests.ps1

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,12 @@ Describe "$CommandName basic testing" -Tag 'Functionality' {
2727
(Get-GitModule $moduleURL).SameName | Should -Be $true
2828
}
2929

30+
$moduleName = 'HBOParser'
31+
$moduleURL = 'https://github.com/iricigor/' + $moduleName
32+
It "$CommandName reads repository without psd1" {
33+
(Get-GitModule $moduleURL).Name | Should -Be $moduleName
34+
}
35+
36+
37+
3038
}

0 commit comments

Comments
 (0)