diff --git a/.github/AL-Go-Settings.json b/.github/AL-Go-Settings.json index fab6de7257..590b71ac26 100644 --- a/.github/AL-Go-Settings.json +++ b/.github/AL-Go-Settings.json @@ -42,5 +42,6 @@ "main", "release/*" ], - "rulesetFile": "..\\..\\Build\\Rulesets\\module.ruleset.json" + "rulesetFile": "..\\..\\Build\\Rulesets\\module.ruleset.json", + "skipUpgrade": true } diff --git a/CODEOWNERS b/CODEOWNERS new file mode 100644 index 0000000000..88c27a9484 --- /dev/null +++ b/CODEOWNERS @@ -0,0 +1,7 @@ +# AL-Go files and build scripts are owned by Engineering Systems +.AL-Go/ @microsoft/dynamics-smb-engineering-systems +*.ps1 @microsoft/dynamics-smb-engineering-systems +/.azuredevops @microsoft/dynamics-smb-engineering-systems +/.github @microsoft/dynamics-smb-engineering-systems +/Build @microsoft/dynamics-smb-engineering-systems +/CODEOWNERS @microsoft/dynamics-smb-engineering-systems diff --git a/build.ps1 b/build.ps1 new file mode 100644 index 0000000000..c28435ab4a --- /dev/null +++ b/build.ps1 @@ -0,0 +1,34 @@ +<# + .Synopsis + Build script for AL-Go projects + .Description + This script will run localDevEnv.ps1 in the specified AL-Go project + .Parameter ALGoProject + The name of the AL-Go project + .Parameter InsiderSasToken + The SAS token to use for downloading insider builds + .Parameter AutoFill + If specified, the script will generate a random password and use that for the credential + .Example + .\build.ps1 -ALGoProject "System Application" + .\build.ps1 -ALGoProject "Test Stability Tools" -AutoFill +#> +param +( + [Parameter(Mandatory=$true)] + [string] $ALGoProject, + [string] $InsiderSasToken = "", + [switch] $AutoFill +) + +if ($AutoFill) { + Add-Type -AssemblyName System.Web + + $credential = New-Object pscredential admin, (ConvertTo-SecureString -String ([System.Web.Security.Membership]::GeneratePassword(20, 5)) -AsPlainText -Force) + $licenseFileUrl = 'none' + $containerName = "bcserver" + $auth = "UserPassword" +} + +$scriptPath = Join-Path $PSScriptRoot "$ALGoProject\.AL-Go\localDevEnv.ps1" -Resolve +& $scriptPath -containerName $containerName -auth $auth -credential $credential -licenseFileUrl $licenseFileUrl -insiderSasToken $InsiderSasToken