hacdc-wiki/Old Pages/Byzantium/Byzantium_Live_Distro_Prerelease.md

84 lines
3.7 KiB
Markdown
Raw Normal View History

2024-06-13 19:21:56 +00:00
## Prerelease Process
**DRAFT** On this page we have a list of things that need to happen
between the **final** build and the publishing of software or
repackaging thereof by the Byzantium Project. Unless otherwise stated
all items are required to be satisfied for an individual build before
being placed in another part of the project or before publishing the
project.
### Build Environment
- manifest check - make sure what you think is there is actually there.
manifest files (with name <scope>.manifest) are recommended, and will
be checked by the build environment once that is automated.
- Add a stanza to the Makefile (if we go that way, that is) - **make
manifest** or **make test** or something like that.
- ?other sanity checks?
### Runtime Environment
- for each package/major feature set a checklist must be made that will
reasonably ensure the software is behaving as expected.
- A list of packages that comprise 000-byzantium.xzm should be
maintained someplace. Right now we're just eyeballing it.
- A list of files associated with each package should be maintained
someplace.
- This is why I build Slackware packages (where feasible) or do a
**DEST=/tmp/SBo make install** where there aren't any followed by a
**dir2xzm /tmp/package.xzm /tmp/SBo** - to keep all of the files for
a particular package grouped together.
- A bunch of .xzm packages are easier to keep track of than compiling
stuff in sequence. Then, when it comes time to build everything the
build system can check them out of SVN and use **xzm2dir** to unpack
all of them in sequence into a fakeroot. So, I propose a two step QA
sequence:
- Make sure that some_package-rev.isi.on.xzm was compiled and
checked into SVN.
- Make sure that some_package-rev.isi.on.xzm was checked out of SVN
on the build machine and **xzm2dir**ed into /tmp/fakeroot.
- the checklist can (and is recommended to) just say to run a script
that will do the required tests and return a pass/fail status.
- if a script is used for runtime QA it should be named "runtimeQA.sh"
and have 777 (a+rwx) permissions in the root directory of it's scope
(eg for a package
"byzantium-repo/packages/thispackagedir/runtimeQA.sh"). Also it
should use paths with the expectation that the script will be run
from an arbitrary directory.
### Human Environment
- 2 day cool down period between building and publishing
- No .iso image goes out without being PGP signed against key
0xD6975C17.
- While we're at it, can we get some more signatures on that key?
- Fingerprint 93F3 8B13 B52C D8F0 FA8D 03B3 37AA 847C D697 5C17
- I've uploaded it to a bunch of keyservers around the Net.
- The person who builds the .iso image is not the one who checks the
contents of the .iso image. After you've been staring at the same
thing for long enough, it all starts looking alike.
- Does the bootloader have the right porteus.cfg?
- Does the bootloader have byzantium.jpg handy?
- Does porteus/modules/000-byzantium.xzm exist?
- Do these files exist in the root directory of the .iso image?
- README.txt
- README.NOW
- FAQ.txt
- packages.txt
- CHANGELOG
- Do all of the Porteus modules exist in porteus/base?
- 000-kernel.xzm
- 001-core.xzm
- 002-xorg.xzm
- 003-lxde.xzm
- 004-kde.xzm
- 005-kdeapps.xzm
- 006-koffice.xzm
- Do we really need to include this?
- 007-devel.xzm
- 008-firefox.xzm
- No .iso goes out without being tested, i.e., at least booted in a VM
and put through its paces.
- We need a process for loading the mirrors from a single distribution
point.
2024-06-13 01:48:44 +00:00
- Torrents are seeded prior to announcement.