User:Dwa

From FedoraProject

(Difference between revisions)
Jump to: navigation, search
(TC & RC Composes)
m (Secondary Arch Releng)
Line 29: Line 29:
 
*# Ensure that <code>/mnt/data/kickstarts/f19-kickstarts/$MILESTONE-fedora-install-fedora.ks</code> exists and has an appropriate package list & exclude list.
 
*# Ensure that <code>/mnt/data/kickstarts/f19-kickstarts/$MILESTONE-fedora-install-fedora.ks</code> exists and has an appropriate package list & exclude list.
 
*# Run <code>compose-milestone.sh</code>. The install tree will automatically be placed in <code>/mnt/koji/stage</code>. Be sure to check the repoclosure output before asking people to test.
 
*# Run <code>compose-milestone.sh</code>. The install tree will automatically be placed in <code>/mnt/koji/stage</code>. Be sure to check the repoclosure output before asking people to test.
 +
 +
=== Staging Releases ===
 +
 +
Sign the CHECKSUM file:
 +
 +
cat Fedora-18-ppc64-CHECKSUM > /tmp/sum
 +
sigul sign-text -o /tmp/signed fedora-18-secondary /tmp/sum
 +
sudo mv /tmp/signed Fedora-18-ppc64-CHECKSUM
 +
 +
Copy the ppc64 and source directories to:
 +
*  '''/mnt/koji/tree/releases/(version)/Fedora/''' for GA releases
 +
* '''/mnt/koji/tree/releases/test/(version)-(milestone)/Fedora''' for alpha & beta releases
  
 
=== Handy Aliases ===
 
=== Handy Aliases ===
Line 66: Line 78:
  
 
  export NSS_HASH_ALG_SUPPORT=+MD5
 
  export NSS_HASH_ALG_SUPPORT=+MD5
 
=== Staging Releases ===
 
 
Sign the CHECKSUM file:
 
 
cat Fedora-18-ppc64-CHECKSUM > /tmp/sum
 
sigul sign-text -o /tmp/signed fedora-18-secondary /tmp/sum
 
sudo mv /tmp/signed Fedora-18-ppc64-CHECKSUM
 
 
Copy the ppc64 and source directories to:
 
*  '''/mnt/koji/tree/releases/(version)/Fedora/''' for GA releases
 
* '''/mnt/koji/tree/releases/test/(version)-(milestone)/Fedora''' for alpha & beta releases
 

Revision as of 15:27, 5 June 2013

Contents

David Aquilina

I'm a release engineer at Red Hat, working on Fedora for POWER.

Contact Info

E-mail: dwa (at) redhat.com

IRC: 'dwa' on freenode, in #fedora-ppc

Secondary Arch Releng

Compose & Build scripts

  • Scripts for mashing & composing milestones, bleed repos, and nightly images are on my people page.
  • koji-stalk.py is a script for monitoring fedmsg and kicking off builds as soon as they finish on primary.

TC & RC Composes

  • TCs are Test Composes. They will never be formal releases so the only thing that makes them different from daily ISOs is the package list for the bleed repo is taken from primary's releng ticket for that release/milestone, e.g. https://fedorahosted.org/rel-eng/ticket/5623
    • Grab the list of NVRs from the ticket, then edit make-bleed.sh and put that (space separated) list in the PKGS variable. Run make-bleed.sh to build the bleed repos, and take note of any builds which don't exist yet. Then edit compose.sh so it has the appropriate labels and run it.
  • RCs are Release Candidates. They may become formal releases, so we need to ensure that all packages in an RC are signed. RCs also have full source and debuginfo trees generated as well, so they take a little longer to make.
    1. Sign the entire tag for the release.
    2. Edit mash-milestone.sh to have the appropriate date label, then run it. Have a cup of coffee.
      • If mash-milestone.sh complains of unsigned packages, you may need to re-run sigulsign_unsigned.py with the --write-all option then try again.
    3. Edit compose-milestone.sh for the appropriate milestone & date labels. the OLD variable will affect which tree is used in repodiff.
    4. Ensure that /mnt/data/kickstarts/f19-kickstarts/$MILESTONE-fedora-install-fedora.ks exists and has an appropriate package list & exclude list.
    5. Run compose-milestone.sh. The install tree will automatically be placed in /mnt/koji/stage. Be sure to check the repoclosure output before asking people to test.

Staging Releases

Sign the CHECKSUM file:

cat Fedora-18-ppc64-CHECKSUM > /tmp/sum
sigul sign-text -o /tmp/signed fedora-18-secondary /tmp/sum
sudo mv /tmp/signed Fedora-18-ppc64-CHECKSUM

Copy the ppc64 and source directories to:

  • /mnt/koji/tree/releases/(version)/Fedora/ for GA releases
  • /mnt/koji/tree/releases/test/(version)-(milestone)/Fedora for alpha & beta releases

Handy Aliases

alias mash-17-updates="mash -o /mnt/koji/mash/updates-f17-`date +%Y%m%d` 17-updates -f ~/comps/comps-f17.xml -c /etc/mash/mash.ppc.conf -p /mnt/koji/tree/updates/17"
alias mash-18-updates='mock -r fedora-18-ppc64 --chroot "mash -o /mnt/koji/mash/updates-f18-`date +%Y%m%d` 18-updates -f /tmp/comps-f18.xml -c /etc/mash/mash.ppc.conf -p /mnt/koji/tree/updates/18/"'
alias mash-18-updates-testing='mock -r fedora-18-ppc64 --chroot "mash -o /mnt/koji/mash/updates-testing-f18-`date +%Y%m%d` 18-updates-testing -f /tmp/comps-f18.xml -c /etc/mash/mash.ppc.conf -p /mnt/koji/tree/updates/testing/18/"'
alias mash-19-updates-testing='mock -r fedora-branched-releng-ppc64 --uniqueext=mash --chroot "mash -o /mnt/koji/mash/updates-testing-f19-`date +%Y%m%d` 19-updates-testing -f /tmp/comps-f19.xml -c /etc/mash/mash.ppc.conf -p /mnt/koji/tree/updates/testing/19/"'
push-updates() { sudo rsync -rlptDHhv --delay-updates ppc ppc64 source "$@" ;}

mis-tagged shadowbuild packages

  • Find packages that shouldn't be there:
    ppc-koji latest-pkg SHADOWBUILD-f16-build --all --quiet | grep fc18 | awk {'print $1'} > /tmp/mistagged-pkgs 
  • Find the latest versions that should be.:
    for i in `awk -F- '{if (NF > 4) {print $1"-"$2"-"$3} else if (NF == 4) {print $1"-"$2} else {print $1}}' /tmp/mistagged-pkgs`; do ppc-koji latest-pkg f16-updates $i --quiet | awk {'print $1'}; done | grep -v Warning > /tmp/shouldbetagged-pkgs
    • 'grep -v Warning' is needed depending on your koji configuration, to supress the pkgurl deprecated option warning.
  • Untag the offenders:
    ppc-koji untag-pkg SHADOWBUILD-f16-build `cat /tmp/mistagged-pkgs`
  • Tag the right ones:
    ppc-koji tag-pkg SHADOWBUILD-f16-build `cat /tmp/shouldbetagged-pkgs`
  • Regen the repo:
    ppc-koji regen-repo SHADOWBUILD-f16-build

sigul client setup

in ~/.sigul/client.conf:

[client]
bridge-hostname: secondary-signer
server-hostname: secondary-signer-server

in /etc/hosts (internal to phx):

10.5.124.145  sigul-bridge.ausil.us sigul-bridge secondary-signer

If your client is RHEL 6.4, in ~/.bashrc:

export NSS_HASH_ALG_SUPPORT=+MD5