Enhancements to Azure Boards - Sprint 156 Update
In the Sprint 156 Update of Azure DevOps, we continue to improve Azure Boards to include items that can help enhance the user's experience. For instance, you can now customize system picklist values such as Severity, Activity and Priority. In addition, we added rule support for setting fields to read-only or required based on group membership. Finally, we created a new extension to allow you to create cascading picklists on your work item form.
Check out the Features list below for more.
What’s new in Azure DevOps
- Read-only and required rules for group membership
- Customize system picklist values
- New work item URL parameter
- Mention people, work items and PRs in text fields
- Reactions on discussion comments
- Pin Azure Boards reports to the dashboard
- Configure upstreams in different organizations within an AAD tenant
- Use Python Credential Provider to authenticate pip and twine with Azure Artifacts feeds
- Support for Bitbucket repositories in Deployment Center for AKS and Web App for containers
- Linux Web App support for Java workflows in Azure DevOps Projects
Azure command-line interface
- Pipeline variable group and variable management commands
- Run pipeline for a PR branch
- Skip the first pipeline run
- Service endpoint command enhancement
Azure Test Plans:
New UI to request access to an organization
You can now request access to an organization with the new request access UI. If you belong to the same tenant as the Azure DevOps organization that you need access to, the new request access UI will let you notify the administrators of the organization with a justification for why you need access. The administrator(s) will receive an email notification from Azure DevOps with the details of the request. Details will include: email ID of the requestor, target organization name and justification.
Read-only and required rules for group membership
Work item rules let you set specific actions on work item fields to automate their behavior. You can create a rule to set a field to read-only or required based on group membership. For example, you may want to grant product owners the ability to set the priority of your features while making it read-only for everyone else.
Customize system picklist values
You can now customize the values for any system picklist (except the reason field) such as Severity, Activity, Priority, etc. The picklist customizations are scoped so that you can manage different values for the same field for each work item type.
New work item URL parameter
Share links to work items with the context of your board or backlog with our new work item URL parameter. You can now open a work item dialog on your board, backlog, or sprint experience by appending the parameter
?workitem=[ID] to the URL.
Anyone you share the link with will then land with the same context you had when you shared the link!
Mention people, work items and PRs in text fields
As we listened to your feedback, we heard that you wanted the ability to mention people, work items, and PRs in the work item description area (and other HTML fields) on the work item and not just in comments. Sometimes you are collaborating with someone on a work item, or want to highlight a PR in your work item description, but didn't have a way to add that information. Now you can mention people, work items, and PRs in all long text fields on the work item.
You can see an example here.
- To use people mentions, type the @ sign and the person's name you want to mention. @mentions in work item fields will generate email notifications like what it does for comments.
- To use work item mentions, type the # sign followed by the work item ID or title. #mentions will create a link between the two work items.
- To use PR mentions, add a ! followed by your PR ID or name.
Reactions on discussion comments
One of our main goals is to make the work items more collaborative for teams. Recently we conducted a poll on Twitter to find out what collaboration features you want in discussions on the work item. Bringing reactions to comments won the poll, so we add them! Here are the results of the Twitter poll.
You can add reactions to any comment, and there are two ways to add your reactions – the smiley icon at the top right corner of any comment, as well as at the bottom of a comment next to any existing reactions. You can add all six reactions if you like, or just one or two. To remove your reaction, click on the reaction on the bottom of your comment and it will be removed. Below you can see the experience of adding a reaction, as well as what the reactions look like on a comment.
Pin Azure Boards reports to the dashboard
In the Sprint 155 Update, we included updated versions of the CFD and Velocity reports. These reports are available under the Analytics tab of Boards and Backlogs. Now you can pin the reports directly to your Dashboard. To pin the reports, hover over the report, select the ellipsis "..." menu, and Copy to Dashboard.
Azure Repos app for Slack
We are excited to announce the new Azure Repos app for Slack. With this app, you can monitor your repositories and get notified whenever code is pushed/checked in, pull requests (PR) are created, PRs are updated and much more in your Slack channel. In addition, previews for pull request URLs will help you to initiate discussions around PRs and have contextual and meaningful conversations. The app supports both Git and TFVC repositories.
Configure upstreams in different organizations within an AAD tenant
You can now add a feed in another organization associated with your Azure Active Directory (AAD) tenant as an upstream source to your Artifacts feed. Your feed can find and use packages from the feeds that are configured as upstream sources, allowing packages to be shared easily across organizations associated with your AAD tenant. See how to set this up in the docs.
Use the Python Credential Provider (preview) to authenticate pip and twine with Azure Artifacts feeds
You can now install and use the Python Credential Provider (artifacts-keyring) (currently in preview) to automatically set up authentication to publish or consume Python packages to or from an Azure Artifacts feed. With the credential provider, you don't have to set up any configuration files (pip.ini/pip.conf/.pypirc), you will simply be taken through an authentication flow in your web browser when calling pip or twine for the first time. See more information in the documentation.
Pipelines caching improvements
In the Sprint 155 Update, we announced the public preview of pipeline caching, a feature designed to reduce build time by allowing files, like downloaded dependencies and compilation outputs, to be reused by later run. In this update we added support for including multiple files in the cache key using glob patterns. For example:
steps: - task: CacheBeta@0 inputs: key: packages/**/package-lock.json, !node_modules/** | $(Agent.OS) path: $(npm_config_cache)
Parts of the key need to be separated with a "|" character (as shown above). This change is being made in anticipation of the upcoming ability to specify alternate restore keys.
To get started, see the pipeline caching documentation.
Increase in gates timeout limit and frequency
Previously, the gate timeout limit in release pipelines was three days. With this update, the timeout limit has been increased to 15 days to allow gates with longer durations. We also increased the frequency of the gate to 30 minutes.
New build image template for Dockerfile
Previously, when creating a new pipeline for a Dockerfile in new pipeline creation, the template recommended pushing the image to an Azure Container Registry and deploying to an Azure Kubernetes Service. We added a new template to let you build an image using the agent without the need to push to a container registry.
Arguments input in Docker Compose task
A new field has been introduced in the Docker Compose task to let you add arguments such as
--no-cache. The argument will be passed down by the task when running commands such as build.
Fix warning in large test attachments
Last month, we added support for test attachments bigger than 100MB. Currently, you might see VSTest task or Publish test results task returning a 403 or 407 error in the logs. If you are using self-hosted builds or release agents behind a firewall which filters outbound requests, you will need to make some configuration changes to be able to use this functionality.
In order to fix this issue, we recommend that you update the firewall for outbound requests to
https://*.vstmrblob.vsassets.io. You can find troubleshooting information in the documentation here.
This is only required if you're using self-hosted Azure Pipelines agents and you're behind a firewall that is filtering outbound traffic. If you are using Microsoft-hosted agents in the cloud or that aren't filtering outbound network traffic, you don't need to take any action.
Updates to hosted pipelines images
We've made updates to several of the Azure Pipelines hosted VM images. Highlights include:
- Added ATL for ARM and ARM64 with and without Spectre mitigations to VS 2017 (already present in VS 2019).
- Updated patch versions of Java and Go for Ubuntu 16.04, VS 2017, and VS 2019.
- Increased the limit for open files to 50,000 on Ubuntu 16.04.
- Various bug fixes.
You can find more details about the latest releases here.
For a full list of tools available for a particular image, go to Settings > Agent pools > Details.
Support for Bitbucket repositories in Deployment Center for AKS and Web App for containers
With this update, we added native support for Bitbucket repositories to our Deployment Center workflows for AKS and Web App for containers. Now you can get OAuth experience and a populated list of repositories and branches of your Bitbucket account. This will help you deploy to your respective resources. In addition, we added an assisted experience by analyzing the Bitbucket repository selected and detecting the DockerFile.
Linux Web App support for Java workflows in Azure DevOps Projects
Now you can create a Linux Web App and deploy a sample Java application with a few clicks in Azure DevOps Projects. We will host the sample Java application in Azure Repos and will setup a CI/CD pipeline for it.
Pipeline variable group and variable management commands
It can be challenging to port YAML based pipelines from one project to another as you need to manually set up the pipeline variables and variable groups. However, with the pipeline variable group and variable management commands, you can now script the set up and management of pipeline variables and variable groups which can in turn be version controlled, allowing you to easily share the instructions to move and set up pipelines from one project to another.
Run pipeline for a PR branch
When creating a PR, it can be challenging to validate if the changes might break the pipeline run on the target branch. However, with the capability to trigger a pipeline run or queue a build for a PR branch, you can now validate and visualize the changes going in by running it against the target pipeline. Refer az pipelines run and az pipelines build queue command documentation for more information.
Skip the first pipeline run
When creating pipelines, sometimes you want to create and commit a YAML file and not trigger the pipeline run as it may result in a faulty run due to a variety of reasons - such as the infrastructure is being not ready or needing to create variables for example. With Azure DevOps CLI, you can now to skip the first automated pipeline run on creating a pipeline by including the --skip-first-run parameter. Refer az pipeline create command documentation for more information.
Service endpoint command enhancement
Service endpoint CLI commands supported only azure rm and github service endpoint set up and management. However, with this release, service endpoint commands allow you to create any service endpoint by providing the configuration via file and provides optimized commands - az devops service-endpoint github and az devops service-endpoint azurerm, which provide first class support to create service endpoints of these types. Refer the command documentation for more information.
Azure Test Plans
Test Plans Progress report (public preview)
Progress report for Test Plans is now available in public preview. This out-of-the-box report helps you track the execution and status of one or more Test Plans in a project. Visit Test Plans > Progress report* to start using the report.
The three sections of the report include the following:
- Summary: shows a consolidated view for the selected test plans.
- Outcome trend: renders a daily snapshot to give you an execution and status trendline. It can show data for 14 days (default), 30 days, or a custom range.
- Details: this section lets you drill down by each test plan and gives you important analytics for each test suite.
Enhancements to Test Plans page
You can now add test cases in bulk using the new Test Plans* page grid. The grid has six columns for bulk authoring in contrast to the three columns in the previous view. You can start using grid by navigating to Test Plans* > Add Test Cases > Add Test Cases Using Grid.
In addition, we added Chart to the Test Plans* page. You can find the Chart tab by navigating to Test Plans > Chart*.
Finally, you can now sort the columns in the Define and Execute tabs. You can also adjust the width of the columns to see large titles and run test cases with options from the Execute tab.
Improvement to the Query Results widget
The query results widget is one of our most popular widgets, and for good reason. The widget displays the results of a query directly on your dashboard and is useful in many situations.
With this update we included many long-awaited improvements:
- You can now select as many columns as you want to display in the widget. No more 5-column limit!
- The widget supports all sizes, from 1x1 to 10x10.
- When you resize a column, the column width will be saved.
- You can expand the widget to full screen view. When expanded, it will display all the columns returned by the query.
Comments in wiki pages
Previously, you didn't have a way to interact with other wiki users inside the wiki. This made collaborating on content and getting questions answered a challenge since conversations had to happen over mail or chat channels. With comments, you can now collaborate with others directly within the wiki. You can leverage the @mention users functionality inside comments to draw the attention of other team members. This feature was prioritized based on this suggestion ticket. For more on comments, please see our documentation here.
Hide folders and files starting with “.” in wiki tree
Until now, the wiki tree showed all the folders and files starting with a dot (.) in the wiki tree. In code wiki scenarios, this caused folders like .vscode, which are meant to be hidden, to show up in the wiki tree. Now, all the files and folders starting with a dot will remain hidden in the wiki tree hence reducing unnecessary clutter.
This feature was prioritized based on this suggestion ticket.
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.