videoAL Developmentofficial - Microsoftreviewed - checked by Opus

AL-Go for Github March Office Hour

AL-Go for GitHub March office hour covering the 6.4 release and version 7 plans: incremental builds, NuGet feed select mode, multi-branch system file updates, publishing from pull requests, code signing options, and Q&A on migrating from Azure DevOps.

  1. 0:00 Welcome and introduction to AL-Go office hours
  2. 1:17 Overview of AL-Go version 6.4 and 7 releases
  3. 1:59 Update AL-Go system files on multiple branches
  4. 3:45 NuGet feed select mode and BC container settings
  5. 5:06 Publish apps from pull requests
  6. 6:57 Q&A - Publishing from PR to containers
  7. 9:38 Q&A - Dependency resolution and NuGet packages
  8. 11:45 Q&A - Azure DevOps and AppSource dependencies
  9. 13:36 Incremental builds and artifact handling
  10. 15:19 Migration from Azure DevOps to AL-Go
  11. 17:48 Dependency resolution issues and GitHub NuGet
  12. 18:59 GitHub repository links and resources
  13. 21:03 Auto-uninstall capability for old apps
  14. 22:53 Multiple organizational variables support
  15. 24:11 Azure DevOps and GitHub integration
  16. 26:12 Incremental builds and code change detection
  17. 28:00 Scheduled vs manual incremental builds
  18. 29:21 Code analyzer warnings and error handling
  19. 31:53 Scheduled deployments and workflow timing
  20. 35:07 Build modes for testing multiple versions
  21. 36:29 Q&A and field length warnings
  22. 39:03 Field length changes and SQL considerations
  23. 42:08 Code signing mechanisms and certificate handling
  24. 46:13 Secret configuration for code signing
  25. 47:49 Create release action workflow issue
  26. 50:09 GitHub discussions and community engagement
video Microsoft Dynamics 365 Business Central (YouTube) · 2025-05-01Watch on YouTube

Overview

This AL-Go for GitHub office hour, published 2025-05-01, walks through what shipped in version 6.4 a week before recording and what is coming in version 7. Topics include running update AL-Go system files on multiple branches, a new NuGet feed select mode, reading BC container settings from variables, and publishing apps from pull requests to an environment for manual testing.

The second half is Q&A. It covers dependency resolution with GitHub Packages, migrating from Azure DevOps with the AL-Go workshop, how incremental builds behave on push versus scheduled and manual runs, treating warnings as errors, scheduled deployments, build modes for next major and next minor, and code signing with Azure trusted signing or Azure Key Vault. It ends with an open issue on the create release action and a discussion about using GitHub Discussions for community questions.

Key points

  • Incremental builds (released in 6.4) build and deploy only apps modified in a push and copy artifacts from the last known good build. Any settings file change currently triggers a full build, including update AL-Go system files. Changes to settings variables do not.
  • Incremental builds apply to push and scheduled builds. A manual run of the CI/CD workflow does a full build.
  • NuGet feed select mode has four options: earliest matching, earliest exact, latest, latest matching. Earliest matching also takes dependencies into account. It was previously hardcoded to latest matching.
  • Reading BC container settings from settings variables and publishing from a pull request (PR_[number] in the publish to environment workflow) are described as in preview. PR artifacts expire after one day by default.
  • Update AL-Go system files can run on multiple branches with a template URL. Running it on a schedule is recommended.
  • For signing, the PFX certificate mechanism still works if secrets are configured. The newer options are Azure trusted signing or Azure Key Vault with net sign.
  • Multiple organizational variables, for example separate settings for internal and PTE apps, are not currently possible. Auto-uninstall of old app versions is not yet implemented in AL-Go publish to environment.

Features

Feature Status At Evidence
Update AL-Go system files on multiple branches status not stated 3:00
NuGet feed select mode status not stated 4:06
BC container settings from variables preview 5:06 “So those things are in preview right now and will also be included in version seven of Elgo for GitHub.” (2:43)
Publish apps from pull requests preview 5:42 “So those things are in preview right now and will also be included in version seven of Elgo for GitHub.” (2:43)
GitHub Packages for internal dependencies status not stated 10:01
Incremental builds generally available, demoed 14:14 “so I’m expecting that uh this is the feature that we we just released in version 6.4 which is incremental builds.” (14:14)
Runtime packages for AppSource apps status not stated 13:21
AL-Go workshop for migration status not stated 15:19
AL-Go settings reference status not stated 16:45
Auto-uninstall old app versions status not stated 21:03
Multiple organizational variables status not stated 22:53
Azure Boards GitHub integration status not stated 24:11
Smart rebuild on settings changes status not stated 26:57
Scheduled incremental builds status not stated 28:42
Treat warnings as errors setting status not stated 30:39
Fail on warnings workflow setting status not stated 31:38
Scheduled deployment to environment status not stated 32:54
Build modes for version testing status not stated 35:23
Trusted signing with Azure status not stated 43:54
Code signing via Azure Key Vault and net sign status not stated 43:54
Create release action status not stated 49:42
GitHub discussions for community Q&A status not stated 51:33

AL objects mentioned

As heard in the captions. A name that matches one object page by exact type and name links to it; the others stay as named.

  • other “Business Central” at 21:03
  • other “code sign certificate URL” at 42:29
  • other “code sign certificate password” at 42:29
  • other “create release action” at 49:42

Quotes

  • 1:17 “by the way, we also just recorded the launch event video, so in a few days you will be able to see what’s new”
  • 1:33 “right now we we just launched um version 6.4 a week ago.”
  • 2:43 “So those things are in preview right now and will also be included in version seven of Elgo for GitHub.”
  • 3:45 “You can also run it on a schedule which is highly recommended. So you can you can set up this workflow schedule and say”
  • 4:28 “The difference between earliest and earliest matching is that the earliest matching is also taking dependencies into consideration.”
  • 11:57 “We do not have resources to to create algo for GitHub to or ago for Azure DevOps. Um so algo go for GitHub is”
  • 13:21 “What we hope is that more and more partners will start um publishing their appsource apps as runtime packages and sharing those with partners”
  • 14:14 “I’m expecting that uh this is the feature that we we just released in version 6.4 which is incremental builds”
  • 14:40 “whenever you you push some modifications to the repo, it will only build the apps that you actually modified in that uh push”
  • 14:52 “it will also then only deploy that app uh to your environment when it deploys. It’ll it’ll find the last known good built and”
  • 16:30 “probably you’ll find that the majority of things that you’re already doing is is somehow available in in algo for GitHub as well. Um”
  • 21:23 “the ability to uninstall or unpublish actually an an old app um was not available. That is available now”
  • 21:42 “So, we should look into getting that uh added to the publish to environment so that it it automatically unpublishes the old app”
  • 23:09 “Well, it’s it’s currently not possible. I have thought about adding like a setting to allow you to point to a different variable”
  • 26:12 “when you have a an incremental build, then it will actually copy the artifacts from the last known good build”
  • 26:57 “we right now we are selecting a full build whenever you make any changes to settings”
  • 27:09 “and update Elgo system files for example will will cause a full build afterwards uh which is probably too much”
  • 28:52 “If you set up the builds on a schedule, um you can specify that on schedule that you’ll run incremental builds on a schedule”
  • 33:20 “right now what you set up is is is a chron tab and I guess that can be used for a specific time”
  • 35:49 “you can you can build those uh in three different modes one default one for next major and one for next minor”
  • 42:38 “typically people will not be able to get a certificate and a password anymore, but I expect that you still have a pfx file”
  • 43:54 “The new mechanism to sign the apps is either using trusted signing on Azure or using um uh Azure key to um to host”
  • 45:42 “we’ve switched all our signing to to trusted signing instead. So um which is something you need to do probably within the next I”
  • 49:42 “Before we used the create release action and it worked out of the box. Now something has changed few weeks ago and we have”
  • 51:53 “we’ve been contemplating using the Q&A section in the descript discussions but haven’t really done anything”
  • 52:47 “And maybe we should remove the the question template from the issues and point to discussions instead.”
  • 52:47 “I know that I have haven’t been as active on answering discussions as I have on issues that might be a reason for for”

Disclaimers in the video

  • 1:59 coming-later: will also be included in version seven of Elgo for GitHub
  • 2:24 preview: the ability to to to set BC container settings uh from settings variables and publish to environment from a pull request. So those things are in preview right now
  • 13:36 coming-later: we are missing a few features uh for that and and that is on our schedule to finalize the new get uh features in in the upcoming release meaning over the next half year
  • 17:19 coming-later: We know that we still need to generate more documentation and I have promised to get started on that
  • 21:42 coming-later: we should look into getting that uh added to the publish to environment so that it it automatically unpublishes the old app
  • 27:22 subject-to-change: we might make a change to actually only do a full build on config changes or settings changes if some of these settings changes actually have any impact on the apps generated
  • 34:20 not-in-this-release: you want to be able to control it a little bit uh further and that would be something we had to yeah take as an as an idea if you can again create a GitHub issue with this one and and we can put into our backlog
  • 35:35 not-in-this-release: it is not something we will chain um automatically. It’s something I mean the deployment to prod is is I guess something
  • 44:18 other: in 2023 you were not able to get pfx files anymore
  • 51:53 other: we’ve been contemplating using the Q&A section in the descript discussions but haven’t really done anything

Presenters (as heard): Alexander, Ray, Christian, Tom, Oliver, Cataline Maria, Maria, Sebastian, Dominique, Tony, Unknown (primary speaker).