Security change on December 1, 2026: TLS 1.2 will become the minimum standard for 365 business Print Agent. Details and system requirements
365 business development
Azure DevOps Extension

Migrating from ALbuild V1

The ALbuild Azure DevOps extension ships V1 compatibility tasks so existing pipelines keep working after you replace the old extension with ALbuild. Each compatibility task keeps the V1 name, version and inputs, reproduces the V1 behaviour on top of the businessdev.ALbuild module, and emits a deprecation warning (the task still succeeds).

Frozen and transitional

Compatibility tasks are transitional and will be removed in a future major version. They will not receive new features or fixes. Migrate to the native tasks/cmdlets at your own pace.


Mapping

V1 taskNative replacement
InstallBcContainerHelper(remove, ALbuild has no BcContainerHelper dependency)
CreateBuildContainerGet BC Artifact + Create BC Container (Find-BcArtifactUrl + New-BcContainer)
RemoveBuildContainerRemove BC Container (Remove-BcContainer)
AppVersioningStamp Build Version (Invoke-BcBuildVersionStamp / Set-BcAppVersion)
CreateBuildBranchfolded into Stamp Build Version (Invoke-BcBuildVersionStamp); or New-BcBuildBranch directly
DownloadArtifactsNuGetResolve Dependencies (Register-BcFeed + Resolve-BcDependencies)
DownloadArtifactsUniversalFeedGet Universal Package (Get-BcUniversalPackage)
DownloadDependenciesUniversalFeedGet Universal Package (Get-BcUniversalPackage)
DownloadConfigPackageUniversalFeedGet Universal Package + Import Configuration Package
CompileCompile AL App (Invoke-BcCompiler)
InstallPublish App (Publish-BcContainerApp)
Install365AppInstall 365 App (Install-Bc365App)
CheckXliffTranslationCheck Translations (Test-BcTranslation)
RunTestsRun AL Tests (Invoke-BcContainerTest)
SignAppSign AL App (Invoke-BcAppSigning)
PublishTestResultsTestinyPublish Testiny Results (Publish-BcTestinyResult), or the built-in PublishTestResults task
PushNuGetPublish NuGet Package (Publish-BcPackage)
ReleasePTEPublish Per-Tenant Extension (Publish-BcPerTenantExtension)
ReleaseOnPremPublish On-Prem App (Publish-BcOnPremApp)
ReleaseDevExtensionPublish Dev Extension (Publish-BcDevExtension)
ReleaseAppSourceSubmit to Marketplace (Submit-BcMarketplaceApp)

The full V1 task reference (inputs of each compatibility task) is on the Legacy (V1) tasks page.


Notes on specific compatibility tasks

  • CreateBuildContainer / RemoveBuildContainer keep the V1 convention of sharing the container name through the containerName pipeline variable.
  • AppVersioning computes the version from the same token schema (major.minor.increment.0, latest.latest.latest.build-id, …). onlyUpdateOnChangedSource uses a git-based change check instead of the V1 appVersions.json artifact.
  • RunTests runs the AL Test Runner inside the container natively (no BcContainerHelper). It discovers the AL test apps under Build.Repository.LocalPath, honours each app's optional pipeline.config (alTestRunnerId selects the test-runner codeunit), runs them and writes TestResults.xml (JUnit). Failing tests mark the build SucceededWithIssues, matching V1. It reuses the containerUsername / containerPassword variables set by the build-container tasks. The native granular Run AL Tests task exposes the same runner with explicit inputs.
  • Install365App downloads from a configurable URL (ALBUILD_365APP_URL, {appId} token).
  • ReleasePTE exchanges the refresh token for the BC API; the client id is configurable via ALBUILD_BC_CLIENTID.
Last modified on