locked
[VSTS] Handling dependencies on VSTS builds RRS feed

  • Question

  • Hey,

    I'm thinking of moving from own hosted TFS/build agents to cloud based VSTS services. While setting up some test build scripts I came across some questions.

    Given that i have a project dependency in B to a project A. How would I share the build artifacts from A with B ? In my local environment every project copies their artifacts to a global storage. Any other project have a dependency downloads them from there That ensures that everything is always on latest. How does file download as a build step work in VSTS ? I saw shell tasks (which i could use for that) but only Azure upload/deploy tasks. 

    How you usually handle version updates ? At the moment I have custom tools that retrieve new version numbers from [somewhere] and updates the infos. Is there a best practice for that in the cloud environment ?

    Thanks,
    Oliver


    • Edited by oliver_zx Wednesday, February 15, 2017 10:34 AM
    • Moved by Limitxiao Gao Thursday, February 16, 2017 5:09 AM Related to VSTS
    Wednesday, February 15, 2017 9:30 AM

Answers

All replies

  • Hi oliver_zx,

    Thank you for posting here.

    This forum is discussing Team Foundation Server. Your issue is related to Visual Studio Team Service. I will move this thread to corresponding forum.

    Best Regards

    Limitxiao Gao


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Thursday, February 16, 2017 5:08 AM
    • You cannot refer the output of build in one team project with another build in team project.
    • As mentioned in description, you copy the artifacts to global storage, you can use copy task for copying to output to some other location and use that as a reference.
    • You can use NuGet task as well for this I believe.

    • Edited by Nayana A S Sunday, February 19, 2017 8:37 AM
    • Proposed as answer by Nayana A S Sunday, February 19, 2017 3:34 PM
    Sunday, February 19, 2017 8:36 AM
  • Thanks for moving. And thanks Nayana for answering. 

    Would you also happen to have an answer for the second question about the versioning ?

    Thank you,
    Oliver

    Wednesday, February 22, 2017 9:40 AM
  • Could you explain what exactly you are trying to do with Versioning? Explain the scenario bit more.

    Thursday, February 23, 2017 9:51 AM
  • Hey Nayana,

    sure. So what we have in our own TFS environment is that every assembly gets a unique build numberof each TFS build. We do that by having a custom tool that is executed in the pre build script and which gets & increments the latest patch build number from a global net share. It also gets the static (manually incremented) major and minir build numbers from that share. We do that for each project & branch. So each project and branch has its own set ov version numbers.

    By doing that we're able validate MSI packages for proper assemblies (latest versions) etc.

    So I'd like to have that on VSTS as well. Now without the global net share we could use FTP/Webservices or whatever.  So we would get it working with the tools at hand. I ws just curious how people usually deal with versioning on VSTS or if there is a best practice.

    Thank you,
    Oliver

    Wednesday, March 8, 2017 7:55 AM
  • Below are some references related to versioning:

    https://blogs.technet.microsoft.com/meamcs/2015/09/29/vso-build-vnext-versioning-assemblies-with-msbuild/

    https://intovsts.net/2015/08/24/tfs-build-2015-and-versioning/

    http://www.colinsalmcorner.com/post/developing-a-custom-build-vnext-task-part-1

    Disclaimer: This response contains a reference to a third-party World Wide Web site. Microsoft is providing this information as a convenience to you. Microsoft does not control these sites and has not tested any software or information found on these sites; therefore, Microsoft cannot make any representations regarding the quality, safety, or suitability of any software or information found there. There are inherent dangers in the use of any software found on the Internet, and Microsoft cautions you to make sure that you completely understand the risk before retrieving any software from the Internet. 

    • Proposed as answer by Nayana A S Thursday, March 9, 2017 1:32 PM
    • Marked as answer by oliver_zx Wednesday, March 15, 2017 7:02 AM
    Thursday, March 9, 2017 1:30 PM
  • Hey Nayana,

    thank you for the links. I'll implement it the way we have using Azure or FTP storage and some custom tasks.

    Thank you,
    Oliver

    Wednesday, March 15, 2017 7:02 AM
  • Hey Nayana,

    I got one last question which is not really related to this thread but I thought to ask it here anyway. What are the best practices towards code signing using a certificate ? For security reasons we only have certificates on physical media which are secured by a PIN. What are my option for signed builds on VSTS side ?

    Thank you,
    Oliver

    Wednesday, April 5, 2017 7:07 AM