From 60abdc8fd1ca5684598c534e2c2404c103c3113b Mon Sep 17 00:00:00 2001 From: freddydk Date: Sat, 25 Nov 2023 06:48:25 +0100 Subject: [PATCH] sort apps --- ...ReferenceDocumentation.HelperFunctions.ps1 | 20 ++++++++++++++----- .../BuildReferenceDocumentation.ps1 | 4 ++-- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.HelperFunctions.ps1 b/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.HelperFunctions.ps1 index e18984a42..dca3eab84 100644 --- a/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.HelperFunctions.ps1 +++ b/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.HelperFunctions.ps1 @@ -127,7 +127,8 @@ function GenerateDocsSite { # Single project repo - do not use project names as folders $useProjectsAsFolders = $false } - foreach($project in $allApps.Keys) { + $projects = @($allApps.Keys.GetEnumerator() | Sort-Object) + foreach($project in $projects) { if ($useProjectsAsFolders) { $newTocYml += @( " - name: $project" @@ -138,12 +139,18 @@ function GenerateDocsSite { else { $indent = " " } + $theseApps = @{} + # Get all apps for this project foreach($appFile in $allApps."$project") { $apps += @($appFile) $appName, $appFolder = GetAppNameAndFolder -appFile $appFile + $theseApps."$appName" = $appFolder + } + # Add all apps sorted by name + $theseApps.Keys.GetEnumerator() | Sort-Object | ForEach-Object { $newTocYml += @( - "$($indent)- name: $appName" - "$($indent) href: reference/$appFolder/toc.yml" + "$($indent)- name: $($_.key)" + "$($indent) href: reference/$($_.value)/toc.yml" ) } } @@ -221,7 +228,8 @@ function CalculateProjectsAndApps { Param( [string] $tempFolder, [string[]] $projects, - [string[]] $excludeProjects + [string[]] $excludeProjects, + [switch] $useProjectsAsFolders ) if ($projects.Count -eq 0) { $projects = @("*") } @@ -239,7 +247,9 @@ function CalculateProjectsAndApps { Write-Host "Project: $project" if ($projectList | Where-Object { $project -like $_ }) { if (-not ($excludeProjectList | Where-Object { $project -like $_ })) { - Write-Host "inlude" + if (-not $useProjectsAsFolders) { + $project = 'dummy' + } $allApps."$project" = @() Get-ChildItem -Path $_.FullName -Filter '*.app' | ForEach-Object { $allApps."$project" += @($_.FullName) diff --git a/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.ps1 b/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.ps1 index 834859106..59c8d8edd 100644 --- a/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.ps1 +++ b/Actions/BuildReferenceDocumentation/BuildReferenceDocumentation.ps1 @@ -58,7 +58,7 @@ foreach($release in $releases) { } Write-Host "Version: $($release.Name):" Get-ChildItem -Path $tempFolder -Recurse -File | ForEach-Object { Write-Host "- $($_.FullName.Substring($tempFolder.Length+1))" } - $allApps, $allDependencies = CalculateProjectsAndApps -tempFolder $tempFolder -projects $projects -excludeProjects $excludeProjects + $allApps, $allDependencies = CalculateProjectsAndApps -tempFolder $tempFolder -projects $projects -excludeProjects $excludeProjects -useProjectsAsFolders:$settings.ALDoc.useProjectsAsFolders $version = $release.Name $releaseNotes = $release.body GenerateDocsSite -version $version -allVersions $versions -allApps $allApps -repoName $settings.repoName -releaseNotes $releaseNotes -header $header -footer $footer -defaultIndexMD $defaultIndexMD -defaultReleaseMD $defaultReleaseMD -docsPath $docsPath -logLevel $logLevel -useProjectsAsFolders:$settings.ALDoc.useProjectsAsFolders @@ -85,7 +85,7 @@ foreach($version in $versions) { } Get-ChildItem -Path $artifactsFolder -Depth 1 -File | ForEach-Object { Write-Host "- $($_.FullName.Substring($artifactsFolder.Length))" } -$allApps, $allDependencies = CalculateProjectsAndApps -tempFolder $artifactsFolder -projects $projects -excludeProjects $excludeProjects +$allApps, $allDependencies = CalculateProjectsAndApps -tempFolder $artifactsFolder -projects $projects -excludeProjects $excludeProjects -useProjectsAsFolders:$settings.ALDoc.useProjectsAsFolders $releaseNotes = '' if ($latestReleaseTag) { try {