Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Actions/.Modules/ReadSettings.psm1
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@ function GetDefaultSettings
"type" = "PTE"
"unusedALGoSystemFiles" = @()
"projects" = @()
"projectScanDepth" = 2
"powerPlatformSolutionFolder" = ""
"country" = "us"
"artifact" = ""
Expand Down
6 changes: 6 additions & 0 deletions Actions/.Modules/settings.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@
},
"description": "An array of AL-Go projects. See https://aka.ms/ALGoSettings#projects"
},
"projectScanDepth": {
"type": "integer",
"minimum": 1,
"default": 2,
"description": "Maximum directory depth for automatic project discovery when 'projects' is not set. Increase if your projects are nested deeper than 2 levels from the repository root."
},
"powerPlatformSolutionFolder": {
"type": "string",
"description": "Folder containing the Power Platform solution. See https://aka.ms/ALGoSettings#powerplatformsolutionfolder"
Expand Down
2 changes: 1 addition & 1 deletion Actions/AL-Go-Helper.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -2405,7 +2405,7 @@ function GetFoldersFromAllProjects {
Push-Location $baseFolder
try {
$settings = ReadSettings -baseFolder $baseFolder
$projects = GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $settings.projects
$projects = GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $settings.projects -scanDepth $settings.projectScanDepth
$folders = @()
foreach($project in $projects) {
$projectSettings = ReadSettings -project $project -baseFolder $baseFolder
Expand Down
4 changes: 2 additions & 2 deletions Actions/CheckForUpdates/CheckForUpdates.ps1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Param(
Param(
[Parameter(HelpMessage = "The GitHub actor running the action", Mandatory = $false)]
[string] $actor,
[Parameter(HelpMessage = "Base64 encoded GhTokenWorkflow secret", Mandatory = $false)]
Expand Down Expand Up @@ -113,7 +113,7 @@ if (-not $isDirectALGo) {

# Get the list of projects in the current repository
$baseFolder = $ENV:GITHUB_WORKSPACE
$projects = @(GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $repoSettings.projects)
$projects = @(GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $repoSettings.projects -scanDepth $repoSettings.projectScanDepth)

$filesToInclude, $filesToExclude = GetFilesToUpdate -settings $repoSettings -projects $projects -baseFolder $baseFolder -templateFolder $templateFolder -originalTemplateFolder $originalTemplateFolder

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,12 +167,13 @@ function Get-ProjectsToBuild {
Push-Location $baseFolder
try {
$settings = $env:Settings | ConvertFrom-Json
$projects = @(GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $settings.projects)
$projects = @(GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $settings.projects -scanDepth $settings.projectScanDepth)
Write-Host "Found AL-Go Projects: $($projects -join ', ')"

$modifiedProjects = @()
$projectsToBuild = @()
$projectsOrderToBuild = @()
$projectBuildInfo = @{ projectDependencies = @{}; FullProjectsOrder = @(); AdditionalProjectsToBuild = @{} }

if ($projects) {
# Calculate the full projects order
Expand Down
4 changes: 2 additions & 2 deletions Actions/IncrementVersionNumber/IncrementVersionNumber.ps1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Param(
Param(
[Parameter(HelpMessage = "The GitHub actor running the action", Mandatory = $false)]
[string] $actor,
[Parameter(HelpMessage = "The GitHub token running the action", Mandatory = $false)]
Expand Down Expand Up @@ -48,7 +48,7 @@ else {
}

# Collect all projects (AL and PowerPlatform Solution)
$projectList = @(GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $settings.projects -selectProjects $projects)
$projectList = @(GetProjectsFromRepository -baseFolder $baseFolder -projectsFromSettings $settings.projects -selectProjects $projects -scanDepth $settings.projectScanDepth)
$PPprojects = @(GetMatchingProjects -projects @($settings.powerPlatformSolutionFolder) -selectProjects $projects)
if ($projectList.Count -eq 0 -and $PPprojects.Count -eq 0) {
throw "No projects matches '$projects'"
Expand Down
Loading