Like everything else these days, AL-Go for GitHub now also is available in a preview version, which you can install/apply and remove as you like. This allows you to get advantage of a bugfix or new functionality faster.
The template repository
When I create a new repository based on https://github.com/microsoft/AL-Go-PTE, I will get a repository with some workflows and some settings files.
The repo settings file (for repo broad settings) is .github/AL-Go-Settings.json contains just a few settings, 1 of them being the [email protected] from which this repo was created.
The CI/CD workflow uses this information to check whether there are any updates to the template. If updates are available, it is proven as a warning during the workflow:
Update AL-Go System Files
In order to run the Update AL-Go System Files, you will need to create a secret containing a Personal Access Token with workflow permissions (see here)
After this, you can always apply the latest updates to the template, which is pointed out by the URL and the department in the repo settings file, just by operating the Update AL-Go System Files workflow.
If you want to apply the preview version of AL-Go for GitHub, you can just enter the new URL and department in the workflow parameters and press Run Workflow.
After the workflow finishes, you will find that the PR contains changes to all scripts and workflows + a change to the repo settings file to now use the preview department as the lively template.
Switching back to the main department (or any earlier release) can be done simply by specifying the URL and department you want to use.
Note that the preview department also has undergone full end-2-end testing before the code makes it to preview.
You can see what’s changed and what’s new under the preview section here.
Using BcContainerHelper preview
How unlikely as it might sound, we do find bugs in BcContainerHelper and you might want to use a preview version of BcContainerHelper, or maybe stay on an earlier version (if the latest version comes with a bug).
For this, there is a setting called BcContainerHelperVersion in the repo settings file (same as above).
Edit the file and specify
for using the latest BcContainerHelper preview construct.
The default value is latest, which will give you the latest launched version and you can also specify 3.0.5 in order to use version 3.0.5.
Your own AL-Go for GitHub
You can also create your own native version of AL-Go for GitHub and it is fairly easy and actually the way we in Microsoft are developing for AL-Go for GitHub.
When I follow this guideline, I end up having 3 repositories:
and the actions in https://github.com/freddydk/AL-Go-Actions
Now, if you are really fearless and want to put your DevOps on totally untested code, go ahead and change your AL-Go-Template to 1 of these and you will be using my development branches as your manufacturing branches. That was of course a joke:-)
BTW. You can also specify the value dev in BcContainerHelperVersion, then you will be using my development department of ContainerHelper in your pipeline – also not counseled for manufacturing utilization.