From Fedora Project Wiki

(Created page with '== Description == From time to time the Quality Assurance team requests official images for testing. Release Engineering is responsible for creating them. == Action == 1) Log i...')
 
No edit summary
 
(12 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{admon/important|This page is deprecated| All Fedora Release Engineering Documentation has moved [https://docs.pagure.org/releng/ here] with source hosted along side the code in the [https://pagure.io/releng releng pagure repository]}}
== Description ==
== Description ==
From time to time the Quality Assurance team requests official images for testing.  Release Engineering is responsible for creating them.
From time to time the Quality Assurance team requests official images for testing (boot images only, no full media).  Release Engineering is responsible for creating them.


== Action ==
== Action ==
1) Log into compose system (compose-x86-01)
Fulfilling the images for testing ticket requires composing the images, uploading the images, and updating the ticket.


2) Update compose ks  git repo in /srv/pungi/spin-kickstarts/
=== Composing the images ===
1) Log into compose system: <code>compose-x86-01</code>
<pre>
$ ssh gateway.fedoraproject.org
$ ssh compose-x86-01
</pre>


3) Update / create chroots (fedora-devel-compose-{i386,x86_64}
2) Update the compose kickstart file in in the git repo in /srv/pungi/spin-kickstarts/
<pre>
$ cd /srv/pungi/spin-kickstarts/
$ git pull
</pre>


4) shell into the chroot
3) Update / create chroots (fedora-devel-compose-{i386,x86_64})
    pungi -c /srv/pungi/spin-kickstarts/fedora-install-fedora.ks \
<pre>
            --destdir /srv/pungi/raw22.0 \
$ mock -r fedora-devel-compose-i386 --shell
            --cachedir /srv/pungi/cache \
$ yum update
            --nosource \
</pre>
            --nodebug --ver development -GCB
If the chroot does not exist yet you will have to create it:
<pre>
$ mock -r fedora-devel-compose-i386 --init
</pre>


5) rsync the output, minus the packages and repodata, to alt.fedoraproject.org 
4) Shell into the chroot (this is not necessary if you already shelled into update above)
<pre>
<pre>
rsync -avHh --progress --stats --exclude Packages \
$ mock -r fedora-devel-compose-i386 --shell
</pre>
 
5) Run pungi to create the images:
<pre>
$ pungi -c /srv/pungi/spin-kickstarts/fedora-install-fedora.ks \
    --destdir /srv/pungi/rawhide-20100122.0 \
    --cachedir /srv/pungi/cache \
    --nosource \
    --nodebug --ver development -GCB
</pre>
When done, exit the mock chroot.
 
=== Upload the images ===
We host the images on alt.fedoraproject.org which has an internal name of <code>secondary1</code>.
 
1) Create the output dir on secondary1
<pre>
$ ssh secondary1 mkdir -p /srv/pub/alt/stage/rawhide-20100122
</pre>
 
2) rsync the output, minus the packages and repodata, to alt.fedoraproject.org 
<pre>
$ rsync -avHh --progress --stats --exclude Packages \
       --exclude repodata --exclude repoview \
       --exclude repodata --exclude repoview \
       /srv/pungi/raw22.0/development/ \
       /srv/pungi/rawhide-20100122.0/development/ \
       secondary1:/srv/pub/alt/stage/rawhide-20100122/
       secondary1:/srv/pub/alt/stage/rawhide-20100122/
</pre>


6) Update the Release Engineering ticket with the path to the content
3) Update the 'to be tested' symlink:
<pre>
$ ssh secondary1 ln -sfT rawhide-20100122 /srv/pub/alt/stage/rawhide-testing
</pre>
 
=== Update the ticket ===
The ticket should be closed when the images are uploaded and the symlink has been adjusted.  The full path should be noted for clarity sake.
 
If there are delays in the compose, the ticket should be updated with that information and (if known) amount of delay in finishing the compose.


== Verification ==
== Verification ==
* '''FIXME''': what are the verification steps?
Verification can be done as the task steps are being performed.
 
=== Image Creation ===
When pungi exits, you can verify that the <code>development/<arch>/os/images/</code> directory exists and has content.  That path is relative to the destination directory you provide pungi.
 
=== Upload the images ===
One can simply browse to http://dl.fedoraproject.org/pub/alt/stage/rawhide-testing and check the dates on the directories.
 
=== Updating the Ticket ===
One can click the link provided in the ticket update and ensure the path is correct.  Verifying that the ticket is closed should be pretty self evident.


== Consider Before Running ==
== Consider Before Running ==
Many things can hinder a compose, broken deps in the chroot set, broken deps in the compose set, bugs in the compose software, etc...  If any problem is ran into along the way, it is best to alert QA via a ticket update, and then work with the appropriate party to clear the obstruction.
Some of these tasks take a long time to finish, so it is highly recommended that you run these tasks in a screen session.
If you need to make use of freshly built packages since the last rawhide compose, you can create a local repository.  <code>/srv/pungi/bleed/<arch>/</code> on the compose system can be used as a temporary repo for new packages.  Don't forget to update the mock chroot with the new packages (if appropriate) and to add the temporary repo to the <code>spin-kickstarts/fedora-install-fedora.ks</code> file for use by pungi.
Disk space on secondary1 is limited, so if you need to go through a number of composes before you get one that tests well, be sure to prune the failed composes.  This is true of disk space on the compose host too, be sure to trim /srv/pungi/ of composes that are no longer needed locally.


[[Category:Release Engineering SOPs]]
[[Category:Release Engineering SOPs]]

Latest revision as of 17:51, 3 November 2015

Important.png
This page is deprecated
All Fedora Release Engineering Documentation has moved here with source hosted along side the code in the releng pagure repository

Description

From time to time the Quality Assurance team requests official images for testing (boot images only, no full media). Release Engineering is responsible for creating them.

Action

Fulfilling the images for testing ticket requires composing the images, uploading the images, and updating the ticket.

Composing the images

1) Log into compose system: compose-x86-01

$ ssh gateway.fedoraproject.org
$ ssh compose-x86-01

2) Update the compose kickstart file in in the git repo in /srv/pungi/spin-kickstarts/

$ cd /srv/pungi/spin-kickstarts/
$ git pull

3) Update / create chroots (fedora-devel-compose-{i386,x86_64})

$ mock -r fedora-devel-compose-i386 --shell
$ yum update

If the chroot does not exist yet you will have to create it:

$ mock -r fedora-devel-compose-i386 --init

4) Shell into the chroot (this is not necessary if you already shelled into update above)

$ mock -r fedora-devel-compose-i386 --shell

5) Run pungi to create the images:

$ pungi -c /srv/pungi/spin-kickstarts/fedora-install-fedora.ks \
    --destdir /srv/pungi/rawhide-20100122.0 \
    --cachedir /srv/pungi/cache \
    --nosource \
    --nodebug --ver development -GCB

When done, exit the mock chroot.

Upload the images

We host the images on alt.fedoraproject.org which has an internal name of secondary1.

1) Create the output dir on secondary1

$ ssh secondary1 mkdir -p /srv/pub/alt/stage/rawhide-20100122

2) rsync the output, minus the packages and repodata, to alt.fedoraproject.org

$ rsync -avHh --progress --stats --exclude Packages \
       --exclude repodata --exclude repoview \
       /srv/pungi/rawhide-20100122.0/development/ \
       secondary1:/srv/pub/alt/stage/rawhide-20100122/

3) Update the 'to be tested' symlink:

$ ssh secondary1 ln -sfT rawhide-20100122 /srv/pub/alt/stage/rawhide-testing

Update the ticket

The ticket should be closed when the images are uploaded and the symlink has been adjusted. The full path should be noted for clarity sake.

If there are delays in the compose, the ticket should be updated with that information and (if known) amount of delay in finishing the compose.

Verification

Verification can be done as the task steps are being performed.

Image Creation

When pungi exits, you can verify that the development/<arch>/os/images/ directory exists and has content. That path is relative to the destination directory you provide pungi.

Upload the images

One can simply browse to http://dl.fedoraproject.org/pub/alt/stage/rawhide-testing and check the dates on the directories.

Updating the Ticket

One can click the link provided in the ticket update and ensure the path is correct. Verifying that the ticket is closed should be pretty self evident.

Consider Before Running

Many things can hinder a compose, broken deps in the chroot set, broken deps in the compose set, bugs in the compose software, etc... If any problem is ran into along the way, it is best to alert QA via a ticket update, and then work with the appropriate party to clear the obstruction.

Some of these tasks take a long time to finish, so it is highly recommended that you run these tasks in a screen session.

If you need to make use of freshly built packages since the last rawhide compose, you can create a local repository. /srv/pungi/bleed/<arch>/ on the compose system can be used as a temporary repo for new packages. Don't forget to update the mock chroot with the new packages (if appropriate) and to add the temporary repo to the spin-kickstarts/fedora-install-fedora.ks file for use by pungi.

Disk space on secondary1 is limited, so if you need to go through a number of composes before you get one that tests well, be sure to prune the failed composes. This is true of disk space on the compose host too, be sure to trim /srv/pungi/ of composes that are no longer needed locally.