Project

General

Profile

Bug #9113

Show the train version instead of /etc/version

Added by Josh Paetzel over 5 years ago. Updated about 4 years ago.

Status:
Resolved
Priority:
Nice to have
Assignee:
William Grzybowski
Category:
GUI (new)
Target version:
Seen in:
Severity:
New
Reason for Closing:
Reason for Blocked:
Needs QA:
Yes
Needs Doc:
Yes
Needs Merging:
Yes
Needs Automation:
No
Support Suite Ticket:
n/a
Hardware Configuration:
ChangeLog Required:
No

Description

Sean has explained to me why /etc/version might not be correct, sometimes showing nightly for stable and vice versa, but the sequence is always correct.

This is an artifact of building multiple trains from the same branch.

This is displayed in the GUI under system -> information -> build as well as in the browser header.

Associated revisions

Revision e7b83a2f (diff)
Added by William Grzybowski over 5 years ago

Use system manifest sequence to show version Ticket: #9113 Merge-FN93: yes Merge-TN93: yes

Revision 7a400f53 (diff)
Added by William Grzybowski over 5 years ago

Use system manifest sequence to show version Ticket: #9113 Merge-FN93: yes Merge-TN93: yes (cherry picked from commit e7b83a2fb110ac6b851b31de05a1063e2a028d0a)

Revision 93cadbe7 (diff)
Added by William Grzybowski over 5 years ago

Use system manifest sequence to show version Ticket: #9113 Merge-FN93: yes Merge-TN93: yes (cherry picked from commit e7b83a2fb110ac6b851b31de05a1063e2a028d0a)

Revision 0d7c8fae (diff)
Added by William Grzybowski over 5 years ago

Try to lazy import freenasOS This might not work if this method is used too early somewhere. Ticket: #9113 Merge-FN93: yes Merge-TN93: yes

Revision e5fd1ab2 (diff)
Added by William Grzybowski over 5 years ago

Try to lazy import freenasOS This might not work if this method is used too early somewhere. Ticket: #9113 Merge-FN93: yes Merge-TN93: yes (cherry picked from commit 0d7c8fae5c6bed19c9285578bbc256c79209acb7)

Revision 1ac226d2 (diff)
Added by William Grzybowski over 5 years ago

Try to lazy import freenasOS This might not work if this method is used too early somewhere. Ticket: #9113 Merge-FN93: yes Merge-TN93: yes (cherry picked from commit 0d7c8fae5c6bed19c9285578bbc256c79209acb7)

History

#1 Updated by William Grzybowski over 5 years ago

  • Status changed from Unscreened to Screened

And how do one show the train version? And why would /etc/version ever mismatch the train version?

#2 Updated by Sean Fagan over 5 years ago

  • Status changed from Screened to Unscreened

The sequence name, not the train name. (Which is to get the System Manifest, and then the Sequence() function from it.)

We used to do this, I think, and changed, but I forget why.

The email I sent Josh:

One of the things I had to decide upon for the update mechanism is: a package file with version <x> for package <foo> is always going to be the same as any other package file with the same version and package name.

So base-os-1234.tgz is always package base-os, version 1234. If a later build is attempted, and it comes up with a different file with the same name, then the update system concludes it is the same, regardless of any checksums.

The stable and nightlies builds are having the same package versions. So the latest TrueNAS 9.3-STABLE build has base-os version 9.3-STABLE-1925468-a7c9e62-401b6ce-6ac7f7c. However, the etc/version file in that tarball indicates it is TrueNAS-9.3-Nightlies-201504011847. This is because base-os version 9.3-STABLE-1925468-a7c9e62-401b6ce-6ac7f7c was (I can conclude) built for a 9.3-Nightlies build.

In terms of identifying a version for us, this is correct.

#3 Updated by William Grzybowski over 5 years ago

  • Status changed from Unscreened to Screened

I didn't understand anything, but fine, I'll change common.system.get_sw_version to use SystemManifest().Sequence() instead of /etc/version.

#4 Updated by Sean Fagan over 5 years ago

Poo. I'd like it to be understood so I'll try again.

The nightlies build is done by checking out the TN-9.3-STABLE branches for everything, and does a build with TRAIN=TrueNAS-9.3-Nightlies.

The stable build was checked out from the same TN-9.3-STABLE branches, and the buidl was done with TRAIN=TrueNAS-93-STABLE.

Since the checkouts were done with the same versions (that is, there are no commits that would differentiate the two checkouts), the versions for each of the packages is the same. The file /etc/version file, however, is generated during the build.

But because it goes into the base-os package, and the update system decides that two package files are the same if they have the same name, the one that is built first is used. In this case, it was the Nightlies build.

The manifest file that is built for the update system is not placed into any package files.

Does that make it clearer?

#5 Updated by William Grzybowski over 5 years ago

Yes it does, thank you!

#6 Updated by William Grzybowski over 5 years ago

  • Status changed from Screened to Ready For Release

#8 Updated by Josh Paetzel over 5 years ago

  • ChangeLog Entry updated (diff)

#9 Updated by Jordan Hubbard over 5 years ago

  • Status changed from Ready For Release to Resolved

#10 Avatar?id=14398&size=24x24 Updated by Kris Moore about 4 years ago

  • Target version changed from Unspecified to N/A

Also available in: Atom PDF