Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

Package Promotion / Repackaging with Dependencies



  • Dear Indeo,

    while the promotion and re-packaging features look very promising, they seem to lack one important feature that I'd imagine alot of people have in real life scenarios:

    Pushing (Promoting and / or Repackacing) Software from something like build => prerelease => rc => production is not a matter of doing it for a single package but probably doing so for many many packages including their dependencies.

    We have a pretty big tree of internal (nuget) dependencies coming together from various projects.

    Here is a sample of what I mean:

    WPF Application => Services.dll => Domain.dll => EntityFrameworkShared.dll + Extensions.dll + Logging.dll

    We name our packages something like "1.0.0-build.1234" where "1234" is simply the build number.

    All of these DLLs are actually self-contained NuGet packages built from our build-server and pushed into ProGet.

    Now, when the WPF Application is going to be tested, we'd like to generate a whole tree of all those dependencies labeled as "-prerelease".
    And after testing we'd like to move the whole tree into the production state where all packages do not have any prelease tag at all.

    So coming together, I guess I have two questions:

    • Is this possible at all using ProGet
    • What would be the correct way to get this process implemented

    Thanks for you help!
    Philipp


  • inedo-engineer

    Hi Philipp;

    Glad you were able to find the feature of Repackaging, it's quite helpful!

    Now, when the WPF Application is going to be tested, we'd like to generate a whole tree of all those dependencies labeled as "-prerelease".
    And after testing we'd like to move the whole tree into the production state where all packages do not have any prelease tag at all.

    This sounds good to me! I think this process makes a lot of sense to do.

    I'm not sure if you're asking about the ability to tell ProGet "repackage the WPFApp package and all it's dependencies", using one API call or something? In this case it's not possible.

    The reason is, it's not feasible for ProGet to handle the dependency resolution. Actually it's quite complicated (especially with version ranges possible), and NuGet's algorithm is among the most complex in the industry. Because of this, it's not really possible to do dependency resolution from ProGet, since you'd need to specifying additional context including what framework version you're targeting and what version of Visual Studio you're using, etc.

    But anyways, the idea you have to promote all packages in one stage sounds nice to me!


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation