NuGet Nightly (appveyor) vs Release (nuget.org) versioning strategy

richard's Avatar

richard

28 Jun, 2014 02:46 AM

Are there any recommendations on the best way to setup versioning for NuGet packages as they appear on Appveyor vs NuGet.org?

I'd like to be able to release the dev packages with -prerelease suffixes, but release to NuGet with only a single increment to the version (ie. not the build number).

A great process for me be:

  1. The default built (whether it be nightly or web hook) builds and pushes a NuGet package to the Appveyor account/project feed as %RELEASE_VERSION%-build%BUILD% (1.0.1-build549)
  2. When I want to "release", it somehow repackages the nupkg as %RELEASE_VERSION% (1.0.1)
  3. RELEASE_VERSION's smallest version is auto-incremented (1.0.1), though it could also be modified manually (for major version number changes)

What's the closest I can get to the above utopia, and what's involved?

Cheers,
Richard

  1. Support Staff 1 Posted by Feodor Fitsner on 29 Jun, 2014 03:08 AM

    Feodor Fitsner's Avatar

    Hi Richard,

    Described scenario is quite reasonable. Some thoughts:
    1) what could be a trigger for "release" in case of AppVeyor - environment variable?
    2) you should push artifacts using appveyor.exe or PowerShell in order to control artifact file name.
    3) as appveyor.yml is unmutuable could "release_version" be stored as a tag in Git repo (you can read tags to get the current release version and you can push a new tag to increment it).

  2. 2 Posted by thomas.solbjor on 11 Jul, 2014 01:55 PM

    thomas.solbjor's Avatar

    I would also like this feature. In CruiseControl.Net you have the possibility to specify "dynamic properties" when forcing builds.

    Maybe it can be possible to specify environment variables when creating a "new build" from the UI?

  3. Support Staff 3 Posted by Feodor Fitsner on 11 Jul, 2014 02:20 PM

    Feodor Fitsner's Avatar

    Sounds like a great idea, thanks!

    - Feodor

  4. 4 Posted by thomas.solbjor on 22 May, 2015 05:04 AM

    thomas.solbjor's Avatar

    Any progress on this?

  5. Support Staff 5 Posted by Feodor Fitsner on 22 May, 2015 07:49 PM

    Feodor Fitsner's Avatar

    Well, partially. You can start a new build using AppVeyor REST API and pass environment variables: http://www.appveyor.com/docs/api/projects-builds#start-build-of-bra...

  6. 6 Posted by thomas.solbjor on 23 May, 2015 04:59 AM

    thomas.solbjor's Avatar

    Ah. Thanks.

  7. Ilya Finkelshteyn closed this discussion on 25 Aug, 2018 01:56 AM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac