Skip to content

Commit 4e9dea0

Browse files
bcbuild-github-agentmicrosoft
and
microsoft
authored
Deploying AL-Go from main (ad7ba196b05948c0f3522a1dea60916df5169f00) to main (microsoft#44)
Deploying AL-Go from main (ad7ba196b05948c0f3522a1dea60916df5169f00) to main Co-authored-by: microsoft <[email protected]>
1 parent ea636b2 commit 4e9dea0

22 files changed

+691
-371
lines changed

Diff for: .AL-Go/cloudDevEnv.ps1

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ Write-Host -ForegroundColor Yellow @'
2727
$webClient = New-Object System.Net.WebClient
2828
$webClient.CachePolicy = New-Object System.Net.Cache.RequestCachePolicy -argumentList ([System.Net.Cache.RequestCacheLevel]::NoCacheNoStore)
2929
$webClient.Encoding = [System.Text.Encoding]::UTF8
30-
$GitHubHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.0/Github-Helper.psm1'
30+
$GitHubHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.1/Github-Helper.psm1'
3131
Write-Host "Downloading GitHub Helper module from $GitHubHelperUrl"
3232
$GitHubHelperPath = "$([System.IO.Path]::GetTempFileName()).psm1"
3333
$webClient.DownloadFile($GitHubHelperUrl, $GitHubHelperPath)
34-
$ALGoHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.0/AL-Go-Helper.ps1'
34+
$ALGoHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.1/AL-Go-Helper.ps1'
3535
Write-Host "Downloading AL-Go Helper script from $ALGoHelperUrl"
3636
$ALGoHelperPath = "$([System.IO.Path]::GetTempFileName()).ps1"
3737
$webClient.DownloadFile($ALGoHelperUrl, $ALGoHelperPath)

Diff for: .AL-Go/localDevEnv.ps1

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ Write-Host -ForegroundColor Yellow @'
3030
$webClient = New-Object System.Net.WebClient
3131
$webClient.CachePolicy = New-Object System.Net.Cache.RequestCachePolicy -argumentList ([System.Net.Cache.RequestCacheLevel]::NoCacheNoStore)
3232
$webClient.Encoding = [System.Text.Encoding]::UTF8
33-
$GitHubHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.0/Github-Helper.psm1'
33+
$GitHubHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.1/Github-Helper.psm1'
3434
Write-Host "Downloading GitHub Helper module from $GitHubHelperUrl"
3535
$GitHubHelperPath = "$([System.IO.Path]::GetTempFileName()).psm1"
3636
$webClient.DownloadFile($GitHubHelperUrl, $GitHubHelperPath)
37-
$ALGoHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.0/AL-Go-Helper.ps1'
37+
$ALGoHelperUrl = 'https://raw.githubusercontent.com/microsoft/AL-Go-Actions/v4.1/AL-Go-Helper.ps1'
3838
Write-Host "Downloading AL-Go Helper script from $ALGoHelperUrl"
3939
$ALGoHelperPath = "$([System.IO.Path]::GetTempFileName()).ps1"
4040
$webClient.DownloadFile($ALGoHelperUrl, $ALGoHelperPath)

Diff for: .github/RELEASENOTES.copy.md

+42
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,45 @@
1+
## v4.1
2+
3+
### New Settings
4+
- `templateSha`: The SHA of the version of AL-Go currently used
5+
6+
### New Actions
7+
- `DumpWorkflowInfo`: Dump information about running workflow
8+
- `Troubleshooting` : Run troubleshooting for repository
9+
10+
### Update AL-Go System Files
11+
Add another parameter when running Update AL-Go System Files, called downloadLatest, used to indicate whether to download latest version from template repository. Default value is true.
12+
If false, the templateSha repository setting is used to download specific AL-Go System Files when calculating new files.
13+
14+
### Issues
15+
- Issue 782 Exclude '.altestrunner/' from template .gitignore
16+
- Issue 823 Dependencies from prior build jobs are not included when using useProjectDependencies
17+
- App artifacts for version 'latest' are now fetched from the latest CICD run that completed and successfully built all the projects for the corresponding branch.
18+
- Issue 824 Utilize `useCompilerFolder` setting when creating an development environment for an AL-Go project.
19+
- Issue 828 and 825 display warnings for secrets, which might cause AL-Go for GitHub to malfunction
20+
21+
### New Settings
22+
23+
- `alDoc` : JSON object with properties for the ALDoc reference document generation
24+
- **continuousDeployment** = Determines if reference documentation will be deployed continuously as part of CI/CD. You can run the **Deploy Reference Documentation** workflow to deploy manually or on a schedule. (Default false)
25+
- **deployToGitHubPages** = Determines whether or not the reference documentation site should be deployed to GitHub Pages for the repository. In order to deploy to GitHub Pages, GitHub Pages must be enabled and set to GitHub Actions. (Default true)
26+
- **maxReleases** = Maximum number of releases to include in the reference documentation. (Default 3)
27+
- **groupByProject** = Determines whether projects in multi-project repositories are used as folders in reference documentation
28+
- **includeProjects** = An array of projects to include in the reference documentation. (Default all)
29+
- **excludeProjects** = An array of projects to exclude in the reference documentation. (Default none)-
30+
- **header** = Header for the documentation site. (Default: Documentation for...)
31+
- **footer** = Footer for the documentation site. (Default: Made with...)
32+
- **defaultIndexMD** = Markdown for the landing page of the documentation site. (Default: Reference documentation...)
33+
- **defaultReleaseMD** = Markdown for the landing page of the release sites. (Default: Release reference documentation...)
34+
- *Note that in header, footer, defaultIndexMD and defaultReleaseMD you can use the following placeholders: {REPOSITORY}, {VERSION}, {INDEXTEMPLATERELATIVEPATH}, {RELEASENOTES}*
35+
36+
### New Workflows
37+
- **Deploy Reference Documentation** is a workflow, which you can invoke manually or on a schedule to generate and deploy reference documentation using the aldoc tool, using the ALDoc setting properties described above.
38+
- **Troubleshooting** is a workflow, which you can invoke manually to run troubleshooting on the repository and check for settings or secrets, containing illegal values. When creating issues on https://github.com/microsoft/AL-Go/issues, we might ask you to run the troubleshooter to help identify common problems.
39+
40+
### Support for ALDoc reference documentation tool
41+
ALDoc reference documentation tool is now supported for generating and deploying reference documentation for your projects either continuously or manually/scheduled.
42+
143
## v4.0
244

345
### Removal of the InsiderSasToken

Diff for: .github/workflows/AddExistingAppOrTestApp.yaml

+16-9
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,13 @@ on:
1313
description: Direct Download Url of .app or .zip file
1414
required: true
1515
directCommit:
16-
description: Direct COMMIT (Y/N)
17-
required: false
18-
default: 'N'
16+
description: Direct Commit?
17+
type: boolean
18+
default: false
1919
useGhTokenWorkflow:
20-
description: Use GhTokenWorkflow for Pull Request/COMMIT
20+
description: Use GhTokenWorkflow for PR/Commit?
2121
type: boolean
22+
default: false
2223

2324
permissions:
2425
contents: write
@@ -34,34 +35,40 @@ env:
3435

3536
jobs:
3637
AddExistingAppOrTestApp:
38+
needs: [ ]
3739
runs-on: [ windows-latest ]
3840
steps:
41+
- name: Dump Workflow Information
42+
uses: microsoft/AL-Go-Actions/[email protected]
43+
with:
44+
shell: powershell
45+
3946
- name: Checkout
4047
uses: actions/checkout@v3
4148

4249
- name: Initialize the workflow
4350
id: init
44-
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v4.0
51+
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v4.1
4552
with:
4653
shell: powershell
4754
eventId: "DO0090"
4855

4956
- name: Read settings
50-
uses: microsoft/AL-Go-Actions/ReadSettings@v4.0
57+
uses: microsoft/AL-Go-Actions/ReadSettings@v4.1
5158
with:
5259
shell: powershell
5360

5461
- name: Read secrets
5562
id: ReadSecrets
56-
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.0
63+
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.1
5764
with:
5865
shell: powershell
5966
gitHubSecrets: ${{ toJson(secrets) }}
6067
getSecrets: 'TokenForPush'
6168
useGhTokenWorkflowForPush: '${{ github.event.inputs.useGhTokenWorkflow }}'
6269

6370
- name: Add existing app
64-
uses: microsoft/AL-Go-Actions/AddExistingApp@v4.0
71+
uses: microsoft/AL-Go-Actions/AddExistingApp@v4.1
6572
with:
6673
shell: powershell
6774
token: ${{ steps.ReadSecrets.outputs.TokenForPush }}
@@ -72,7 +79,7 @@ jobs:
7279

7380
- name: Finalize the workflow
7481
if: always()
75-
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v4.0
82+
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v4.1
7683
with:
7784
shell: powershell
7885
eventId: "DO0090"

Diff for: .github/workflows/CICD.yaml

+76-21
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,15 @@ env:
2424

2525
jobs:
2626
Initialization:
27+
needs: [ ]
2728
runs-on: [ windows-latest ]
2829
outputs:
2930
telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }}
3031
environmentsMatrixJson: ${{ steps.DetermineDeploymentEnvironments.outputs.EnvironmentsMatrixJson }}
3132
environmentCount: ${{ steps.DetermineDeploymentEnvironments.outputs.EnvironmentCount }}
3233
deploymentEnvironmentsJson: ${{ steps.DetermineDeploymentEnvironments.outputs.DeploymentEnvironmentsJson }}
34+
generateALDocArtifact: ${{ steps.DetermineDeploymentEnvironments.outputs.GenerateALDocArtifact }}
35+
deployALDocArtifact: ${{ steps.DetermineDeploymentEnvironments.outputs.DeployALDocArtifact }}
3336
deliveryTargetsJson: ${{ steps.DetermineDeliveryTargets.outputs.DeliveryTargetsJson }}
3437
githubRunner: ${{ steps.ReadSettings.outputs.GitHubRunnerJson }}
3538
githubRunnerShell: ${{ steps.ReadSettings.outputs.GitHubRunnerShell }}
@@ -38,21 +41,26 @@ jobs:
3841
buildOrderJson: ${{ steps.determineProjectsToBuild.outputs.BuildOrderJson }}
3942
workflowDepth: ${{ steps.DetermineWorkflowDepth.outputs.WorkflowDepth }}
4043
steps:
44+
- name: Dump Workflow Information
45+
uses: microsoft/AL-Go-Actions/[email protected]
46+
with:
47+
shell: powershell
48+
4149
- name: Checkout
4250
uses: actions/checkout@v3
4351
with:
4452
lfs: true
4553

4654
- name: Initialize the workflow
4755
id: init
48-
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v4.0
56+
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v4.1
4957
with:
5058
shell: powershell
5159
eventId: "DO0091"
5260

5361
- name: Read settings
5462
id: ReadSettings
55-
uses: microsoft/AL-Go-Actions/ReadSettings@v4.0
63+
uses: microsoft/AL-Go-Actions/ReadSettings@v4.1
5664
with:
5765
shell: powershell
5866
get: type
@@ -64,40 +72,40 @@ jobs:
6472
6573
- name: Determine Projects To Build
6674
id: determineProjectsToBuild
67-
uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v4.0
75+
uses: microsoft/AL-Go-Actions/DetermineProjectsToBuild@v4.1
6876
with:
6977
shell: powershell
7078
maxBuildDepth: ${{ env.workflowDepth }}
7179

7280
- name: Determine Delivery Target Secrets
7381
id: DetermineDeliveryTargetSecrets
74-
uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v4.0
82+
uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v4.1
7583
with:
7684
shell: powershell
7785
projectsJson: '${{ steps.determineProjectsToBuild.outputs.ProjectsJson }}'
78-
checkContextSecrets: 'N'
86+
checkContextSecrets: 'false'
7987

8088
- name: Read secrets
8189
id: ReadSecrets
82-
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.0
90+
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.1
8391
with:
8492
shell: powershell
8593
gitHubSecrets: ${{ toJson(secrets) }}
8694
getSecrets: ${{ steps.DetermineDeliveryTargetSecrets.outputs.ContextSecrets }}
8795

8896
- name: Determine Delivery Targets
8997
id: DetermineDeliveryTargets
90-
uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v4.0
98+
uses: microsoft/AL-Go-Actions/DetermineDeliveryTargets@v4.1
9199
env:
92100
Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}'
93101
with:
94102
shell: powershell
95103
projectsJson: '${{ steps.determineProjectsToBuild.outputs.ProjectsJson }}'
96-
checkContextSecrets: 'Y'
104+
checkContextSecrets: 'true'
97105

98106
- name: Determine Deployment Environments
99107
id: DetermineDeploymentEnvironments
100-
uses: microsoft/AL-Go-Actions/DetermineDeploymentEnvironments@v4.0
108+
uses: microsoft/AL-Go-Actions/DetermineDeploymentEnvironments@v4.1
101109
env:
102110
GITHUB_TOKEN: ${{ github.token }}
103111
with:
@@ -106,24 +114,24 @@ jobs:
106114
type: 'CD'
107115

108116
CheckForUpdates:
109-
runs-on: [ windows-latest ]
110117
needs: [ Initialization ]
118+
runs-on: [ windows-latest ]
111119
steps:
112120
- name: Checkout
113121
uses: actions/checkout@v3
114122

115123
- name: Read settings
116-
uses: microsoft/AL-Go-Actions/ReadSettings@v4.0
124+
uses: microsoft/AL-Go-Actions/ReadSettings@v4.1
117125
with:
118126
shell: powershell
119127
get: templateUrl
120128

121129
- name: Check for updates to AL-Go system files
122-
uses: microsoft/AL-Go-Actions/CheckForUpdates@v4.0
130+
uses: microsoft/AL-Go-Actions/CheckForUpdates@v4.1
123131
with:
124132
shell: powershell
125-
parentTelemetryScopeJson: ${{ needs.Initialization.outputs.telemetryScopeJson }}
126133
templateUrl: ${{ env.templateUrl }}
134+
downloadLatest: true
127135

128136
Build:
129137
needs: [ Initialization ]
@@ -149,6 +157,53 @@ jobs:
149157
signArtifacts: true
150158
useArtifactCache: true
151159

160+
DeployALDoc:
161+
needs: [ Initialization, Build ]
162+
if: always() && needs.Build.result == 'Success' && needs.Initialization.outputs.generateALDocArtifact == 1 && github.ref_name == 'main'
163+
runs-on: windows-latest
164+
name: Deploy Reference Documentation
165+
permissions:
166+
contents: write
167+
actions: read
168+
pages: write
169+
id-token: write
170+
environment:
171+
name: github-pages
172+
url: ${{ steps.deployment.outputs.page_url }}
173+
steps:
174+
- name: Checkout
175+
uses: actions/checkout@v3
176+
177+
- name: Download artifacts
178+
uses: actions/download-artifact@v3
179+
with:
180+
path: '.artifacts'
181+
182+
- name: Read settings
183+
uses: microsoft/AL-Go-Actions/[email protected]
184+
with:
185+
shell: powershell
186+
187+
- name: Setup Pages
188+
if: needs.Initialization.outputs.deployALDocArtifact == 1
189+
uses: actions/configure-pages@v3
190+
191+
- name: Build Reference Documentation
192+
uses: microsoft/AL-Go-Actions/[email protected]
193+
with:
194+
shell: powershell
195+
artifacts: '.artifacts'
196+
197+
- name: Upload pages artifact
198+
uses: actions/upload-pages-artifact@v2
199+
with:
200+
path: ".aldoc/_site/"
201+
202+
- name: Deploy to GitHub Pages
203+
if: needs.Initialization.outputs.deployALDocArtifact == 1
204+
id: deployment
205+
uses: actions/deploy-pages@v2
206+
152207
Deploy:
153208
needs: [ Initialization, Build ]
154209
if: always() && needs.Build.result == 'Success' && needs.Initialization.outputs.environmentCount > 0
@@ -168,7 +223,7 @@ jobs:
168223
path: '.artifacts'
169224

170225
- name: Read settings
171-
uses: microsoft/AL-Go-Actions/ReadSettings@v4.0
226+
uses: microsoft/AL-Go-Actions/ReadSettings@v4.1
172227
with:
173228
shell: powershell
174229

@@ -181,15 +236,15 @@ jobs:
181236
182237
- name: Read secrets
183238
id: ReadSecrets
184-
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.0
239+
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.1
185240
with:
186241
shell: powershell
187242
gitHubSecrets: ${{ toJson(secrets) }}
188243
getSecrets: '${{ steps.envName.outputs.envName }}-AuthContext,${{ steps.envName.outputs.envName }}_AuthContext,AuthContext,${{ steps.envName.outputs.envName }}-EnvironmentName,${{ steps.envName.outputs.envName }}_EnvironmentName,EnvironmentName,projects'
189244

190245
- name: Deploy
191246
id: Deploy
192-
uses: microsoft/AL-Go-Actions/Deploy@v4.0
247+
uses: microsoft/AL-Go-Actions/Deploy@v4.1
193248
env:
194249
Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}'
195250
with:
@@ -218,20 +273,20 @@ jobs:
218273
path: '.artifacts'
219274

220275
- name: Read settings
221-
uses: microsoft/AL-Go-Actions/ReadSettings@v4.0
276+
uses: microsoft/AL-Go-Actions/ReadSettings@v4.1
222277
with:
223278
shell: powershell
224279

225280
- name: Read secrets
226281
id: ReadSecrets
227-
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.0
282+
uses: microsoft/AL-Go-Actions/ReadSecrets@v4.1
228283
with:
229284
shell: powershell
230285
gitHubSecrets: ${{ toJson(secrets) }}
231286
getSecrets: '${{ matrix.deliveryTarget }}Context'
232287

233288
- name: Deliver
234-
uses: microsoft/AL-Go-Actions/Deliver@v4.0
289+
uses: microsoft/AL-Go-Actions/Deliver@v4.1
235290
env:
236291
Secrets: '${{ steps.ReadSecrets.outputs.Secrets }}'
237292
with:
@@ -242,16 +297,16 @@ jobs:
242297
artifacts: '.artifacts'
243298

244299
PostProcess:
300+
needs: [ Initialization, Build, Deploy, Deliver, DeployALDoc ]
245301
if: (!cancelled())
246302
runs-on: [ windows-latest ]
247-
needs: [ Initialization, Build, Deploy, Deliver ]
248303
steps:
249304
- name: Checkout
250305
uses: actions/checkout@v3
251306

252307
- name: Finalize the workflow
253308
id: PostProcess
254-
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v4.0
309+
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v4.1
255310
with:
256311
shell: powershell
257312
eventId: "DO0091"

0 commit comments

Comments
 (0)