Build The Manifest: Difference between revisions

From MediaWiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 3: Line 3:
* Use the ''make manifest HOST=IP'' to generate the current manifest.
* Use the ''make manifest HOST=IP'' to generate the current manifest.


* You may need to ''edit'' the current release file: "'''include/manifest/current.xml'''" prior to copying it for misbehaved characters. Hopefully the ''xmllint'' and ''grep'' searches for the ''%'' and "\" characters will detect any issues.
* You may need to ''edit'' the current release file: "'''include/manifest/current.xml'''" prior to copying it for misbehaved characters. Hopefully the ''xmllint'' and ''grep'' searches for the ''%'' and "\" characters will detect any issues. '''IMPORTANT''': You will need to remove/replace the "%" characters by hand (if any are found). The back slashes can be handled by ''sed'' (shown below).


* Create the file ''include/manifest/release-RELEASE-SVNID.xml'' where ''RELEASE'' is the NST release (like: 24) and ''SVNID'' is ''one more'' than the current revision number reported by Subversion (since our next commit will cause this number to bump up by 1). For example, if the revision number reported is 7972, then use 7973 as the ''SVNID''.
* Create the file ''include/manifest/release-RELEASE-SVNID.xml'' where ''RELEASE'' is the NST release (like: 24) and ''SVNID'' is ''one more'' than the current revision number reported by Subversion (since our next commit will cause this number to bump up by 1). For example, if the revision number reported is 7972, then use 7973 as the ''SVNID''.
Line 25: Line 25:
  [nst@nst24-repo repo]$ grep '%' include/manifest/current.xml
  [nst@nst24-repo repo]$ grep '%' include/manifest/current.xml
  [nst@nst24-repo repo]$ grep '\\' include/manifest/current.xml  
  [nst@nst24-repo repo]$ grep '\\' include/manifest/current.xml  
  [nst@nst24-repo repo]$ sed -i -e 's,\\,,g' include/manifest/current.xml # Example of removing back-slashes  
  [nst@nst24-repo repo]$ sed -i -e 's,\\,,g' -e 's,%2B,+,' -e 's,%{git,{git,' include/manifest/current.xml # Example of removing back-slashes and changing %2B to +
  [nst@nst24-repo repo]$ xmllint include/manifest/current.xml > /dev/null
  [nst@nst24-repo repo]$ xmllint include/manifest/current.xml > /dev/null
  [nst@nst24-repo repo]$ svn info
  [nst@nst24-repo repo]$ svn info
Line 41: Line 41:
  Last Changed Date: 2016-07-03 07:32:53 -0400 (Sun, 03 Jul 2016)
  Last Changed Date: 2016-07-03 07:32:53 -0400 (Sun, 03 Jul 2016)
   
   
[nst@nst24-repo repo]$ emacs -nw include/manifest/current.xml # Check/update kernel and SVN numbers
  [nst@nst24-repo repo]$ cp include/manifest/current.xml include/manifest/release-24-7973.xml
  [nst@nst24-repo repo]$ cp include/manifest/current.xml include/manifest/release-24-7973.xml
  [nst@nst24-repo repo]$ svn add include/manifest/release-24-7973.xml
  [nst@nst24-repo repo]$ svn add include/manifest/release-24-7973.xml

Latest revision as of 11:56, 24 August 2018

  • Boot the current build of the NST ISO image.
  • Use the make manifest HOST=IP to generate the current manifest.
  • You may need to edit the current release file: "include/manifest/current.xml" prior to copying it for misbehaved characters. Hopefully the xmllint and grep searches for the % and "\" characters will detect any issues. IMPORTANT: You will need to remove/replace the "%" characters by hand (if any are found). The back slashes can be handled by sed (shown below).
  • Create the file include/manifest/release-RELEASE-SVNID.xml where RELEASE is the NST release (like: 24) and SVNID is one more than the current revision number reported by Subversion (since our next commit will cause this number to bump up by 1). For example, if the revision number reported is 7972, then use 7973 as the SVNID.
  • You only need to update the manifest on one machine (if you are building multiple architectures, you'll need to update).
  • You will likely need to update the html/welcome.html page with the next SVN revision number. Also check kernel versions, dates and the manifest link.
  • Probe install the nstweb package and verify that the welcome page and manifest look OK (ie the kernel and top level info).
  • Commit the updated manifest file.

Here is an example of what these steps might look like:

[nst@nst24-repo repo]$ make manifest HOST=nst-probe

... Output and re-generation of:
    include/manifest/current.xml ...

[nst@nst24-repo repo]$ xmllint include/manifest/current.xml > /dev/null
[nst@nst24-repo repo]$ grep '%' include/manifest/current.xml
[nst@nst24-repo repo]$ grep '\\' include/manifest/current.xml 
[nst@nst24-repo repo]$ sed -i -e 's,\\,,g' -e 's,%2B,+,' -e 's,%{git,{git,' include/manifest/current.xml # Example of removing back-slashes and changing %2B to +
[nst@nst24-repo repo]$ xmllint include/manifest/current.xml > /dev/null
[nst@nst24-repo repo]$ svn info
Path: .
Working Copy Root Path: /home/nst/repo
URL: https://svn.code.sf.net/p/nst/code/repo/24
Relative URL: ^/repo/24
Repository Root: https://svn.code.sf.net/p/nst/code
Repository UUID: b5e161f0-cc72-4f2a-9017-da5bd5071a9c
Revision: 7972
Node Kind: directory
Schedule: normal
Last Changed Author: pblankenbaker
Last Changed Rev: 7972
Last Changed Date: 2016-07-03 07:32:53 -0400 (Sun, 03 Jul 2016)

[nst@nst24-repo repo]$ emacs -nw include/manifest/current.xml # Check/update kernel and SVN numbers
[nst@nst24-repo repo]$ cp include/manifest/current.xml include/manifest/release-24-7973.xml
[nst@nst24-repo repo]$ svn add include/manifest/release-24-7973.xml
[nst@nst24-repo repo]$ emacs -nw html/welcome.html # Look for and update SVN number to match 7973 above
[nst@nst24-repo repo]$ svn commit -m "Updated manifest for upcoming release"

... Output from the commit ...

[nst@nst24-repo repo]$