Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update AL-Go Files + Run CICD on schedule #27842

Merged
merged 2 commits into from
Dec 18, 2024
Merged
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
7 changes: 3 additions & 4 deletions .github/AL-Go-Settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,8 @@
"buildModes": [
"Translated"
],
"CICDPushBranches": [
"main"
],
"CICDPushBranches": [],
"CICDSchedule": "0 2 * * *",
"CICDPullRequestBranches": [
"main"
],
Expand All @@ -60,5 +59,5 @@
],
"UpdateALGoSystemFilesEnvironment": "Official-Build",
"PullRequestTrigger": "pull_request",
"templateSha": "9308ffb724a39179ea32dd55c838f176903a2a5c"
"templateSha": "ef914042bcf3fb640cbf150a975c08e33657cf4a"
}
353 changes: 326 additions & 27 deletions .github/RELEASENOTES.copy.md

Large diffs are not rendered by default.

111 changes: 55 additions & 56 deletions .github/workflows/CICD.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,8 @@ name: ' CI/CD'

on:
workflow_dispatch:
push:
paths-ignore:
- '**.md'
- '.github/workflows/*.yaml'
- '!.github/workflows/CICD.yaml'
branches: [ 'main' ]
schedule:
- cron: '0 2 * * *'

defaults:
run:
Expand Down Expand Up @@ -45,27 +41,44 @@ jobs:
workflowDepth: ${{ steps.DetermineWorkflowDepth.outputs.WorkflowDepth }}
steps:
- name: Dump Workflow Information
uses: microsoft/AL-Go/Actions/DumpWorkflowInfo@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/DumpWorkflowInfo@v6.2
with:
shell: powershell

- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
lfs: true

- name: Initialize the workflow
id: init
uses: microsoft/AL-Go/Actions/WorkflowInitialize@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v6.2
with:
shell: powershell

- name: Read settings
id: ReadSettings
uses: microsoft/AL-Go/Actions/ReadSettings@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSettings@v6.2
with:
shell: powershell
get: type, powerPlatformSolutionFolder
get: type,powerPlatformSolutionFolder,useGitSubmodules

- name: Read submodules token
id: ReadSubmodulesToken
if: env.useGitSubmodules != 'false' && env.useGitSubmodules != ''
uses: microsoft/AL-Go-Actions/[email protected]
with:
shell: powershell
gitHubSecrets: ${{ toJson(secrets) }}
getSecrets: '-gitSubmodulesToken'

- name: Checkout Submodules
if: env.useGitSubmodules != 'false' && env.useGitSubmodules != ''
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
lfs: true
submodules: ${{ env.useGitSubmodules }}
token: '${{ fromJson(steps.ReadSubmodulesToken.outputs.Secrets).gitSubmodulesToken }}'

- name: Determine Workflow Depth
id: DetermineWorkflowDepth
Expand All @@ -74,7 +87,7 @@ jobs:

- name: Determine Projects To Build
id: determineProjectsToBuild
uses: microsoft/AL-Go/Actions/DetermineProjectsToBuild@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v6.2
with:
shell: powershell
maxBuildDepth: ${{ env.workflowDepth }}
Expand All @@ -87,23 +100,23 @@ jobs:

- name: Determine Delivery Target Secrets
id: DetermineDeliveryTargetSecrets
uses: microsoft/AL-Go/Actions/DetermineDeliveryTargets@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v6.2
with:
shell: powershell
projectsJson: '${{ steps.determineProjectsToBuild.outputs.ProjectsJson }}'
checkContextSecrets: 'false'

- name: Read secrets
id: ReadSecrets
uses: microsoft/AL-Go/Actions/ReadSecrets@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSecrets@v6.2
with:
shell: powershell
gitHubSecrets: ${{ toJson(secrets) }}
getSecrets: ${{ steps.DetermineDeliveryTargetSecrets.outputs.ContextSecrets }}

- name: Determine Delivery Targets
id: DetermineDeliveryTargets
uses: microsoft/AL-Go/Actions/DetermineDeliveryTargets@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v6.2
env:
Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}'
with:
Expand All @@ -113,7 +126,7 @@ jobs:

- name: Determine Deployment Environments
id: DetermineDeploymentEnvironments
uses: microsoft/AL-Go/Actions/DetermineDeploymentEnvironments@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/DetermineDeploymentEnvironments@v6.2
env:
GITHUB_TOKEN: ${{ github.token }}
with:
Expand All @@ -126,16 +139,16 @@ jobs:
runs-on: [ windows-latest ]
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Read settings
uses: microsoft/AL-Go/Actions/ReadSettings@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSettings@v6.2
with:
shell: powershell
get: templateUrl

- name: Check for updates to AL-Go system files
uses: microsoft/AL-Go/Actions/CheckForUpdates@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/CheckForUpdates@v6.2
with:
shell: powershell
templateUrl: ${{ env.templateUrl }}
Expand All @@ -152,8 +165,8 @@ jobs:
uses: ./.github/workflows/_BuildALGoProject.yaml
secrets: inherit
with:
shell: ${{ needs.Initialization.outputs.githubRunnerShell }}
runsOn: ${{ needs.Initialization.outputs.githubRunner }}
shell: ${{ matrix.githubRunnerShell }}
runsOn: ${{ matrix.githubRunner }}
project: ${{ matrix.project }}
projectName: ${{ matrix.projectName }}
buildMode: ${{ matrix.buildMode }}
Expand All @@ -175,8 +188,8 @@ jobs:
uses: ./.github/workflows/_BuildALGoProject.yaml
secrets: inherit
with:
shell: ${{ needs.Initialization.outputs.githubRunnerShell }}
runsOn: ${{ needs.Initialization.outputs.githubRunner }}
shell: ${{ matrix.githubRunnerShell }}
runsOn: ${{ matrix.githubRunner }}
project: ${{ matrix.project }}
projectName: ${{ matrix.projectName }}
buildMode: ${{ matrix.buildMode }}
Expand All @@ -187,20 +200,6 @@ jobs:
signArtifacts: true
useArtifactCache: true

BuildPP:
needs: [ Initialization ]
if: (!failure()) && (!cancelled()) && needs.Initialization.outputs.powerPlatformSolutionFolder != ''
name: Build PowerPlatform Solution
uses: ./.github/workflows/_BuildPowerPlatformSolution.yaml
secrets: inherit
with:
shell: ${{ needs.Initialization.outputs.githubRunnerShell }}
runsOn: ${{ needs.Initialization.outputs.githubRunner }}
parentTelemetryScopeJson: ${{ needs.Initialization.outputs.telemetryScopeJson }}
project: ${{ needs.Initialization.outputs.powerPlatformSolutionFolder }}
projectName: ${{ needs.Initialization.outputs.powerPlatformSolutionFolder }}
publishArtifacts: ${{ github.ref_name == 'main' || startswith(github.ref_name, 'release/') || startswith(github.ref_name, 'releases/') || needs.Initialization.outputs.deliveryTargetsJson != '[]' || needs.Initialization.outputs.environmentCount > 0 }}

DeployALDoc:
needs: [ Initialization, Build ]
if: (!cancelled()) && needs.Build.result == 'Success' && needs.Initialization.outputs.generateALDocArtifact == 1 && github.ref_name == 'main'
Expand All @@ -216,15 +215,15 @@ jobs:
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Download artifacts
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
path: '.artifacts'

- name: Read settings
uses: microsoft/AL-Go/Actions/ReadSettings@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSettings@v6.2
with:
shell: powershell

Expand All @@ -233,7 +232,7 @@ jobs:
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0

- name: Build Reference Documentation
uses: microsoft/AL-Go/Actions/BuildReferenceDocumentation@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/BuildReferenceDocumentation@v6.2
with:
shell: powershell
artifacts: '.artifacts'
Expand All @@ -249,8 +248,8 @@ jobs:
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5

Deploy:
needs: [ Initialization, Build, BuildPP ]
if: (!cancelled()) && (needs.Build.result == 'success' || needs.Build.result == 'skipped') && (needs.BuildPP.result == 'success' || needs.BuildPP.result == 'skipped') && needs.Initialization.outputs.environmentCount > 0
needs: [ Initialization, Build1, Build ]
if: (!cancelled()) && (needs.Build1.result == 'success' || needs.Build1.result == 'skipped') && (needs.Build.result == 'success' || needs.Build.result == 'skipped') && needs.Initialization.outputs.environmentCount > 0
strategy: ${{ fromJson(needs.Initialization.outputs.environmentsMatrixJson) }}
runs-on: ${{ fromJson(matrix.os) }}
name: Deploy to ${{ matrix.environment }}
Expand All @@ -262,15 +261,15 @@ jobs:
url: ${{ steps.Deploy.outputs.environmentUrl }}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Download artifacts
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
path: '.artifacts'

- name: Read settings
uses: microsoft/AL-Go/Actions/ReadSettings@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSettings@v6.2
with:
shell: ${{ matrix.shell }}
get: type,powerPlatformSolutionFolder
Expand All @@ -284,15 +283,15 @@ jobs:

- name: Read secrets
id: ReadSecrets
uses: microsoft/AL-Go/Actions/ReadSecrets@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSecrets@v6.2
with:
shell: ${{ matrix.shell }}
gitHubSecrets: ${{ toJson(secrets) }}
getSecrets: '${{ steps.envName.outputs.envName }}-AuthContext,${{ steps.envName.outputs.envName }}_AuthContext,AuthContext'

- name: Deploy to Business Central
id: Deploy
uses: microsoft/AL-Go/Actions/Deploy@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/Deploy@v6.2
env:
Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}'
with:
Expand All @@ -304,7 +303,7 @@ jobs:

- name: Deploy to Power Platform
if: env.type == 'PTE' && env.powerPlatformSolutionFolder != ''
uses: microsoft/AL-Go/Actions/DeployPowerPlatform@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/DeployPowerPlatform@v6.2
env:
Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}'
with:
Expand All @@ -314,8 +313,8 @@ jobs:
deploymentEnvironmentsJson: ${{ needs.Initialization.outputs.deploymentEnvironmentsJson }}

Deliver:
needs: [ Initialization, Build, BuildPP ]
if: (!cancelled()) && (needs.Build.result == 'success' || needs.Build.result == 'skipped') && (needs.BuildPP.result == 'success' || needs.BuildPP.result == 'skipped') && needs.Initialization.outputs.deliveryTargetsJson != '[]'
needs: [ Initialization, Build1, Build ]
if: (!cancelled()) && (needs.Build1.result == 'success' || needs.Build1.result == 'skipped') && (needs.Build.result == 'success' || needs.Build.result == 'skipped') && needs.Initialization.outputs.deliveryTargetsJson != '[]'
strategy:
matrix:
deliveryTarget: ${{ fromJson(needs.Initialization.outputs.deliveryTargetsJson) }}
Expand All @@ -324,28 +323,28 @@ jobs:
name: Deliver to ${{ matrix.deliveryTarget }}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Download artifacts
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
path: '.artifacts'

- name: Read settings
uses: microsoft/AL-Go/Actions/ReadSettings@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSettings@v6.2
with:
shell: powershell

- name: Read secrets
id: ReadSecrets
uses: microsoft/AL-Go/Actions/ReadSecrets@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSecrets@v6.2
with:
shell: powershell
gitHubSecrets: ${{ toJson(secrets) }}
getSecrets: '${{ matrix.deliveryTarget }}Context'

- name: Deliver
uses: microsoft/AL-Go/Actions/Deliver@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/Deliver@v6.2
env:
Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}'
with:
Expand All @@ -356,16 +355,16 @@ jobs:
artifacts: '.artifacts'

PostProcess:
needs: [ Initialization, Build, BuildPP, Deploy, Deliver, DeployALDoc ]
needs: [ Initialization, Build1, Build, Deploy, Deliver, DeployALDoc ]
if: (!cancelled())
runs-on: [ windows-latest ]
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Finalize the workflow
id: PostProcess
uses: microsoft/AL-Go/Actions/WorkflowPostProcess@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v6.2
env:
GITHUB_TOKEN: ${{ github.token }}
with:
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/DeployReferenceDocumentation.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,22 +26,22 @@ jobs:
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Initialize the workflow
id: init
uses: microsoft/AL-Go/Actions/WorkflowInitialize@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v6.2
with:
shell: powershell

- name: Read settings
uses: microsoft/AL-Go/Actions/ReadSettings@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/ReadSettings@v6.2
with:
shell: powershell

- name: Determine Deployment Environments
id: DetermineDeploymentEnvironments
uses: microsoft/AL-Go/Actions/DetermineDeploymentEnvironments@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/DetermineDeploymentEnvironments@v6.2
env:
GITHUB_TOKEN: ${{ github.token }}
with:
Expand All @@ -54,7 +54,7 @@ jobs:
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0

- name: Build Reference Documentation
uses: microsoft/AL-Go/Actions/BuildReferenceDocumentation@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/BuildReferenceDocumentation@v6.2
with:
shell: powershell
artifacts: 'latest'
Expand All @@ -71,7 +71,7 @@ jobs:

- name: Finalize the workflow
if: always()
uses: microsoft/AL-Go/Actions/WorkflowPostProcess@564c339085ae0ffa74c5bde71c15fea7fe54bbf1
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v6.2
env:
GITHUB_TOKEN: ${{ github.token }}
with:
Expand Down
Loading
Loading