Skip to content

Conversation

@wtgodbe
Copy link
Member

@wtgodbe wtgodbe commented Sep 18, 2020

Generate a non-stable ProductVersion for installers so that updates can occur between installers in the same Major.Minor.Patch band (e.g. previewN to previewN+1)

https://dev.azure.com/dnceng/internal/_build/results?buildId=821089&view=results

@wtgodbe wtgodbe requested review from a team and joeloff September 18, 2020 18:26
@ghost ghost added the feature-installers Includes: Installers label Sep 18, 2020
<PropertyGroup>
<!-- Used for generating stable upgrade codes for bundles -->
<Version>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion).0</Version>
<Version>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion).$(FileRevisionVersion)</Version>
Copy link
Member

@joeloff joeloff Sep 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this is what's used. For 3.1, we should fix this:

<GenerateGuid NamespaceGuid="$(NamespaceGuid)" Values="$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion);$(Platform)">
  <Output TaskParameter="Guid" PropertyName="BundleUpgradeCode" />
</GenerateGuid>

For example, if we're building the following bundles, we want something like this (I kept the bundle version to 3 parts)

3.1.44228       x86   46e465cf-b871-370b-972b-07484f8dbb0a
3.1.48943       x86   46e465cf-b871-370b-972b-07484f8dbb0a
3.1.2357        x64   e9cb5174-b032-3f09-8a6c-a4513eaf62e8
3.1.60141       x64   e9cb5174-b032-3f09-8a6c-a4513eaf62e8

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just curious: What sets $(FileRevisionVersion)

And, a nit if we need this change:

Suggested change
<Version>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion).$(FileRevisionVersion)</Version>
<Version>$(AspNetCoreMajorMinorVersion).$(AspNetCorePatchVersion).$(FileRevisionVersion)</Version>

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<_FileRevisionVersion>$(VersionSuffixDateStamp)</_FileRevisionVersion>

Copy link
Contributor

@dougbu dougbu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, WFM but @joeloff's opinion is the one that matters

@wtgodbe
Copy link
Member Author

wtgodbe commented Sep 21, 2020

@wtgodbe
Copy link
Member Author

wtgodbe commented Sep 21, 2020

@joeloff I pushed 1f7fb7c. This will go into 3.1.10, so we'll need to add the upgrade codes for 3.1.9 once those are available.

Copy link
Member

@joeloff joeloff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this looks good. We should get a couple of test builds to look at

Maj.Min.x
Maj.Min.x+1
Maj.Min+1

and pick two random official releases and then check that downgrades are blocked, upgrades are processed.

Copy link
Contributor

@dougbu dougbu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If manual tests of upgrades work, WFM

@wtgodbe
Copy link
Member Author

wtgodbe commented Sep 29, 2020

Testing confirmed that the behavior is now correct. 3.1.10 removes 3.1.9 when installed, 3.1.9 won't install when 3.1.10 is present, and 3.2.0 installs alongside 3.1.10.

@joeloff
Copy link
Member

joeloff commented Sep 29, 2020

Woohoo! That's great to hear @wtgodbe

@dougbu dougbu added this to the 3.1.10 milestone Sep 30, 2020
@dougbu
Copy link
Contributor

dougbu commented Sep 30, 2020

@Pilchie this is the PR where I meant to ask you about 3.1.10 ask or tell mode

@Pilchie
Copy link
Member

Pilchie commented Sep 30, 2020

Same - tell mode with an explicit mail should be fine.

@wtgodbe wtgodbe added the tell-mode Indicates a PR which is being merged during tell-mode label Oct 13, 2020
@wtgodbe wtgodbe merged commit f6b7b83 into release/3.1 Oct 13, 2020
@wtgodbe wtgodbe deleted the wtgodbe/31InstallerVersions branch October 13, 2020 20:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature-installers Includes: Installers tell-mode Indicates a PR which is being merged during tell-mode

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants