Skip to content

Commit 12ac4ff

Browse files
committed
refactor: Don't use global variables in script, and add Information logging
1 parent 439af3d commit 12ac4ff

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

_InitializeRepository.ps1

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,16 @@ If you have made changes to any files you may want to commit them before continu
1111

1212
[string] $organizationName = Read-Host -Prompt "Enter your name, or the the name of your organization (e.g. 'My Company'). This will be used in the module manifest and repository license"
1313

14+
Write-Information "Removing all files from this repository so they can be replaced with template repository files."
15+
Remove-AllRepositoryFilesExceptTemplateModuleFiles -repositoryDirectoryPath $RepositoryDirectoryPath
16+
17+
Write-Information "Creating the template repository files."
1418
Import-Module -Name $TemplateModuleDirectoryPath -Force
15-
16-
Remove-AllRepositoryFilesExceptTemplateModuleFiles
1719
New-PowerShellModuleRepository -RepositoryDirectoryPath $RepositoryDirectoryPath -ModuleName $moduleName -OrganizationName $organizationName
18-
1920
Remove-Module -Name Template.PowerShell.ScriptModule -Force
20-
Remove-TemplateModuleFiles
21+
22+
Write-Information "Removing the template module files since we are done using it to create the template repository files."
23+
Remove-TemplateModuleFiles -templateModuleDirectoryPath $TemplateModuleDirectoryPath
2124

2225
Write-Host -ForegroundColor Green "Repo initialization complete. You can now commit the changes to your repository."
2326
}
@@ -28,29 +31,29 @@ Begin
2831
[string] $RepositoryDirectoryPath = Resolve-Path -Path $PSScriptRoot
2932
[string] $TemplateModuleDirectoryPath = "$RepositoryDirectoryPath\src\Template.PowerShell.ScriptModule"
3033

31-
function Remove-AllRepositoryFilesExceptTemplateModuleFiles
34+
function Remove-AllRepositoryFilesExceptTemplateModuleFiles([string] $repositoryDirectoryPath)
3235
{
3336
# Delete all files except the ones we want to keep.
34-
Get-ChildItem -Path $RepositoryDirectoryPath -Recurse -File |
37+
Get-ChildItem -Path $repositoryDirectoryPath -Recurse -File |
3538
Where-Object {
36-
$_.FullName -notlike "$RepositoryDirectoryPath\.git\*" -and # Don't delete the .git directory.
37-
$_.FullName -notlike "$RepositoryDirectoryPath\_InitializeRepository.ps1" -and # Don't delete this script.
39+
$_.FullName -notlike "$repositoryDirectoryPath\.git\*" -and # Don't delete the .git directory.
40+
$_.FullName -notlike "$repositoryDirectoryPath\_InitializeRepository.ps1" -and # Don't delete this script.
3841
$_.FullName -notlike "$TemplateModuleDirectoryPath\*" # Don't delete the template module files.
3942
} |
4043
Remove-Item -Force
4144

4245
# Delete all empty directories that were left behind.
43-
Get-ChildItem -Path $RepositoryDirectoryPath -Recurse -Force -Directory |
46+
Get-ChildItem -Path $repositoryDirectoryPath -Recurse -Force -Directory |
4447
Sort-Object -Property FullName -Descending | # Delete child directories before parent directories.
4548
Where-Object { $_.GetFileSystemInfos().Count -eq 0 } |
4649
Remove-Item -Force
4750
}
4851

49-
function Remove-TemplateModuleFiles
52+
function Remove-TemplateModuleFiles([string] $templateModuleDirectoryPath)
5053
{
51-
if (Test-Path -Path $TemplateModuleDirectoryPath -PathType Container)
54+
if (Test-Path -Path $templateModuleDirectoryPath -PathType Container)
5255
{
53-
Remove-Item -Path $TemplateModuleDirectoryPath -Recurse -Force
56+
Remove-Item -Path $templateModuleDirectoryPath -Recurse -Force
5457
}
5558
}
5659
}

0 commit comments

Comments
 (0)