Skip to content

Commit

Permalink
'Updated AL-Go System Files' (microsoft#20892)
Browse files Browse the repository at this point in the history
## Preview

Note that when using the preview version of AL-Go for GitHub, you need
to Update your AL-Go system files, as soon as possible when told to do
so.

### Issues
- Issue microsoft#233 AL-Go for GitHub causes GitHub to issue warnings
- Issue microsoft#244 Give error if AZURE_CREDENTIALS contains line breaks

### Changes
- New workflow: PullRequestHandler to handle all Pull Requests and pass
control safely to CI/CD
- Changes to yaml files, PowerShell scripts and codeowners files are not
permitted from fork Pull Requests
- Test Results summary (and failed tests) are now displayed directly in
the CI/CD workflow and in the Pull Request Check

### Continuous Delivery
- Proof Of Concept Delivery to GitHub Packages and Nuget

## v2.0

### Issues
- Issue microsoft#143 Commit Message for **Increment Version Number** workflow
- Issue microsoft#160 Create local DevEnv aith appDependencyProbingPaths
- Issue microsoft#156 Versioningstrategy 2 doesn't use 24h format
- Issue microsoft#155 Initial Add existing app fails with "Cannot find path"
- Issue microsoft#152 Error when loading dependencies from releases
- Issue microsoft#168 Regression in preview fixed
- Issue microsoft#189 Warnings: Resource not accessible by integration
- Issue microsoft#190 PublishToEnvironment is not working with AL-Go-PTE@preview
- Issue microsoft#186 AL-GO build fails for multi-project repository when there's
nothing to build
- When you have GitHub pages enabled, AL-Go for GitHub would try to
publish to github_pages environment
- Special characters wasn't supported in parameters to GitHub actions
(Create New App etc.)

### Continuous Delivery
- Added new GitHub Action "Deliver" to deliver build output to Storage
or AppSource
- Refactor CI/CD and Release workflows to use new deliver action
- Custom delivery supported by creating scripts with the naming
convention DeliverTo*.ps1 in the .github folder

### AppSource Apps
- New workflow: Publish to AppSource
- Continuous Delivery to AppSource validation supported

### Settings
- New Repo setting: CICDPushBranches can be specified as an array of
branches, which triggers a CI/CD workflow on commit. Default is main',
release/\*, feature/\*
- New Repo setting: CICDPullRequestBranches can be specified as an array
of branches, which triggers a CI/CD workflow on pull request. Default is
main
- New Repo setting: CICDSchedule can specify a CRONTab on when you want
to run CI/CD on a schedule. Note that this will disable Push and Pull
Request triggers unless specified specifically using CICDPushBranches or
CICDPullRequestBranches
- New Repo setting: UpdateGitHubGoSystemFilesSchedule can specify a
CRONTab on when you want to Update AL-Go System Files. Note that when
running on a schedule, update AL-Go system files will perfom a direct
commit and not create a pull request.
- New project Setting: AppSourceContext should be a compressed json
structure containing authContext for submitting to AppSource. The
BcContainerHelperFunction New-ALGoAppSourceContext will help you create
this structure.
- New project Setting: AppSourceContinuousDelivery. Set this to true in
enable continuous delivery for this project to AppSource. This requires
AppSourceContext and AppSourceProductId to be set as well
- New project Setting: AppSourceProductId should be set to the product
Id of this project in AppSource
- New project Setting: AppSourceMainAppFolder. If you have multiple
appFolders, this is the folder name of the main app to submit to
AppSource.

### All workflows
- Support 2 folder levels projects (apps\w1, apps\dk etc.)
- Better error messages for if an error occurs within an action
- Special characters are now supported in secrets
- Initial support for agents running inside containers on a host
- Optimized workflows to have fewer jobs

### Update AL-Go System Files Workflow
- workflow now displays the currently used template URL when selecting
the Run Workflow action

### CI/CD workflow
- Better detection of changed projects
- appDependencyProbingPaths did not support multiple projects in the
same repository for latestBuild dependencies
- appDependencyProbingPaths with release=latestBuild only considered the
last 30 artifacts
- Use mutex around ReadSecrets to ensure that multiple agents on the
same host doesn't clash
- Add lfs when checking out files for CI/CD to support checking in
dependencies
- Continue on error with Deploy and Deliver

### CI/CD and Publish To New Environment
- Base functionality for selecting a specific GitHub runner for an
environment
- Include dependencies artifacts when deploying (if
generateDependencyArtifacts is true)

### localDevEnv.ps1 and cloudDevEnv.ps1
- Display clear error message if something goes wrong

Co-authored-by: mazhelez <[email protected]>
  • Loading branch information
2 people authored and Jan Nielsen committed Nov 16, 2022
1 parent f5bf212 commit 5dc243f
Show file tree
Hide file tree
Showing 17 changed files with 822 additions and 217 deletions.
16 changes: 15 additions & 1 deletion .github/RELEASENOTES.copy.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,21 @@
## v2.0
## Preview

Note that when using the preview version of AL-Go for GitHub, you need to Update your AL-Go system files, as soon as possible when told to do so.

### Issues
- Issue #233 AL-Go for GitHub causes GitHub to issue warnings
- Issue #244 Give error if AZURE_CREDENTIALS contains line breaks

### Changes
- New workflow: PullRequestHandler to handle all Pull Requests and pass control safely to CI/CD
- Changes to yaml files, PowerShell scripts and codeowners files are not permitted from fork Pull Requests
- Test Results summary (and failed tests) are now displayed directly in the CI/CD workflow and in the Pull Request Check

### Continuous Delivery
- Proof Of Concept Delivery to GitHub Packages and Nuget

## v2.0

### Issues
- Issue #143 Commit Message for **Increment Version Number** workflow
- Issue #160 Create local DevEnv aith appDependencyProbingPaths
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/AddExistingAppOrTestApp.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Add existing app or test app
name: 'Add existing app or test app'

on:
workflow_dispatch:
Expand Down Expand Up @@ -28,16 +28,16 @@ jobs:
runs-on: [ self-hosted,1ES.Pool=ALAppExt ]
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Initialize the workflow
id: init
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v2.0
uses: microsoft/AL-Go-Actions/WorkflowInitialize@v2.1
with:
eventId: "DO0090"

- name: Add existing app
uses: microsoft/AL-Go-Actions/AddExistingApp@v2.0
uses: microsoft/AL-Go-Actions/AddExistingApp@v2.1
with:
parentTelemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }}
project: ${{ github.event.inputs.project }}
Expand All @@ -46,7 +46,7 @@ jobs:

- name: Finalize the workflow
if: always()
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v2.0
uses: microsoft/AL-Go-Actions/WorkflowPostProcess@v2.1
with:
eventId: "DO0090"
telemetryScopeJson: ${{ steps.init.outputs.telemetryScopeJson }}
Loading

0 comments on commit 5dc243f

Please sign in to comment.