Managing Azure DevOps artifacts
Summarize
Summary of Managing Azure DevOps artifacts
DevOps Change Velocity simplifies the management of artifacts published through Azure DevOps build pipelines by enabling import, tracking, and package management within the platform. It supports various artifact sources, including build artifacts and Azure Artifacts, integrating them seamlessly for better change velocity and release management.
Show less
Key Features
- Supported Artifact Types: Build artifacts published via Publish Build Artifacts and Publish Pipeline Artifacts tasks are automatically created in DevOps Change Velocity. Azure Artifacts published through the Universal Package task are also supported for import and tracking.
- Artifact Repository Management: Build artifacts are organized into repositories named after the build pipeline. Artifact repositories can be discovered and added using App Onboarding, with tracking enabled by setting the Track column to True.
- Historical and Real-Time Import: Historical data for build artifacts can be imported, while real-time tracking requires manual enabling. The system runs a daily scheduled job to associate Azure Artifacts with build pipelines, which can also be triggered on-demand but should be used sparingly due to performance considerations.
- Extension-Based Registration: Existing Extension-based artifact registration remains supported but is not required if using the PublishBuildArtifacts and PublishPipelineArtifacts tasks.
- Integration Support: Feed connection aliases are auto-populated in Azure DevOps Tools forms, facilitating easier integration and artifact repository management.
Practical Considerations and Limitations
- Artifacts cannot be published from Release Pipelines due to Azure DevOps limitations.
- Only project-specific feeds are supported; organization-wide feeds are not.
- Artifacts not linked to any build or release pipeline (orphan artifacts) are unsupported.
- Artifact naming follows a specific format linking artifacts to build or release pipelines with versioning based on build numbers.
- Performance limits include support for projects with up to 4000 feeds, feeds with up to 800 packages/artifacts, and pipelines publishing up to 200 packages/artifacts.
- If multiple artifact versions trigger a release pipeline, related work items, commits, and test summaries will include combined data for all versions involved.
Expected Outcomes for ServiceNow Customers
By leveraging DevOps Change Velocity's integration with Azure DevOps artifacts, customers can achieve streamlined artifact tracking and management, improved visibility into build and release artifacts, and enhanced traceability of changes across pipeline versions. This enables better control over release triggers, rollback scenarios, and artifact provenance, ultimately supporting more efficient DevOps workflows within the ServiceNow environment.
DevOps Change Velocity makes it easy to manage artifacts published through Azure DevOps build pipelines. You can import and track these artifacts and manage the packages in DevOps Change Velocity.
- Build
- Azure Artifacts
Build Artifacts
Build and pipeline artifacts published using the Publish Build Artifacts (PublishBuildArtifacts) and Publish Pipeline Artifacts (PublishPipelineArtifacts) tasks respectively on the Azure DevOps are automatically created in your DevOps Change Velocity instance. You can also import historical data for build artifacts.
Build artifacts created using the Publish Build Artifacts task will be part of the artifact repository whose name will be defaulted to the build pipeline name.
Azure Artifacts
You can import and track the artifacts to your DevOps Change Velocity instance. You can import Azure DevOps artifacts that are published to the Azure Artifacts using the Universal Package task only.
(DevOps 1.35 and later versions) The Feed connection alias field is available on the Azure DevOps Tools form. This field is auto-populated with an alias for the feed connection. For more information about connecting a DevOps tool, see Integrating DevOps Change Velocity with third party tools.
After upgrade, to select and add the artifact repositories using App Onboarding, you must select Discover to discover existing artifact repositories. The records are added to the Artifact Repositories related list. For more information about the adding artifact repositories, see Associate tool objects to applications - Workspace.
For tracking the artifact repositories, change the value of the Track
column to True (default value, False).
- As Azure DevOps Artifact creation is not dependent on Build Pipeline completion. If Azure DevOps Artifact is used as Trigger for a Release Pipeline, it would be triggered even if Build pipeline is pending completion due to a change request.
- The scheduled job is executed every 24 hours by default and can also be executed on-demand. However, as the scheduled job is performance intensive, it shouldn’t be executed frequently.
The following points must be considered while importing Azure DevOps artifacts:
- Artifacts can’t be published from the Release Pipelines due to Azure DevOps limitations.
- Artifact Repositories are tracked as follows:
- Historical Import of Azure DevOps artifacts is accomplished using the App Onboarding. For more information, see Associate tool objects to applications - Workspace.
- For real-time tracking of the artifacts, the value for the Track column must be changed to True (default value, False). Otherwise, the Feed or Artifact Repository won’t be tracked.
- The application supports the project-specific feeds but not the Organization specific feeds. Azure DevOps artifacts when published through Azure DevOps pipeline are only supported.
- Azure DevOps artifacts not linked to any build or release pipeline (orphan artifacts) aren’t supported.
- Azure DevOps Artifacts are stored in the following format:
- Azure DevOps artifact linked to only Build Pipeline (or) Build and Release
Pipeline:
<artifact-name>-<1.build-number.0> (Build Number of Build Pipeline)
- Azure DevOps artifact linked only to Release
Pipeline:
<artifact-name>-<1.build-number.0> (Build Number of Release Pipeline)
- Azure DevOps artifact linked to only Build Pipeline (or) Build and Release
Pipeline:
Azure DevOps Artifact mapping with DevOps Change Velocity
| Azure DevOps Artifact | DevOps Change Velocity |
|---|---|
| Feeds | Artifact Repositories |
| Packages | Artifacts |
| Provenance/build number | Versions |
Limitations
- Azure DevOps Artifact Project with 4000 Feeds (or less) is supported.
- Azure DevOps artifact Feed with 800 packages or artifacts (or less) is supported.
- Azure DevOps pipeline with 200 packages or artifacts (or less) publishing is supported.