Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Zen of Package Management

Similar presentations


Presentation on theme: "The Zen of Package Management"— Presentation transcript:

1 The Zen of Package Management
Microsoft Ignite 2016 5/9/ :13 AM The Zen of Package Management NET324 Anthony Borton © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

2 Who am I? Anthony Borton VSTS/TFS/DevOps trainer and consultant
Microsoft Ignite 2016 5/9/ :13 AM Who am I? Anthony Borton VSTS/TFS/DevOps trainer and consultant @AnthonyBorton Microsoft Visual Studio and Development Technologies MVP Microsoft Certified Professional since 1993 Microsoft Certified Trainer since 1996 © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

3 With success comes pain
Microsoft Ignite 2016 5/9/ :13 AM With success comes pain Our small team grows into multiple teams Our codebase is growing Our teams start stepping on each others work We need to look into componentisation Our teams need an effective way to share reusable components © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

4 Package componentisation
Packages address many of the challenges of referencing binaries. Instead of checking them into source, you can have a solution B produce its binaries into NuGet packages that another solution A can then consume.

5 Building a culture of code sharing
Microsoft Ignite 2016 5/9/ :13 AM Building a culture of code sharing How it used to be How it can be Team A One team writes; others re-use and improve it Team B Team C Team A Team B Duplicate, wasted effort Team C Each team writes the common component that they need © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

6 Package Management 5/9/2018 11:13 AM
© 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

7 Introducing Package Management
Microsoft Ignite 2016 5/9/ :13 AM Introducing Package Management Package Management is an extension that makes it easy to discover, install, and publish packages It offers deep integration into TFS and VSTS TFS 2015 Not supported TFS 2017 Built-in VSTS Marketplace extension © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

8 Support for different package types?
Visual Studio 11 5/9/2018 Support for different package types? Microsoft Package Management initially supported only NuGet packages but since its release other package types are being added. Package type Components Package Management Support NuGet .Net Assemblies Supported npm Nodejs packages Maven POM and JAR files Planned for 2017 Q1 in VSTS Bower Web front-end (Eg. HTML,CSS, Javascript) Not currently supported Cocoapods Swift and Objective-C Cocoa projects Conda Conda packages used in Python © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

9 Enhancements for NuGet feeds
Manage the full lifecycle of your packages with support for unlist and delete. Acquire package straight from the web using the Download button These are also available through the REST API

10 Demo Adding Package Management to our VSTS account Anthony Borton
Microsoft Ignite 2016 5/9/ :13 AM Demo Adding Package Management to our VSTS account Anthony Borton © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

11 What are feeds? Feeds provide a way for you to organise your packages in a logical and convenient way for developers to find Feeds allow you to define secure access for readers, contributors and owners in the same way you are now Feeds are the point of connection for users of your packages.

12 Microsoft Ignite 2016 5/9/ :13 AM Creating a new feed Create a new feed by providing the following details. © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

13 Feed level permissions
Visual Studio 11 5/9/2018 Feed level permissions Feeds have three levels of access: Owners, Contributors, and Readers. By default, the Project Collection Build Service is a Contributor and your project team is a Reader Permission Reader Contributor Owner List and restore/install packages Push packages Unlist packages Delete packages Edit feed permissions Rename and delete feed © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

14 How to edit feed permissions
Visual Studio 11 5/9/2018 How to edit feed permissions To view or modify permissions for a feed, open the Packages hub, select the feed you want to view, then click the edit icon or you can choose edit in the context menu. © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

15 Demo Creating a new feed Anthony Borton Microsoft Ignite 2016
5/9/ :13 AM Demo Creating a new feed Anthony Borton © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

16 Publishing packages using a CI/CD pipeline
We want to be able to streamline the packaging and publishing of our components. TFS and VSTS both provide helpful steps to make this quick and painless.

17 Demo Creating a CI/CD Pipeline for our packages Anthony Borton
Microsoft Ignite 2016 5/9/ :13 AM Demo Creating a CI/CD Pipeline for our packages Anthony Borton © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

18 Consuming our packages
Microsoft Ignite 2016 5/9/ :13 AM Consuming our packages Once our feeds are created and our packages have been uploaded, we’re ready to consume them in our projects. © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

19 Microsoft Ignite 2016 5/9/ :13 AM Release views Release views enable you to communicate the quality of a package-version after that package-version has been tested and/or validated. © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

20 Microsoft Ignite 2016 5/9/ :13 AM Release views Release views filter the feed to a subset of the feed's package-versions that have been promoted into that view. By default, every feed has two release views: Prerelease and Release. © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

21 Demo Consuming packages from our feed Anthony Borton
Microsoft Ignite 2016 5/9/ :13 AM Demo Consuming packages from our feed Anthony Borton © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

22 Not just NuGet packages
Microsoft Ignite 2016 5/9/ :13 AM Not just NuGet packages Are you an ASP.NET developer? How about NodeJS or React? You’ll be pleased to know that Package Management supports npm feeds! The npm client is designed to talk to a single npm registry. Package Management supports npmjs.com as an upstream source allowing you to host private packages while still consuming public ones. © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

23 Demo Package Management for npm Anthony Borton Microsoft Ignite 2016
5/9/ :13 AM Demo Package Management for npm Anthony Borton © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

24 In conclusion Package Management is available today in VSTS and TFS 2017. It allows you to manage the full lifecycle of your packages. While NuGet and npm are supported today, keep an eye out for support coming for other package types.

25 Continue your Ignite learning path
5/9/ :13 AM Continue your Ignite learning path Visit Channel 9 to access a wide range of Microsoft training and event recordings Head to the TechNet Eval Centre to download trials of the latest Microsoft products Visit Microsoft Virtual Academy for free online training visit © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

26 Win a Spark After Dark drone pilot pass by completing your session evaluation ASAP  #MSAUIGNITE

27 5/9/ :13 AM Thank you Chat with me in the Speaker Lounge Find or © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "The Zen of Package Management"

Similar presentations


Ads by Google