Bi-directional traceability between Releases and Jira issues - Sprint 154 Update
In the Sprint 154 Update of Azure DevOps, we are releasing the Azure Pipelines for Jira app to the Atlassian marketplace. The integration adds links to Jira issues as work items deployed with the releases and allows you to view deployment details directly in Jira issues.
We also made improvements to make it easier for you to search and track work items. The search box now supports instant search for work items and list of recent work items. In addition, Wiki now lets you create live documents by allowing you to create and track work items using wiki content.
Check out the Features list below for more.
What’s new in Azure DevOps
Features
General:
Azure Boards:
- Work item live reload
- Manage iteration and area paths from the command line
- Work item parent column as column option
- Instant search for work items
- Search for a work item as you type
- Change the process used by a project
- Hide custom fields from layout
Azure Pipelines:
- Azure Pipelines app for Jira
- Improvements to the Azure Pipelines app for Slack
- Single hosted pool
- Updated Agent Pool interface in organization settings
- Control variables that can be overridden at queue time
- Support for large test attachments
- Deployments in YAML pipeline
- Optimizely integration
- Add a GitHub release as an artifact source
- Pay for additional pipelines from the Azure DevOps portal
- Approve releases directly from releases hub
- Azure Kubernetes Service Cluster link in Kubernetes environments resource view
- Release folder filters in notification subscriptions
- Deploy external Git repositories to Azure Kubernetes Services (AKS)
- Support for Bitbucket repositories in DevOps Projects
- Select a Dockerfile in deployment center for AKS and WebApp Containers
Azure Test Plans:
Azure Repos:
Azure Artifacts:
Wiki:
General
Azure DevOps CLI general availability
In February, we introduced the Azure DevOps extension for Azure CLI. The extension lets you interact with Azure DevOps from the command line. We've collected your feedback that helped us improve the extension and add more commands. We are now happy to announce that the extension is generally available.
To learn more about Azure DevOps CLI, see the documentation here.
Azure Boards
Work item live reload
Previously, when updating a work item, and a second team member was making changes to the same work item, the second user would lose their changes. Now, as long as you are both editing different fields, you will see live updates of the changes made to the work item.
Manage iteration and area paths from the command line
You can now manage iteration and area paths from the command line by using the az boards iteration
and az boards area
commands. For example, you can setup and manage iteration and area paths interactively from the CLI, or automate the entire setup using a script. For more details about the commands and the syntax, see the documentation here.
Work item parent column as column option
You now have the option to see the parent of every work item in your product backlog or sprint backlog. To enable this feature, go to Column Options on the desired backlog, then add the Parent column.
Instant search for work items
We've made it easy for you to find recently visited work items, boards, backlogs and sprints. You can now access recently visited work items by clicking on the search box in Azure Boards.
Tip
You can invoke the search box by typing the keyboard shortcut "/".
Search for a work item as you type
Now you can view the work item search results as you type in the search box. This will help you quickly navigate to the work item of your choice.
In addition, you can navigate to code and wiki search results without having to switch tabs by landing on work items search and then changing tabs to view code wiki or package search results.
Change the process used by a project
Your tools should change as your team does, you can now switch your projects from any out-of-the-box process template to any other out-of-the-box process. For example, you can change your project from using Agile to Scrum, or Basic to Agile. You can find full step-by-step documentation here.
Hide custom fields from layout
You can now hide custom fields from the form layout when customizing your process. The field will still be available from queries and REST APIs. This comes in handy for tracking extra fields when you are integrating with other systems.
Azure Pipelines
Azure Pipelines app for Jira
We are excited to announce the availability of the Azure Pipeline app for Jira. The integration enables bi-directional linking between releases in Azure Pipelines and issues in Jira software cloud. It simplifies the generation of release notes by tracking Jira issues mentioned in GitHub commits deployed with releases.
In addition, it displays build and release information from Azure Pipelines and shows it in the development panel of the issues. This enabled tracking of how and when an issue is delivered, and provides a tight development cycle from issue creation to deployments tracked in Jira.
Improvements to the Azure Pipelines app for Slack
In February, we released the Azure Pipelines app for Slack to help you monitor your pipelines. With this update, we enhanced the app. Will use @mention in the Slack channel when there is a notification for a failed build that you triggered. In addition, it will notify you when you are an approver on a release deployment approval pending notification.
In addition, you can now paste a link to a build or release in the Azure Pipelines app and get a rich preview of the pipeline. This adds context to the link and makes it easier to navigate to Azure DevOps.
For example, pasting a link to a build shows the details of the build and the current status.
For more details about this update, see the blog post with the full announcement here.
Single hosted pool
Note
This is an upcoming change that we wish to communicate in advance.
Having multiple hosted pools can be confusing at times. You do not get an accurate picture of where concurrency is being consumed. For example, if you have a concurrency of 10 parallel jobs, you see 10 virtual agents in each of the hosted pools, which is not accurate. When your job is waiting on a specific hosted pool (e.g. Hosted VS2017) with all idle agents, you may think that Azure Pipelines service is broken without realizing that the concurrency is possibly consumed in other hosted pools (e.g. Hosted Ubuntu 1604).
We will update our agent pool management experiences to include a new unified hosted agent pool called Azure Pipelines. This will soon replace the other hosted pools that you have - Hosted, Hosted VS2017, Hosted Ubuntu 1604, Hosted Windows 2019 with VS2019, Hosted macOS, and Hosted macOS High Sierra.
Once this feature is deployed, you will see a single hosted pool that will give you an accurate picture of how many jobs are running in that pool. We plan to roll out this change over the next few sprints. You will not have to make any changes to your pipelines since we will automatically redirect jobs from the old hosted pools to the appropriate image in the new unified pool.
Updated Agent Pool interface in organization settings
Previously, we changed the agent pools management page in project settings to include a new user interface. With this update, we are updating the agent pools interface under the organization settings. This new interface will help with an upcoming feature that will include consolidation for hosted pools and the ability to track the consumption of concurrent jobs.
For more details about the upcoming feature see the release note on single hosted pool.
Control variables that can be overridden at queue time
Currently, you can use the UI or REST API to update the values of any variable prior to starting a new run. While the pipeline's author can mark certain variables as _settable at queue time_
, the system didn't enforce this, nor prevented other variables from being set. In other words, the setting was only used to prompt for additional inputs when starting a new run.
We've added a new organization setting that enforces the _settable at queue time_
parameter. This will give you control over which variables can be changed when starting a new run. Going forward, you can't change a variable that is not marked by the author as _settable at queue time_
.
Note
This setting is off by default in existing organizations, but it will be on by default when you create a new Azure DevOps organization.
Support for large test attachments
The publish test results task in Azure Pipelines lets you publish test results when tests are executed to provide a comprehensive test reporting and analytics experience. Until now, there was a limit of 100MB for test attachments for both test run and test results. This limited the upload of big files like crash dumps or videos. With this update, we added support for large test attachments allowing you to have all available data to troubleshoot your failed tests.
Deployments in YAML pipeline
A deployment job is a special type of job that is used to deploy your app to an environment. With this update, we have added support for step references in a deployment job. For example, you can define a set of steps in one file and refer to it in a deployment job.
We have also added support for additional properties to the deployment job. For example, here are few properties of a deployment job that you can now set,
- timeoutInMinutes - how long to run the job before automatically cancelling
- cancelTimeoutInMinutes - how much time to give 'run always even if cancelled tasks' before terminating them
- condition - run job conditionally
- variables - Hardcoded values can be added directly, or variable groups , variable group backed by an Azure key vault can be referenced or you can refer to a set of variables defined in a file.
- continueOnError - if future jobs should run even if this deployment job fails; defaults to 'false'
For more details about deployment jobs and the full syntax to specify a deployment job, see Deployment job.
Optimizely integration
Optimizely is a powerful A/B testing and feature flagging platform for product teams. Integration of Azure Pipelines with Optimizely experimentation platform empowers product teams to test, learn and deploy at an accelerated pace, while gaining all DevOps benefits from Azure Pipelines.
The Optimizely extension for Azure DevOps adds experimentation and feature flag rollout steps to the build and release pipelines, so you can continuously iterate, roll features out, and roll them back using Azure Pipelines.
Learn more about the Azure DevOps Optimizely extension here.
Add a GitHub release as an artifact source
Now you can link your GitHub releases as artifact source in Azure DevOps release pipelines. This will let you consume the GitHub release as part of your deployments.
When you click Add an artifact in the release pipeline definition, you will find the new GitHub Release source type. You can provide the service connection and the GitHub repo to consume the GitHub release. You can also choose a default version for the GitHub release to consume as latest, specific tag version or select at release creation time. Once a GitHub release is linked, it is automatically downloaded and made available in your release jobs.
Pay for additional pipelines from the Azure DevOps portal
Previously, you had to go to the Marketplace to pay for additional pipelines. Now you can buy additional pipelines from the Azure DevOps portal. You can increase or decrease the count of Microsoft-hosted or self-hosted CI/CD from Organization Settings > Billing.
To learn more visit the documentation about buying CI/CD here.
Approve releases directly from Releases hub
Acting to pending approvals made easier. So far, it was possible to approve a release from the details page of the release. We now make it possible for you to approve releases directly from the Releases hub.
Azure Kubernetes Service Cluster link in Kubernetes environments resource view
We added a link to the resource view of Kubernetes environments so you can navigate to the Azure blade for the corresponding cluster. This applies to environments that are mapped to namespaces in Azure Kubernetes Service clusters.
Release folder filters in notification subscriptions
Folders allow organizing pipelines for easier discoverability and security control. Often you may want to configure custom email notifications for all release pipelines, that are represented by all pipelines under a folder. Previously, you had to configure multiple subscriptions or have complex query in the subscriptions to get focused emails. With this update, you can now add a release folder clause to the deployment completed and approval pending events and simplify the subscriptions.
Deploy external Git repositories to Azure Kubernetes Services (AKS)
Previously, we supported Azure Repos and GitHub as code locations in the AKS deployment center. With this update, we are adding support for External Git repos so you can deploy your code from any public or private Git repository to AKS.
Support for Bitbucket repositories in DevOps Projects
We've added support for Bitbucket repositories to DevOps Projects. Now you can get OAuth experience and a populated list of repositories and branches to select from when deploying to Azure resources.
Select a Dockerfile in deployment center for AKS and WebApp Containers
You can now select a Dockerfile in the deployment center for AKS and WebApp Containers. This will be helpful when you want to maintain different versions of Dockerfile or have multiple application in the same repo. With this you will be able to select the specific DockerFile/application you want to push.
Azure Test Plans
New Test Plan page public preview
A new Test Plans Page (Test Plans*) is available in public preview to all Azure DevOps organizations. The new page provides streamlined views to help you focus on the task at hand - test planning, authoring or execution. It is also clutter-free and consistent with the rest of the Azure DevOps offering.
The new page can enable from Preview Features as shown below.
The Test Plans* page will have most of the capabilities from the existing page in addition to new features such as copy and clone test plans. We will continue to add test planning and authoring capabilities every 3 weeks.
To learn more about the new page see the documentation here.
Azure Repos
Auditing for Azure Repos events
We've added events for Repos that can be consumed through the Azure DevOps auditing tab in the organization settings. You can now view events for policies when they are created, removed, modified, or bypassed. In addition, you can view events for repositories when they are created (including via fork or undelete), renamed, soft-deleted, destroyed, or when the default branch changed.
Azure Artifacts
Improvements to feed page load time
We are excited to announce that we have improved the feed page load time. On average, feed page load times have decreased by 10%. The largest feeds have seen the most improvement the 99th percentile feed page load time (load times in the highest 99% of all feeds) decreased by 75%.
Wiki
Rich editing for code wiki pages
Previously, when editing a code wiki page, you were redirected to the Azure Repos hub for editing. Currently, the Repo hub is not optimized for markdown editing.
Now you can edit a code wiki page in the side-by-side editor inside wiki. This lets you use the rich Markdown toolbar to create your content making the editing experience identical to the one in project wiki. You can still choose to edit in repos by selecting the Edit in Repos option in the context menu.
Create and embed work items from a wiki page
As we listened to your feedback, we heard that you use wiki to capture brainstorming documents, planning documents, ideas on features, spec documents, minutes of meeting. Now you can easily create features and user stories directly from a planning document without leaving the wiki page.
To create a work item select the text in the wiki page where you want to embed the work item and select New work item. This saves you time since you don't have to create the work item first, go to edit and then find the work item to embed it. It also reduces context switch as you don’t go out of the wiki scope.
To learn more about creating and embedding a work item from wiki, see our documentation here.
Next steps
Note
These features will roll out over the next two to three weeks.
Head over to Azure DevOps and take a look.
How to provide feedback
We would love to hear what you think about these features. Use the feedback menu to report a problem or provide a suggestion.
You can also get advice and your questions answered by the community on Stack Overflow.
Thanks,
Biju Venugopal