From fe9b488528f3502380b2ef3a666edd4d2db84640 Mon Sep 17 00:00:00 2001 From: freddydk Date: Fri, 10 Apr 2026 00:53:26 +0000 Subject: [PATCH] [main@69555c0] Update AL-Go System Files from microsoft/AL-Go-PTE@preview - ee6d3d7 --- .AL-Go/cloudDevEnv.ps1 | 12 +-- .AL-Go/localDevEnv.ps1 | 12 +-- .AL-Go/settings.json | 2 +- .github/.agents/algo-settings.agent.md | 9 +++ .github/AL-Go-Settings.json | 4 +- .github/RELEASENOTES.copy.md | 80 ++++++++++++++++++- .github/Test Current.settings.json | 2 +- .github/Test Next Major.settings.json | 2 +- .github/Test Next Minor.settings.json | 2 +- .../workflows/AddExistingAppOrTestApp.yaml | 12 +-- .github/workflows/CICD.yaml | 60 +++++++------- .github/workflows/CreateApp.yaml | 12 +-- .../CreateOnlineDevelopmentEnvironment.yaml | 18 ++--- .../workflows/CreatePerformanceTestApp.yaml | 12 +-- .github/workflows/CreateRelease.yaml | 34 ++++---- .github/workflows/CreateTestApp.yaml | 12 +-- .github/workflows/Current.yaml | 12 +-- .../DeployReferenceDocumentation.yaml | 16 ++-- .github/workflows/IncrementVersionNumber.yaml | 14 ++-- .github/workflows/NextMajor.yaml | 12 +-- .github/workflows/NextMinor.yaml | 12 +-- .github/workflows/PublishToEnvironment.yaml | 24 +++--- .github/workflows/PullRequestHandler.yaml | 18 ++--- .github/workflows/Troubleshooting.yaml | 2 +- .../workflows/UpdateGitHubGoSystemFiles.yaml | 34 ++++---- .github/workflows/_BuildALGoProject.yaml | 77 ++++++++++++------ 26 files changed, 312 insertions(+), 194 deletions(-) create mode 100644 .github/.agents/algo-settings.agent.md diff --git a/.AL-Go/cloudDevEnv.ps1 b/.AL-Go/cloudDevEnv.ps1 index b01c429..87db0a5 100644 --- a/.AL-Go/cloudDevEnv.ps1 +++ b/.AL-Go/cloudDevEnv.ps1 @@ -141,12 +141,12 @@ Write-Host -ForegroundColor Yellow @' $tmpFolder = Join-Path ([System.IO.Path]::GetTempPath()) "$([Guid]::NewGuid().ToString())" New-Item -Path $tmpFolder -ItemType Directory -Force | Out-Null -$GitHubHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/Github-Helper.psm1' -folder $tmpFolder -notifyAuthenticatedAttempt -$ReadSettingsModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/ReadSettings.psm1' -folder $tmpFolder -$debugLoggingModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/DebugLogHelper.psm1' -folder $tmpFolder -$ALGoHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/AL-Go-Helper.ps1' -folder $tmpFolder -DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/settings.schema.json' -folder $tmpFolder | Out-Null -DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/Environment.Packages.proj' -folder $tmpFolder | Out-Null +$GitHubHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/Github-Helper.psm1' -folder $tmpFolder -notifyAuthenticatedAttempt +$ReadSettingsModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/ReadSettings.psm1' -folder $tmpFolder +$debugLoggingModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/DebugLogHelper.psm1' -folder $tmpFolder +$ALGoHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/AL-Go-Helper.ps1' -folder $tmpFolder +DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/settings.schema.json' -folder $tmpFolder | Out-Null +DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/Environment.Packages.proj' -folder $tmpFolder | Out-Null Import-Module $GitHubHelperPath Import-Module $ReadSettingsModule diff --git a/.AL-Go/localDevEnv.ps1 b/.AL-Go/localDevEnv.ps1 index 4ea5eb0..b10af79 100644 --- a/.AL-Go/localDevEnv.ps1 +++ b/.AL-Go/localDevEnv.ps1 @@ -154,12 +154,12 @@ Write-Host -ForegroundColor Yellow @' $tmpFolder = Join-Path ([System.IO.Path]::GetTempPath()) "$([Guid]::NewGuid().ToString())" New-Item -Path $tmpFolder -ItemType Directory -Force | Out-Null -$GitHubHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/Github-Helper.psm1' -folder $tmpFolder -notifyAuthenticatedAttempt -$ReadSettingsModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/ReadSettings.psm1' -folder $tmpFolder -$debugLoggingModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/DebugLogHelper.psm1' -folder $tmpFolder -$ALGoHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/AL-Go-Helper.ps1' -folder $tmpFolder -DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/settings.schema.json' -folder $tmpFolder | Out-Null -DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/Environment.Packages.proj' -folder $tmpFolder | Out-Null +$GitHubHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/Github-Helper.psm1' -folder $tmpFolder -notifyAuthenticatedAttempt +$ReadSettingsModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/ReadSettings.psm1' -folder $tmpFolder +$debugLoggingModule = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/DebugLogHelper.psm1' -folder $tmpFolder +$ALGoHelperPath = DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/AL-Go-Helper.ps1' -folder $tmpFolder +DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/settings.schema.json' -folder $tmpFolder | Out-Null +DownloadHelperFile -url 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/Environment.Packages.proj' -folder $tmpFolder | Out-Null Import-Module $GitHubHelperPath Import-Module $ReadSettingsModule diff --git a/.AL-Go/settings.json b/.AL-Go/settings.json index 534433d..21a26b5 100644 --- a/.AL-Go/settings.json +++ b/.AL-Go/settings.json @@ -1,5 +1,5 @@ { - "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/settings.schema.json", + "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/settings.schema.json", "country": "us", "VersioningStrategy": 16, "appFolders": [ diff --git a/.github/.agents/algo-settings.agent.md b/.github/.agents/algo-settings.agent.md new file mode 100644 index 0000000..cb82eb6 --- /dev/null +++ b/.github/.agents/algo-settings.agent.md @@ -0,0 +1,9 @@ +# AL-Go Copilot instructions + +AL-Go for GitHub controls its features using various different settings. + +When asked about settings for AL-Go, you can find the available settings and description of them at this location: https://github.com/microsoft/AL-Go/blob/main/Scenarios/settings.md, which you should read to understand what settings to suggest. + +For additional inforomation about AL-Go, you should read the 'RELEASENOTES.copy.md' file. + +When applying new settings, you should apply them to the file "AL-Go-Settings.json" diff --git a/.github/AL-Go-Settings.json b/.github/AL-Go-Settings.json index 19401c6..af3b646 100644 --- a/.github/AL-Go-Settings.json +++ b/.github/AL-Go-Settings.json @@ -1,5 +1,5 @@ { - "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/settings.schema.json", + "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/settings.schema.json", "type": "PTE", "templateUrl": "https://github.com/microsoft/AL-Go-PTE@preview", "conditionalSettings": [ @@ -25,6 +25,6 @@ }, "doNotSignApps": true, "keyVaultCodesignCertificateName": "FreddyKristiansen", - "templateSha": "ab2dd7a59581956673267c0e5aca5e9f7a1f27da", + "templateSha": "ee6d3d7724013c45767d1b83db2b04f737def7d7", "PullRequestTrigger": "pull_request" } diff --git a/.github/RELEASENOTES.copy.md b/.github/RELEASENOTES.copy.md index 9d9a5bb..5d17892 100644 --- a/.github/RELEASENOTES.copy.md +++ b/.github/RELEASENOTES.copy.md @@ -1,11 +1,87 @@ -## preview +## v9.0 -Note that when using the preview version of AL-Go for GitHub, we recommend you Update your AL-Go system files, as soon as possible when informed that an update is available. +### Needs Context in Build job moved from environment variable to file + +`NeedsContext` is currently available as an environment variable in the build step of AL-Go. In some cases on repos with a large amount of projects, it's possible for this variable to exceed the max size GitHub allows for such variables. To work around this issue, we now place the contents of `NeedsContext` in a json file, where `NeedsContext` is the path to that file. + +If you have any custom processes that uses `NeedsContext`, those needs to be updated to now first read the contents of the json file. The structure of the json is identical to what was previously in the variable, so only extra step is to read the file. + +### Added support for workspace compilation + +With v28 of Business Central, the ALTool now also provides the ability to compile workspaces of apps. This has the added advantage that the ALTool can compute the dependency graph for the apps in the workspace and compile apps in parallel (if possible). For AL-Go projects with large amounts of apps that can save a lot of time. If you want to try this out you can enable it via the following setting + +```json + "workspaceCompilation": { + "enabled": true + } +``` + +By default apps are compiled sequentially but this can be changed via the parallelism property. This allows you to configure the maximum amount of parallel compilation processes. Set to 0 or -1 to use all available processors. + +```json + "workspaceCompilation": { + "enabled": true, + "parallelism": 4 + } +``` + +### Test Projects — split builds and tests for faster feedback + +AL-Go now supports **test projects**: a new project type that separates test execution from compilation. A test project does not build any apps itself — instead it depends on one or more regular projects, installs the apps they produce, and runs tests against them. + +This lets you re-run tests without waiting for a full recompilation, and makes it easy to organize large repositories where builds and test suites have different scopes or cadences. + +**Getting started** + +Add a `projectsToTest` setting to the project-level `.AL-Go/settings.json` of an empty project (no `appFolders` or `testFolders`): + +```json +{ + "projectsToTest": ["build/projects/MyProject"] +} +``` + +AL-Go will automatically: + +- Resolve the dependency so the test project always builds after its target project(s). +- Install the Test Runner, Test Framework, and Test Libraries into the container. +- Run all tests from the installed test apps. + +**Key rules** + +- A test project must **not** contain buildable code (no `appFolders`, `testFolders`, or `bcptTestFolders`). AL-Go will fail with a clear error if it detects both `projectsToTest` and buildable folders. +- A test project cannot depend on another test project. +- You can target multiple projects: `"projectsToTest": ["build/projects/ProjectA", "build/projects/ProjectB"]`. +- Use full project paths as they appear in the repository. + +### Improving error detection and build reliability when downloading project dependencies + +The `DownloadProjectDependencies` action now downloads app files from URLs specified in the `installApps` and `installTestApps` settings upfront, rather than validating URLs at build time. This change provides: + +- Earlier detection of inaccessible or misconfigured URLs +- Clearer error messages when secrets are missing or URLs are invalid +- Warnings for potential issues like duplicate filenames + +### Improve overall performance by postponing projects with no dependants + +The time it takes to build projects can vary significantly depending on factors such as whether you are using Linux or Windows, Containers or CompilerFolders, and whether apps are being published or tests are being run. + +By default, projects are built according to their dependency order. As soon as all dependencies for a project are satisfied, the project is added to the next layer of jobs. + +The new setting `postponeProjectInBuildOrder` allows you to delay long running jobs (f.ex. test runs) with no dependants until the final layer of the build order. This can improve overall build performance by preventing subsequent layers from waiting on projects that take longer to complete but are not required for further dependencies. ### Issues - Attempt to start docker service in case it is not running - NextMajor (v28) fails when downloading dependencies from NuGet-feed +- Issue 2084 Multiple artifacts failure if you re-run failed jobs after flaky tests +- Issue 2085 Projects that doesn't contain both Apps and TestApps are wrongly seen as not built. +- Issue 2086 Postpone jobs, which doesn't have any dependents to the end of the build order. +- Rework input handling of workflow 'Update AL-Go System Files' for trigger 'workflow_call' + +### New Settings + +- `postponeProjectInBuildOrder` is a new project setting, which will (if set to true) cause the project to be postponed until the last build job when possible. If set on test projects, then all tests can be deferred until all builds have succeeded. ## v8.3 diff --git a/.github/Test Current.settings.json b/.github/Test Current.settings.json index caa8910..7d7748a 100644 --- a/.github/Test Current.settings.json +++ b/.github/Test Current.settings.json @@ -1,5 +1,5 @@ { - "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/settings.schema.json", + "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/settings.schema.json", "artifact": "////latest", "cacheImageName": "", "versioningStrategy": 15, diff --git a/.github/Test Next Major.settings.json b/.github/Test Next Major.settings.json index 68babc6..15e8993 100644 --- a/.github/Test Next Major.settings.json +++ b/.github/Test Next Major.settings.json @@ -1,5 +1,5 @@ { - "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/settings.schema.json", + "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/settings.schema.json", "artifact": "////nextmajor", "cacheImageName": "", "versioningStrategy": 15, diff --git a/.github/Test Next Minor.settings.json b/.github/Test Next Minor.settings.json index 6ff4f7c..94e47ab 100644 --- a/.github/Test Next Minor.settings.json +++ b/.github/Test Next Minor.settings.json @@ -1,5 +1,5 @@ { - "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/.Modules/settings.schema.json", + "$schema": "https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/.Modules/settings.schema.json", "artifact": "////nextminor", "cacheImageName": "", "versioningStrategy": 15, diff --git a/.github/workflows/AddExistingAppOrTestApp.yaml b/.github/workflows/AddExistingAppOrTestApp.yaml index 9e3ee45..770aff9 100644 --- a/.github/workflows/AddExistingAppOrTestApp.yaml +++ b/.github/workflows/AddExistingAppOrTestApp.yaml @@ -41,7 +41,7 @@ jobs: runs-on: [ ubuntu-latest ] steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -50,18 +50,18 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -69,7 +69,7 @@ jobs: useGhTokenWorkflowForPush: '${{ github.event.inputs.useGhTokenWorkflow }}' - name: Add existing app - uses: microsoft/AL-Go/Actions/AddExistingApp@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/AddExistingApp@v9.0 with: shell: pwsh token: ${{ steps.ReadSecrets.outputs.TokenForPush }} @@ -79,7 +79,7 @@ jobs: - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/CICD.yaml b/.github/workflows/CICD.yaml index d3b3f38..616d36c 100644 --- a/.github/workflows/CICD.yaml +++ b/.github/workflows/CICD.yaml @@ -51,7 +51,7 @@ jobs: trackALAlertsInGitHub: ${{ steps.SetALCodeAnalysisVar.outputs.trackALAlertsInGitHub }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -62,13 +62,13 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: type,powerPlatformSolutionFolder,useGitSubmodules,trackALAlertsInGitHub @@ -82,7 +82,7 @@ jobs: - name: Read submodules token id: ReadSubmodulesToken if: env.useGitSubmodules != 'false' && env.useGitSubmodules != '' - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -103,7 +103,7 @@ jobs: - name: Determine Projects To Build id: determineProjectsToBuild - uses: microsoft/AL-Go/Actions/DetermineProjectsToBuild@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v9.0 with: shell: pwsh maxBuildDepth: ${{ env.workflowDepth }} @@ -116,7 +116,7 @@ jobs: - name: Determine Delivery Target Secrets id: DetermineDeliveryTargetSecrets - uses: microsoft/AL-Go/Actions/DetermineDeliveryTargets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v9.0 with: shell: pwsh projectsJson: '${{ steps.determineProjectsToBuild.outputs.ProjectsJson }}' @@ -124,7 +124,7 @@ jobs: - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -132,7 +132,7 @@ jobs: - name: Determine Delivery Targets id: DetermineDeliveryTargets - uses: microsoft/AL-Go/Actions/DetermineDeliveryTargets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v9.0 env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' with: @@ -142,7 +142,7 @@ jobs: - name: Determine Deployment Environments id: DetermineDeploymentEnvironments - uses: microsoft/AL-Go/Actions/DetermineDeploymentEnvironments@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineDeploymentEnvironments@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: @@ -158,21 +158,21 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: templateUrl - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} getSecrets: 'ghTokenWorkflow' - name: Check for updates to AL-Go system files - uses: microsoft/AL-Go/Actions/CheckForUpdates@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CheckForUpdates@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: @@ -216,7 +216,7 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Download artifacts - ErrorLogs - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 if: (success() || failure()) with: pattern: '*-*ErrorLogs-*' @@ -226,7 +226,7 @@ jobs: - name: Process AL Code Analysis Logs id: ProcessALCodeAnalysisLogs if: (success() || failure()) - uses: microsoft/AL-Go/Actions/ProcessALCodeAnalysisLogs@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ProcessALCodeAnalysisLogs@v9.0 with: shell: pwsh @@ -255,27 +255,27 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Download artifacts - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: path: '.artifacts' - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Determine ArtifactUrl id: determineArtifactUrl - uses: microsoft/AL-Go/Actions/DetermineArtifactUrl@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineArtifactUrl@v9.0 with: shell: pwsh - name: Setup Pages if: needs.Initialization.outputs.deployALDocArtifact == 1 - uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0 + uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0 - name: Build Reference Documentation - uses: microsoft/AL-Go/Actions/BuildReferenceDocumentation@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/BuildReferenceDocumentation@v9.0 with: shell: pwsh artifacts: '.artifacts' @@ -289,7 +289,7 @@ jobs: - name: Deploy to GitHub Pages if: needs.Initialization.outputs.deployALDocArtifact == 1 id: deployment - uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5 + uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5.0.0 Deploy: needs: [ Initialization, Build ] @@ -311,12 +311,12 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Download artifacts - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: path: '.artifacts' - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: ${{ matrix.shell }} get: type,powerPlatformSolutionFolder @@ -330,7 +330,7 @@ jobs: - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: ${{ matrix.shell }} gitHubSecrets: ${{ toJson(secrets) }} @@ -338,7 +338,7 @@ jobs: - name: Deploy to Business Central id: Deploy - uses: microsoft/AL-Go/Actions/Deploy@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/Deploy@v9.0 env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' with: @@ -350,7 +350,7 @@ jobs: - name: Deploy to Power Platform if: env.type == 'PTE' && env.powerPlatformSolutionFolder != '' - uses: microsoft/AL-Go/Actions/DeployPowerPlatform@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DeployPowerPlatform@v9.0 env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' with: @@ -373,25 +373,25 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Download artifacts - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: path: '.artifacts' - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} getSecrets: '${{ matrix.deliveryTarget }}Context' - name: Deliver - uses: microsoft/AL-Go/Actions/Deliver@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/Deliver@v9.0 env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' with: @@ -411,7 +411,7 @@ jobs: - name: Finalize the workflow id: PostProcess - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/CreateApp.yaml b/.github/workflows/CreateApp.yaml index ae4a055..8549387 100644 --- a/.github/workflows/CreateApp.yaml +++ b/.github/workflows/CreateApp.yaml @@ -51,7 +51,7 @@ jobs: runs-on: [ ubuntu-latest ] steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -60,19 +60,19 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: type - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -80,7 +80,7 @@ jobs: useGhTokenWorkflowForPush: '${{ github.event.inputs.useGhTokenWorkflow }}' - name: Creating a new app - uses: microsoft/AL-Go/Actions/CreateApp@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CreateApp@v9.0 with: shell: pwsh token: ${{ steps.ReadSecrets.outputs.TokenForPush }} @@ -94,7 +94,7 @@ jobs: - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/CreateOnlineDevelopmentEnvironment.yaml b/.github/workflows/CreateOnlineDevelopmentEnvironment.yaml index f8a4cfe..fffccad 100644 --- a/.github/workflows/CreateOnlineDevelopmentEnvironment.yaml +++ b/.github/workflows/CreateOnlineDevelopmentEnvironment.yaml @@ -50,7 +50,7 @@ jobs: telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -59,19 +59,19 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -90,7 +90,7 @@ jobs: Write-Host "AdminCenterApiCredentials not provided, initiating Device Code flow" $ALGoHelperPath = "$([System.IO.Path]::GetTempFileName()).ps1" $webClient = New-Object System.Net.WebClient - $webClient.DownloadFile('https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/AL-Go-Helper.ps1', $ALGoHelperPath) + $webClient.DownloadFile('https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/AL-Go-Helper.ps1', $ALGoHelperPath) . $ALGoHelperPath DownloadAndImportBcContainerHelper $authContext = New-BcAuthContext -includeDeviceLogin -deviceLoginTimeout ([TimeSpan]::FromSeconds(0)) @@ -112,13 +112,13 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -137,7 +137,7 @@ jobs: Add-Content -Encoding UTF8 -Path $env:GITHUB_OUTPUT -value "adminCenterApiCredentials=$adminCenterApiCredentials" - name: Create Development Environment - uses: microsoft/AL-Go/Actions/CreateDevelopmentEnvironment@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CreateDevelopmentEnvironment@v9.0 with: shell: pwsh token: ${{ steps.ReadSecrets.outputs.TokenForPush }} @@ -149,7 +149,7 @@ jobs: - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/CreatePerformanceTestApp.yaml b/.github/workflows/CreatePerformanceTestApp.yaml index b3920e4..9d32fee 100644 --- a/.github/workflows/CreatePerformanceTestApp.yaml +++ b/.github/workflows/CreatePerformanceTestApp.yaml @@ -57,7 +57,7 @@ jobs: runs-on: [ ubuntu-latest ] steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -66,18 +66,18 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -85,7 +85,7 @@ jobs: useGhTokenWorkflowForPush: '${{ github.event.inputs.useGhTokenWorkflow }}' - name: Creating a new test app - uses: microsoft/AL-Go/Actions/CreateApp@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CreateApp@v9.0 with: shell: pwsh token: ${{ steps.ReadSecrets.outputs.TokenForPush }} @@ -100,7 +100,7 @@ jobs: - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/CreateRelease.yaml b/.github/workflows/CreateRelease.yaml index 007d798..d0cf631 100644 --- a/.github/workflows/CreateRelease.yaml +++ b/.github/workflows/CreateRelease.yaml @@ -78,7 +78,7 @@ jobs: telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -87,26 +87,26 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: templateUrl,repoName,type,powerPlatformSolutionFolder - name: Validate Workflow Input if: ${{ github.event_name == 'workflow_dispatch' }} - uses: microsoft/AL-Go/Actions/ValidateWorkflowInput@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ValidateWorkflowInput@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -115,12 +115,12 @@ jobs: - name: Determine Projects id: determineProjects - uses: microsoft/AL-Go/Actions/DetermineProjectsToBuild@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v9.0 with: shell: pwsh - name: Check for updates to AL-Go system files - uses: microsoft/AL-Go/Actions/CheckForUpdates@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CheckForUpdates@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: @@ -130,7 +130,7 @@ jobs: downloadLatest: true - name: Determine artifacts for release - uses: microsoft/AL-Go/Actions/DetermineArtifactsForRelease@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineArtifactsForRelease@v9.0 id: determineArtifactsForRelease with: shell: pwsh @@ -141,7 +141,7 @@ jobs: - name: Prepare release notes id: createreleasenotes - uses: microsoft/AL-Go/Actions/CreateReleaseNotes@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CreateReleaseNotes@v9.0 with: shell: pwsh buildVersion: ${{ github.event.inputs.buildVersion }} @@ -190,13 +190,13 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -240,7 +240,7 @@ jobs: }); - name: Deliver to NuGet - uses: microsoft/AL-Go/Actions/Deliver@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/Deliver@v9.0 if: ${{ fromJson(steps.ReadSecrets.outputs.Secrets).nuGetContext != '' }} env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' @@ -253,7 +253,7 @@ jobs: atypes: 'Apps,TestApps' - name: Deliver to Storage - uses: microsoft/AL-Go/Actions/Deliver@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/Deliver@v9.0 if: ${{ fromJson(steps.ReadSecrets.outputs.Secrets).storageContext != '' }} env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' @@ -297,13 +297,13 @@ jobs: uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -311,7 +311,7 @@ jobs: useGhTokenWorkflowForPush: '${{ github.event.inputs.useGhTokenWorkflow }}' - name: Update Version Number - uses: microsoft/AL-Go/Actions/IncrementVersionNumber@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/IncrementVersionNumber@v9.0 with: shell: pwsh token: ${{ steps.ReadSecrets.outputs.TokenForPush }} @@ -329,7 +329,7 @@ jobs: - name: Finalize the workflow id: PostProcess - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/CreateTestApp.yaml b/.github/workflows/CreateTestApp.yaml index 8f47270..02de02b 100644 --- a/.github/workflows/CreateTestApp.yaml +++ b/.github/workflows/CreateTestApp.yaml @@ -53,7 +53,7 @@ jobs: runs-on: [ ubuntu-latest ] steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -62,18 +62,18 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -81,7 +81,7 @@ jobs: useGhTokenWorkflowForPush: '${{ github.event.inputs.useGhTokenWorkflow }}' - name: Creating a new test app - uses: microsoft/AL-Go/Actions/CreateApp@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CreateApp@v9.0 with: shell: pwsh token: ${{ steps.ReadSecrets.outputs.TokenForPush }} @@ -95,7 +95,7 @@ jobs: - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/Current.yaml b/.github/workflows/Current.yaml index 1640649..5e624e4 100644 --- a/.github/workflows/Current.yaml +++ b/.github/workflows/Current.yaml @@ -33,7 +33,7 @@ jobs: telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -44,13 +44,13 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: useGitSubmodules,shortLivedArtifactsRetentionDays @@ -58,7 +58,7 @@ jobs: - name: Read submodules token id: ReadSubmodulesToken if: env.useGitSubmodules != 'false' && env.useGitSubmodules != '' - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -80,7 +80,7 @@ jobs: - name: Determine Projects To Build id: determineProjectsToBuild - uses: microsoft/AL-Go/Actions/DetermineProjectsToBuild@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v9.0 with: shell: pwsh maxBuildDepth: ${{ env.workflowDepth }} @@ -117,7 +117,7 @@ jobs: - name: Finalize the workflow id: PostProcess - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/DeployReferenceDocumentation.yaml b/.github/workflows/DeployReferenceDocumentation.yaml index 3f6d2af..24f28ad 100644 --- a/.github/workflows/DeployReferenceDocumentation.yaml +++ b/.github/workflows/DeployReferenceDocumentation.yaml @@ -30,24 +30,24 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Determine ArtifactUrl id: determineArtifactUrl - uses: microsoft/AL-Go/Actions/DetermineArtifactUrl@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineArtifactUrl@v9.0 with: shell: pwsh - name: Determine Deployment Environments id: DetermineDeploymentEnvironments - uses: microsoft/AL-Go/Actions/DetermineDeploymentEnvironments@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineDeploymentEnvironments@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: @@ -57,10 +57,10 @@ jobs: - name: Setup Pages if: steps.DetermineDeploymentEnvironments.outputs.deployALDocArtifact == 1 - uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0 + uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0 - name: Build Reference Documentation - uses: microsoft/AL-Go/Actions/BuildReferenceDocumentation@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/BuildReferenceDocumentation@v9.0 with: shell: pwsh artifacts: 'latest' @@ -74,11 +74,11 @@ jobs: - name: Deploy to GitHub Pages if: steps.DetermineDeploymentEnvironments.outputs.deployALDocArtifact == 1 id: deployment - uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5 + uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5.0.0 - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/IncrementVersionNumber.yaml b/.github/workflows/IncrementVersionNumber.yaml index 2a441a0..255ba40 100644 --- a/.github/workflows/IncrementVersionNumber.yaml +++ b/.github/workflows/IncrementVersionNumber.yaml @@ -48,7 +48,7 @@ jobs: pull-requests: write steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -57,24 +57,24 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Validate Workflow Input if: ${{ github.event_name == 'workflow_dispatch' }} - uses: microsoft/AL-Go/Actions/ValidateWorkflowInput@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ValidateWorkflowInput@v9.0 with: shell: pwsh - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -82,7 +82,7 @@ jobs: useGhTokenWorkflowForPush: '${{ github.event.inputs.useGhTokenWorkflow }}' - name: Increment Version Number - uses: microsoft/AL-Go/Actions/IncrementVersionNumber@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/IncrementVersionNumber@v9.0 with: shell: pwsh token: ${{ steps.ReadSecrets.outputs.TokenForPush }} @@ -93,7 +93,7 @@ jobs: - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/NextMajor.yaml b/.github/workflows/NextMajor.yaml index 00f33dc..bcdd9d3 100644 --- a/.github/workflows/NextMajor.yaml +++ b/.github/workflows/NextMajor.yaml @@ -33,7 +33,7 @@ jobs: telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -44,13 +44,13 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: useGitSubmodules,shortLivedArtifactsRetentionDays @@ -58,7 +58,7 @@ jobs: - name: Read submodules token id: ReadSubmodulesToken if: env.useGitSubmodules != 'false' && env.useGitSubmodules != '' - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -80,7 +80,7 @@ jobs: - name: Determine Projects To Build id: determineProjectsToBuild - uses: microsoft/AL-Go/Actions/DetermineProjectsToBuild@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v9.0 with: shell: pwsh maxBuildDepth: ${{ env.workflowDepth }} @@ -117,7 +117,7 @@ jobs: - name: Finalize the workflow id: PostProcess - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/NextMinor.yaml b/.github/workflows/NextMinor.yaml index a746f00..b2d9e96 100644 --- a/.github/workflows/NextMinor.yaml +++ b/.github/workflows/NextMinor.yaml @@ -33,7 +33,7 @@ jobs: telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -44,13 +44,13 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: useGitSubmodules,shortLivedArtifactsRetentionDays @@ -58,7 +58,7 @@ jobs: - name: Read submodules token id: ReadSubmodulesToken if: env.useGitSubmodules != 'false' && env.useGitSubmodules != '' - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -80,7 +80,7 @@ jobs: - name: Determine Projects To Build id: determineProjectsToBuild - uses: microsoft/AL-Go/Actions/DetermineProjectsToBuild@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v9.0 with: shell: pwsh maxBuildDepth: ${{ env.workflowDepth }} @@ -117,7 +117,7 @@ jobs: - name: Finalize the workflow id: PostProcess - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/PublishToEnvironment.yaml b/.github/workflows/PublishToEnvironment.yaml index 9a30682..ff5dfe3 100644 --- a/.github/workflows/PublishToEnvironment.yaml +++ b/.github/workflows/PublishToEnvironment.yaml @@ -42,7 +42,7 @@ jobs: telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -51,19 +51,19 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh - name: Determine Deployment Environments id: DetermineDeploymentEnvironments - uses: microsoft/AL-Go/Actions/DetermineDeploymentEnvironments@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineDeploymentEnvironments@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: @@ -82,7 +82,7 @@ jobs: - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 if: steps.DetermineDeploymentEnvironments.outputs.UnknownEnvironment == 1 with: shell: pwsh @@ -114,7 +114,7 @@ jobs: Write-Host "No AuthContext provided for $envName, initiating Device Code flow" $ALGoHelperPath = "$([System.IO.Path]::GetTempFileName()).ps1" $webClient = New-Object System.Net.WebClient - $webClient.DownloadFile('https://raw.githubusercontent.com/microsoft/AL-Go/91c2f1bab7959cffc66fd9513a1d83ec9f641e30/Actions/AL-Go-Helper.ps1', $ALGoHelperPath) + $webClient.DownloadFile('https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v9.0/AL-Go-Helper.ps1', $ALGoHelperPath) . $ALGoHelperPath DownloadAndImportBcContainerHelper $authContext = New-BcAuthContext -includeDeviceLogin -deviceLoginTimeout ([TimeSpan]::FromSeconds(0)) @@ -150,21 +150,21 @@ jobs: Add-Content -Encoding UTF8 -Path $env:GITHUB_OUTPUT -Value "envName=$envName" - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: ${{ matrix.shell }} get: type,powerPlatformSolutionFolder - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: ${{ matrix.shell }} gitHubSecrets: ${{ toJson(secrets) }} getSecrets: '${{ steps.envName.outputs.envName }}-AuthContext,${{ steps.envName.outputs.envName }}_AuthContext,AuthContext' - name: Get Artifacts for deployment - uses: microsoft/AL-Go/Actions/GetArtifactsForDeployment@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/GetArtifactsForDeployment@v9.0 with: shell: ${{ matrix.shell }} artifactsVersion: ${{ github.event.inputs.appVersion }} @@ -173,7 +173,7 @@ jobs: - name: Deploy to Business Central id: Deploy - uses: microsoft/AL-Go/Actions/Deploy@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/Deploy@v9.0 env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' with: @@ -186,7 +186,7 @@ jobs: - name: Deploy to Power Platform if: env.type == 'PTE' && env.powerPlatformSolutionFolder != '' - uses: microsoft/AL-Go/Actions/DeployPowerPlatform@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DeployPowerPlatform@v9.0 env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' with: @@ -205,7 +205,7 @@ jobs: - name: Finalize the workflow id: PostProcess - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/PullRequestHandler.yaml b/.github/workflows/PullRequestHandler.yaml index 438e2e1..a32159e 100644 --- a/.github/workflows/PullRequestHandler.yaml +++ b/.github/workflows/PullRequestHandler.yaml @@ -31,7 +31,7 @@ jobs: if: (github.event.pull_request.base.repo.full_name != github.event.pull_request.head.repo.full_name) && (github.event_name != 'pull_request') runs-on: windows-latest steps: - - uses: microsoft/AL-Go/Actions/VerifyPRChanges@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + - uses: microsoft/AL-Go-Actions/VerifyPRChanges@v9.0 Initialization: needs: [ PregateCheck ] @@ -49,7 +49,7 @@ jobs: trackALAlertsInGitHub: ${{ steps.SetALCodeAnalysisVar.outputs.trackALAlertsInGitHub }} steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -61,13 +61,13 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: shortLivedArtifactsRetentionDays,trackALAlertsInGitHub @@ -86,7 +86,7 @@ jobs: - name: Determine Projects To Build id: determineProjectsToBuild - uses: microsoft/AL-Go/Actions/DetermineProjectsToBuild@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v9.0 with: shell: pwsh maxBuildDepth: ${{ env.workflowDepth }} @@ -129,7 +129,7 @@ jobs: ref: ${{ format('refs/pull/{0}/head', github.event.pull_request.number) }} - name: Download artifacts - ErrorLogs - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 if: (success() || failure()) with: pattern: '*-*ErrorLogs-*' @@ -139,7 +139,7 @@ jobs: - name: Process AL Code Analysis Logs id: ProcessALCodeAnalysisLogs if: (success() || failure()) - uses: microsoft/AL-Go/Actions/ProcessALCodeAnalysisLogs@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ProcessALCodeAnalysisLogs@v9.0 with: shell: pwsh @@ -160,7 +160,7 @@ jobs: steps: - name: Pull Request Status Check id: PullRequestStatusCheck - uses: microsoft/AL-Go/Actions/PullRequestStatusCheck@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/PullRequestStatusCheck@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: @@ -168,7 +168,7 @@ jobs: - name: Finalize the workflow id: PostProcess - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 if: success() || failure() env: GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/Troubleshooting.yaml b/.github/workflows/Troubleshooting.yaml index 46ce1e4..02942bf 100644 --- a/.github/workflows/Troubleshooting.yaml +++ b/.github/workflows/Troubleshooting.yaml @@ -30,7 +30,7 @@ jobs: lfs: true - name: Troubleshooting - uses: microsoft/AL-Go/Actions/Troubleshooting@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/Troubleshooting@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} diff --git a/.github/workflows/UpdateGitHubGoSystemFiles.yaml b/.github/workflows/UpdateGitHubGoSystemFiles.yaml index 2e2eec6..e576348 100644 --- a/.github/workflows/UpdateGitHubGoSystemFiles.yaml +++ b/.github/workflows/UpdateGitHubGoSystemFiles.yaml @@ -21,6 +21,10 @@ on: default: '' workflow_call: inputs: + caller: + description: Name of the calling workflow (use github.workflow as value when calling) + type: string + required: true templateUrl: description: Template Repository URL (current is https://github.com/microsoft/AL-Go-PTE@preview) type: string @@ -52,6 +56,7 @@ defaults: shell: pwsh env: + WorkflowEventName: ${{ inputs.caller && 'workflow_call' || github.event_name }} ALGoOrgSettings: ${{ vars.ALGoOrgSettings }} ALGoRepoSettings: ${{ vars.ALGoRepoSettings }} @@ -68,22 +73,23 @@ jobs: - name: Read settings id: ReadSettings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: templateUrl - name: Get Workflow Multi-Run Branches id: GetBranches - uses: microsoft/AL-Go/Actions/GetWorkflowMultiRunBranches@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/GetWorkflowMultiRunBranches@v9.0 with: shell: pwsh - includeBranches: ${{ github.event.inputs.includeBranches }} + workflowEventName: ${{ env.WorkflowEventName }} + includeBranches: ${{ inputs.includeBranches }} - name: Determine Template URL id: DetermineTemplateUrl env: - TemplateUrlAsInput: '${{ github.event.inputs.templateUrl }}' + TemplateUrlAsInput: '${{ inputs.templateUrl }}' run: | $templateUrl = $env:templateUrl # Available from ReadSettings step if ($ENV:TemplateUrlAsInput) { @@ -104,7 +110,7 @@ jobs: steps: - name: Dump Workflow Information - uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v9.0 with: shell: pwsh @@ -115,19 +121,19 @@ jobs: - name: Initialize the workflow id: init - uses: microsoft/AL-Go/Actions/WorkflowInitialize@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowInitialize@v9.0 with: shell: pwsh - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: pwsh get: commitOptions - name: Read secrets id: ReadSecrets - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: pwsh gitHubSecrets: ${{ toJson(secrets) }} @@ -135,12 +141,12 @@ jobs: - name: Calculate Commit Options env: - directCommit: '${{ github.event.inputs.directCommit }}' - downloadLatest: '${{ github.event.inputs.downloadLatest }}' + directCommit: '${{ inputs.directCommit }}' + downloadLatest: '${{ inputs.downloadLatest }}' run: | $errorActionPreference = "Stop"; $ProgressPreference = "SilentlyContinue"; Set-StrictMode -Version 2.0 - if('${{ github.event_name }}' -in 'workflow_dispatch', 'workflow_call') { - Write-Host "Using inputs from ${{ github.event_name }} event" + if($env:WorkflowEventName -in 'workflow_dispatch', 'workflow_call') { + Write-Host "Using inputs from $($env:WorkflowEventName) event" $directCommit = $env:directCommit $downloadLatest = $env:downloadLatest } @@ -154,7 +160,7 @@ jobs: Add-Content -Encoding UTF8 -Path $env:GITHUB_ENV -Value "downloadLatest=$downloadLatest" - name: Update AL-Go system files - uses: microsoft/AL-Go/Actions/CheckForUpdates@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CheckForUpdates@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: @@ -168,7 +174,7 @@ jobs: - name: Finalize the workflow if: always() - uses: microsoft/AL-Go/Actions/WorkflowPostProcess@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v9.0 env: GITHUB_TOKEN: ${{ github.token }} with: diff --git a/.github/workflows/_BuildALGoProject.yaml b/.github/workflows/_BuildALGoProject.yaml index fa44c78..b0d1f51 100644 --- a/.github/workflows/_BuildALGoProject.yaml +++ b/.github/workflows/_BuildALGoProject.yaml @@ -104,16 +104,16 @@ jobs: lfs: true - name: Read settings - uses: microsoft/AL-Go/Actions/ReadSettings@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSettings@v9.0 with: shell: ${{ inputs.shell }} project: ${{ inputs.project }} buildMode: ${{ inputs.buildMode }} - get: useCompilerFolder,keyVaultCodesignCertificateName,doNotSignApps,doNotRunTests,doNotRunBcptTests,doNotRunpageScriptingTests,artifact,generateDependencyArtifact,trustedSigning,useGitSubmodules,trackALAlertsInGitHub + get: useCompilerFolder,workspaceCompilation,keyVaultCodesignCertificateName,doNotSignApps,doNotRunTests,doNotRunBcptTests,doNotRunpageScriptingTests,artifact,generateDependencyArtifact,trustedSigning,useGitSubmodules,trackALAlertsInGitHub - name: Determine whether to build project id: DetermineBuildProject - uses: microsoft/AL-Go/Actions/DetermineBuildProject@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineBuildProject@v9.0 with: shell: ${{ inputs.shell }} skippedProjectsJson: ${{ inputs.skippedProjectsJson }} @@ -123,7 +123,7 @@ jobs: - name: Read secrets id: ReadSecrets if: steps.DetermineBuildProject.outputs.BuildIt == 'True' - uses: microsoft/AL-Go/Actions/ReadSecrets@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/ReadSecrets@v9.0 with: shell: ${{ inputs.shell }} gitHubSecrets: ${{ toJson(secrets) }} @@ -141,14 +141,14 @@ jobs: - name: Determine ArtifactUrl id: determineArtifactUrl if: steps.DetermineBuildProject.outputs.BuildIt == 'True' - uses: microsoft/AL-Go/Actions/DetermineArtifactUrl@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DetermineArtifactUrl@v9.0 with: shell: ${{ inputs.shell }} project: ${{ inputs.project }} - name: Cache Business Central Artifacts if: steps.DetermineBuildProject.outputs.BuildIt == 'True' && env.useCompilerFolder == 'True' && inputs.useArtifactCache && env.artifactCacheKey - uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3 + uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4 with: path: ${{ runner.temp }}/.artifactcache key: ${{ env.artifactCacheKey }} @@ -156,7 +156,7 @@ jobs: - name: Download Project Dependencies id: DownloadProjectDependencies if: steps.DetermineBuildProject.outputs.BuildIt == 'True' - uses: microsoft/AL-Go/Actions/DownloadProjectDependencies@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/DownloadProjectDependencies@v9.0 env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' with: @@ -166,13 +166,40 @@ jobs: projectDependenciesJson: ${{ inputs.projectDependenciesJson }} baselineWorkflowRunId: ${{ inputs.baselineWorkflowRunId }} + - name: Compile Apps + id: compile + uses: microsoft/AL-Go-Actions/CompileApps@v9.0 + if: steps.DetermineBuildProject.outputs.BuildIt == 'True' && fromJson(env.workspaceCompilation).enabled == true + env: + Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' + BuildMode: ${{ inputs.buildMode }} + with: + shell: ${{ inputs.shell }} + artifact: ${{ env.artifact }} + project: ${{ inputs.project }} + buildMode: ${{ inputs.buildMode }} + dependencyAppsJson: ${{ steps.DownloadProjectDependencies.outputs.DownloadedApps }} + dependencyTestAppsJson: ${{ steps.DownloadProjectDependencies.outputs.DownloadedTestApps }} + baselineWorkflowRunId: ${{ inputs.baselineWorkflowRunId }} + baselineWorkflowSHA: ${{ inputs.baselineWorkflowSHA }} + + - name: Save needs context to file + shell: pwsh + run: | + $nc = @' + ${{ inputs.needsContext }} + '@ + $needsContextPath = Join-Path $ENV:RUNNER_TEMP 'needsContext.json' + [System.IO.File]::WriteAllText($needsContextPath, $nc.Trim()) + Add-Content -Encoding UTF8 -Path $env:GITHUB_ENV -Value "NeedsContext=$needsContextPath" + - name: Build - uses: microsoft/AL-Go/Actions/RunPipeline@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/RunPipeline@v9.0 if: steps.DetermineBuildProject.outputs.BuildIt == 'True' env: Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}' BuildMode: ${{ inputs.buildMode }} - NeedsContext: ${{ inputs.needsContext }} + NeedsContext: ${{ env.NeedsContext }} with: shell: ${{ inputs.shell }} artifact: ${{ env.artifact }} @@ -186,7 +213,7 @@ jobs: - name: Sign id: sign if: steps.DetermineBuildProject.outputs.BuildIt == 'True' && inputs.signArtifacts && env.doNotSignApps == 'False' && (env.keyVaultCodesignCertificateName != '' || (fromJson(env.trustedSigning).Endpoint != '' && fromJson(env.trustedSigning).Account != '' && fromJson(env.trustedSigning).CertificateProfile != '')) && (hashFiles(format('{0}/.buildartifacts/Apps/*.app',inputs.project)) != '') - uses: microsoft/AL-Go/Actions/Sign@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/Sign@v9.0 with: shell: ${{ inputs.shell }} azureCredentialsJson: '${{ fromJson(steps.ReadSecrets.outputs.Secrets).AZURE_CREDENTIALS }}' @@ -194,7 +221,7 @@ jobs: - name: Calculate Artifact names id: calculateArtifactsNames - uses: microsoft/AL-Go/Actions/CalculateArtifactNames@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/CalculateArtifactNames@v9.0 if: success() || failure() with: shell: ${{ inputs.shell }} @@ -203,7 +230,7 @@ jobs: suffix: ${{ inputs.artifactsNameSuffix }} - name: Publish artifacts - apps - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: inputs.artifactsRetentionDays >= 0 && (hashFiles(format('{0}/.buildartifacts/Apps/*',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.AppsArtifactsName }} @@ -212,7 +239,7 @@ jobs: retention-days: ${{ inputs.artifactsRetentionDays }} - name: Publish artifacts - dependencies - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: inputs.artifactsRetentionDays >= 0 && env.generateDependencyArtifact == 'True' && (hashFiles(format('{0}/.buildartifacts/Dependencies/*',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.DependenciesArtifactsName }} @@ -221,7 +248,7 @@ jobs: retention-days: ${{ inputs.artifactsRetentionDays }} - name: Publish artifacts - test apps - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: inputs.artifactsRetentionDays >= 0 && (hashFiles(format('{0}/.buildartifacts/TestApps/*',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.TestAppsArtifactsName }} @@ -230,7 +257,7 @@ jobs: retention-days: ${{ inputs.artifactsRetentionDays }} - name: Publish artifacts - build output - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: (success() || failure()) && (hashFiles(format('{0}/BuildOutput.txt',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.BuildOutputArtifactsName }} @@ -238,7 +265,7 @@ jobs: if-no-files-found: ignore - name: Publish artifacts - container event log - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: (failure()) && (hashFiles(format('{0}/ContainerEventLog.evtx',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.ContainerEventLogArtifactsName }} @@ -246,7 +273,7 @@ jobs: if-no-files-found: ignore - name: Publish artifacts - test results - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: (success() || failure()) && (hashFiles(format('{0}/.buildartifacts/TestResults.xml',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.TestResultsArtifactsName }} @@ -254,7 +281,7 @@ jobs: if-no-files-found: ignore - name: Publish artifacts - bcpt test results - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: (success() || failure()) && (hashFiles(format('{0}/.buildartifacts/bcptTestResults.json',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.BcptTestResultsArtifactsName }} @@ -262,7 +289,7 @@ jobs: if-no-files-found: ignore - name: Publish artifacts - page scripting test results - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: (success() || failure()) && (hashFiles(format('{0}/.buildartifacts/PageScriptingTestResults.xml',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.PageScriptingTestResultsArtifactsName }} @@ -270,7 +297,7 @@ jobs: if-no-files-found: ignore - name: Publish artifacts - page scripting test result details - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: (success() || failure()) && (hashFiles(format('{0}/.buildartifacts/PageScriptingTestResultDetails/*',inputs.project)) != '') with: name: ${{ steps.calculateArtifactsNames.outputs.PageScriptingTestResultDetailsArtifactsName }} @@ -278,7 +305,7 @@ jobs: if-no-files-found: ignore - name: Publish artifacts - ErrorLogs - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 if: (success() || failure()) && inputs.artifactsRetentionDays >= 0 && (hashFiles(format('{0}/.buildartifacts/ErrorLogs/*',inputs.project)) != '') && env.trackALAlertsInGitHub == 'True' with: name: ${{ steps.calculateArtifactsNames.outputs.ErrorLogsArtifactsName }} @@ -289,7 +316,7 @@ jobs: - name: Analyze Test Results id: analyzeTestResults if: (success() || failure()) && env.doNotRunTests == 'False' - uses: microsoft/AL-Go/Actions/AnalyzeTests@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/AnalyzeTests@v9.0 with: shell: ${{ inputs.shell }} project: ${{ inputs.project }} @@ -298,7 +325,7 @@ jobs: - name: Analyze BCPT Test Results id: analyzeTestResultsBCPT if: (success() || failure()) && env.doNotRunBcptTests == 'False' - uses: microsoft/AL-Go/Actions/AnalyzeTests@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/AnalyzeTests@v9.0 with: shell: ${{ inputs.shell }} project: ${{ inputs.project }} @@ -307,7 +334,7 @@ jobs: - name: Analyze Page Scripting Test Results id: analyzeTestResultsPageScripting if: (success() || failure()) && env.doNotRunpageScriptingTests == 'False' - uses: microsoft/AL-Go/Actions/AnalyzeTests@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/AnalyzeTests@v9.0 with: shell: ${{ inputs.shell }} project: ${{ inputs.project }} @@ -315,7 +342,7 @@ jobs: - name: Cleanup if: always() && steps.DetermineBuildProject.outputs.BuildIt == 'True' - uses: microsoft/AL-Go/Actions/PipelineCleanup@91c2f1bab7959cffc66fd9513a1d83ec9f641e30 + uses: microsoft/AL-Go-Actions/PipelineCleanup@v9.0 with: shell: ${{ inputs.shell }} project: ${{ inputs.project }}