Category Archives : DevOps

21

Sep

Deep dive into Azure Artifacts
Deep dive into Azure Artifacts

Azure Artifacts manages the dependencies used in your codebase and provides easy tools to ensure the immutability and performance of those components. Released as one of the new services available for developers in Azure DevOps, the current features in Artifacts will help you and your users produce and consume artifacts. For teams that use or produces binary packages, Azure Artifacts provides a secure, highly performant store and easy feed.

Getting started with Artifacts: Package feeds

Azure Artifacts groups packages in to feeds, which are containers for packages that help you consume and publish.

We’ve optimized default settings to be most useful to feed users, such as making your feed account visible to easily share a single source of packages across your entire team. However, if you’d like to customize your settings, simply access the settings tab to refresh your preferences.

New feature: Universal Packages

Azure Artifacts is a universal store for all the artifacts you use as part of development and deployment. In addition to NuGet, npm, and Maven packages, feeds now support Universal Packages, which can store any file or set of files. You create and consume Universal Packages via the Visual Studio Team Services (VSTS) CLI. Consider

20

Sep

Getting AI/ML and DevOps working better together
Getting AI/ML and DevOps working better together

Artificial Intelligence (AI) and machine learning (ML) technologies extend the capabilities of software applications that are now found throughout our daily life: digital assistants, facial recognition, photo captioning, banking services, and product recommendations. The difficult part about integrating AI or ML into an application is not the technology, or the math, or the science or the algorithms. The challenge is getting the model deployed into a production environment and keeping it operational and supportable. Software development teams know how to deliver business applications and cloud services. AI/ML teams know how to develop models that can transform a business. But when it comes to putting the two together to implement an application pipeline specific to AI/ML — to automate it and wrap it around good deployment practices — the process needs some effort to be successful.

The need for aligned development approaches

DevOps has become the de-facto development standard for cloud services. It places an emphasis on process, automation, and fosters a culture that encourages new ways of working together across teams. DevOps is an application-centric paradigm that focuses on the platform, instrumentation, and process to support applications: what is the infrastructure needed to support the application? What tools can

19

Sep

Deep dive into Azure Test Plans
Deep dive into Azure Test Plans

Azure Test Plans, a service launched with Azure DevOps earlier this month, provides a browser-based test management solution for exploratory, planned manual, and user acceptance testing. Azure Test Plans also provides a browser extension for exploratory testing and gathering feedback from stakeholders.

Manual and exploratory testing continue to be important techniques for evaluating quality of a product/service, alongside the DevOps emphasis on automated testing. In modern software development processes, everybody in the team contributes to or owns quality – including developers, testers, managers, product owners, user experience advocates, and more. Azure Test Plans addresses all these needs. Let’s take a closer look.

Note: For automated testing as part of your CI/CD workflow, consider leveraging Azure Pipelines. It provides mechanisms for continuous build, test, and deployment to any platform and cloud.

Testing is integral to DevOps and Agile teams

A common practice is to base tests on user stories, features, or scenarios that are managed on a Kanban board as in Azure Boards. With Azure Test Plans, a team can leverage manual testing right from within their Kanban board. This provides end-to-end traceability because tests and defects are automatically linked to the requirements and builds being tested, which also helps you

17

Sep

Jenkins Azure ACR Build plugin now in public preview
Jenkins Azure ACR Build plugin now in public preview

Last year at Jenkins World, we announced Jenkins on Azure support for Kubernetes. We shipped the Azure Container Agent which allows you to scale out to Azure and run a Jenkins Agent on Azure Container Instances (ACI) and/or Azure Kubernetes Service (AKS). Using the Kubernetes Continuous Deploy or Deploy to Azure Container Services (AKS) plugins, you can deploy containers to Kubernetes.

Back in April, we published a blog post in Kubernetes.io sharing with the community how to achieve Blue/Green deployment to Azure Container Services (AKS). Some questions remained to be answered though:

What if I need to build a Docker image when I use ACI as my Jenkins build agent? If I run Docker Build on AKS, is it secured?

Earlier this year, the Azure Container Registry team released a preview of a native container build capability called Azure Container Registry (ACR) Build, which solves just these problems. One of the best things about ACR build is you only pay for the compute you use to build your images.

Build from local directory

Let’s say you have an existing pipeline that uses Maven to build your Java project and then deploys to AKS:

node { /* … snip… */

17

Sep

Deep dive into Azure Repos
Deep dive into Azure Repos

With the introduction of Azure DevOps, we’re offering developers a new Git service called Azure Repos. It has unlimited free private repositories with collaborative code reviews, advanced file management, code search, and branch policies to ensure high quality code. Azure Repos is great for small projects as well as large organizations that need native AAD support and advanced policies.

Collaborative code reviews with pull requests

Code reviews are one of the best ways to improve the overall quality of your code base and increase shared knowledge across your team. Discussions are the heart of the pull request experience. You can leave comments right in the code and give it some flare with markdown and emoji.

Use the Files pivot to see the entire file, not just the code that’s changed, or collapse all comments so you can focus on the code changes.

Ensure code quality with branch policies

Branch policies help teams adhere to the best practices of your choice. There are many built-in policies, such as minimum number of code reviews, requiring successful builds, and enforcing Git merge strategies.

To keep you productive, set your pull requests to auto-complete. That will automatically complete your pull requests when

13

Sep

Deep dive into Azure Boards
Deep dive into Azure Boards

Azure Boards is a service for managing the work for your software projects. Teams need tools that flex and grow. Azure Boards does just that, brining you a rich set of capabilities including native support for Scrum and Kanban, customizable dashboards, and integrated reporting.

In this post I’ll walk through a few core features in Azure Boards and give some insight in to how you can make them work for your teams and projects.

Work items

All work in Azure Boards is tracked through an artifact called a work item. Work items are where you and your team describe the details of what’s needed. Each work item uses a state model to track and communicate progress. For example, a common state model might be: New > Active > Closed. As work progresses, items are updated accordingly, allowing everyone who works on the project to have a complete picture of where things are at. Below is a picture of the work items hub in Azure Boards. This page is the home for all work items and provides quick filters to allow you to find the items you need.

Opening a work item brings you to a much richer view,

10

Sep

Introducing Azure DevOps
Introducing Azure DevOps

Today we are announcing Azure DevOps. Working with our customers and developers around the world, it’s clear DevOps has become increasingly critical to a team’s success. Azure DevOps captures over 15 years of investment and learnings in providing tools to support software development teams. In the last month, over 80,000 internal Microsoft users and thousands of our customers, in teams both small and large, used these services to ship products to you.

The services we are announcing today span the breadth of the development lifecycle to help developers ship software faster and with higher quality. They represent the most complete offering in the public cloud. Azure DevOps includes:

Azure Pipelines

CI/CD that works with any language, platform, and cloud. Connect to GitHub or any Git repository and deploy continuously. Learn More >

Azure Boards

Powerful work tracking with Kanban boards, backlogs, team dashboards, and custom reporting. Learn more >

Azure Artifacts

Maven, npm, and NuGet package feeds from public and private sources. Learn more >

Azure Repos

Unlimited cloud-hosted private Git repos for your project. Collaborative pull requests, advanced file management, and more. Learn more >

Azure Test Plans

All in one planned and exploratory testing solution. Learn more >

10

Sep

Announcing Azure Pipelines with unlimited CI/CD minutes for open source

With the introduction of Azure DevOps today, we’re offering developers a new CI/CD service called Azure Pipelines that enables you to continuously build, test, and deploy to any platform or cloud. It has cloud-hosted agents for Linux, macOS, and Windows, powerful workflows with native container support, and flexible deployments to Kubernetes, VMs, and serverless environments.

Microsoft is committed to fueling open source software development. Our next step in this journey is to provide the best CI/CD experience for open source projects. Starting today, Azure Pipelines provides unlimited CI/CD minutes and 10 parallel jobs to every open source project for free. All open source projects run on the same infrastructure that our paying customers use. That means you’ll have the same fast performance and high quality of service. Many of the top open source projects are already using Azure Pipelines for CI/CD, such as Atom, Cpython, Pipenv, Tox, Visual Studio Code, and TypeScript – and the list is growing every day.

In the following, you can see Atom running parallel jobs on Linux, macOS, and Windows for its CI.

Azure Pipelines app on GitHub Marketplace

Azure Pipelines has an app in the GitHub Marketplace so it’s easy to get started.