OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Thomas Lotterer
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-re                       Date:   18-Oct-2005 10:43:51
  Branch: HEAD                             Handle: 2005101809435000

  Modified files:
    openpkg-re              release.txt

  Log:
    log how steps have been done to finish OPENPKG_2_5_RELEASE

  Summary:
    Revision    Changes     Path
    1.36        +44 -258    openpkg-re/release.txt
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-re/release.txt
  ============================================================================
  $ cvs diff -u -r1.35 -r1.36 release.txt
  --- openpkg-re/release.txt    12 Oct 2005 07:43:01 -0000      1.35
  +++ openpkg-re/release.txt    18 Oct 2005 08:43:50 -0000      1.36
  @@ -2,6 +2,9 @@
     HOW TO MAKE AN OPENPKG RELEASE
     ==============================
   
  +  o Make sure CORE and BASE do not include "nameversioned" packages (e.g. 
mysql41 in 2.2 and postgresql7 in 2.3)
  +  o adjust aux.prereq.sh file in openpkg package to reflect the most recent 
platform support
  +  o make sure openpkg-X.Y.0-X.Y.0 provides: openpkg-YYYYMMDD-YYYYMMDD
     $ cd src.raw
     $ cvs update -A
     $ cvs rtag -rHEAD OPENPKG_2_5_SOLID_BP \
  @@ -36,163 +39,29 @@
     # to allow "openpkg-dev" from openpkg-tools >= 0.8.45 to overwrite 
existing SRPMs
     $ chgrp -R openpkg-ftp /v/openpkg/ftp/release/2.5/SRC/; chmod -R g+w 
/v/openpkg/ftp/release/2.5/SRC/
    
  -  ------------------------------------------
  +  o prepare a empty directory and symlink /openpkg to it
  +  o using "openpkg-tools" with "bf" setup a buildfarm and create binaries
  +  o ensure /openpkg and /ltmp have 1GB free disk space
  +  o create a %openpkg target in obmtool.conf and use obmtool
  +
  +  $ sh Uploadmaker.sh        - it reads the buildfarm database and creates 
the following batches
  +  $ sh mkdir_openpkg.sh      - mkdir commands required inside openpkg BIN/ 
directory
  +  $ sh mkdir_zfos.sh         - mkdir commands required inside zfos BIN/ 
directory
  +  $ sh move_PLUS.sh          - commands to move PLUS SRPMs into PLUS/ subdir
  +  $ sh upload_BASE4dotf.sh   - upload BASE for deprecated, obsoleted, 
tentative and forecasted to zfos
  +  $ sh upload_BASE4s.sh      - upload BASE for supported to openpkg
  +  $ sh upload_CORE4df.sh     - upload CORE for deprecated and forecasted to 
zfos
  +  $ sh upload_CORE4ost.sh    - upload CORE for obsoleted, supported and 
tentative to openpkg
  +  $ sh upload_PLUS.sh        - upload PLUS to zfos
   
  -  The following is a step-by-step guide on how to create an OpenPKG
  -  N.M-RELEASE. It assumes that you have access to the C&W DE AS
  -  Development Team dvX.dev.de.cw.net machines and access to the OpenPKG
  -  master server master.openpkg.org (aka en4.engelschall.com).
  -
  -  # switch to home directory of a non-privileged user
  -  $ cd $HOME
  -
  -  # prepare working area
  -  $ mkdir openpkg
  -  $ mkdir openpkg/RE
  -  $ mkdir openpkg/SRC
  -  $ mkdir openpkg/DST
  -  $ mkdir openpkg/PKG
  -  $ mkdir openpkg/PKG/BIN
  -  $ mkdir openpkg/PKG/SRC
  -
  -  # fill working area with sources
  -  $ cvs -d [EMAIL PROTECTED]:/e/openpkg/cvs co -d openpkg/RE  openpkg-re
  -  $ cvs -d [EMAIL PROTECTED]:/e/openpkg/cvs co -d openpkg/SRC openpkg-src
  -  $ rsync -av rsync://rsync.openpkg.org/openpkg-dst/ openpkg/DST/
  -
  -  # activate working area in RPM for commit steps
  -  $ vi ~/.rpmmacros
  -  | %_specdir      %(echo $HOME)/openpkg/SRC/%{name}
  -  | %_sourcedir    %(echo $HOME)/openpkg/DST/%{name}
  -  | %_rpmdir       %(echo $HOME)/openpkg/PKG/BIN
  -  | %_srcrpmdir    %(echo $HOME)/openpkg/PKG/SRC
  -  | %_builddir     %(echo $TMPDIR)
  -  | %_tmppath      %(echo $TMPDIR)
  -
  -  # create an initial fresh /cw [cw:cw] OpenPKG hierarchy
  -  $ ftp ftp.openpkg.org
  -  ftp> cd release/1.0/SRC
  -  ftp> binary
  -  ftp> get openpkg-1.0.0-1.0.0.src.sh
  -  ftp> bye
  -  $ sh openpkg-1.0.0-1.0.0.src.sh --prefix=/cw --user=cw --group=cw
  -  $ sh openpkg-1.0.0-1.0.0.*-*.sh
  -  $ rm openpkg-1.0.0-1.0.0.*
  -
  -  # update the source to the branch from where you want to release 
  -  $ cd ~/openpkg/SRC
  -  # ONLY for N.[01]-RELEASE:
  -  $ cvs up -P -d -rHEAD
  -  # ONLY for N.[2-9]-RELEASE:
  -  $ cvs up -P -d -rOPENPKG_N_STABLE
  -  
  -  # create branch point for N.M-SOLID
  -  $ cd ~/openpkg/SRC
  -  # ONLY for N.[01]-RELEASE:
  -  $ cvs rtag -rHEAD OPENPKG_N_M_SOLID_BP \
  -    `(echo openpkg-src/00README; \
  -      egrep -l '\[(CORE|BASE|PLUS)\]' */*.spec |\
  -      sed -e 's;^\(.*\)/.*$;openpkg-src/\1;')`
  -  # ONLY for N.[2-9]-RELEASE:
  -  $ cvs rtag -rOPENPKG_N_STABLE OPENPKG_N_M_SOLID_BP openpkg-src
  -
  -  # create N.M-SOLID branch
  -  $ cd ~/openpkg/SRC
  -  $ cvs rtag -b -rOPENPKG_N_M_SOLID_BP OPENPKG_N_M_SOLID openpkg-src
  -
  -  # update the source to the new N.M-SOLID branch
  -  $ cd ~/openpkg/SRC
  -  $ cvs up -rOPENPKG_N_M_SOLID
  -
  -  # bump the release numbers and bootstrap dependency of all packages
  -  $ cd ~/openpkg/SRC
  -  $ ../RE/editspec.pl 's;(Version:\s+)(\S+)[ \t]*(\nRelease:\s+)\2[ 
\t]*;${1}N.M.0${3}N.M.0;s'
  -  $ ../RE/editspec.pl 's;^(Release:\s+) .*$;$1 N.M.0;m' 
  -  $ ../RE/editspec.pl 's;OpenPKG, openpkg >= [0-9.]+;OpenPKG, openpkg >= 
N.M.0;sg'
  -  $ THL!20040205: make sure openpkg-2.0.0-2.0.0 provides: 
openpkg-20040113-20040113
  -  # cvs ci -m "bump release numbers for OpenPKG N.M"
  -
  -  # roll all source RPMs
  -  $ /cw/bin/rpm \
  -        -bs --nodeps \
  -        --define "_specdir `pwd`/%{name}" \
  -        --define "_srcrpmdir `pwd`/../release/src/master/" \
  -        */*.spec
  -  # FIXME: --norestriction ?!
  -
  -  # generate binary build/install Makefiles
  -  # there exists a script ~/openpkg/re/src2make.sh also
  -  $ cd ~/openpkg/re
  -  $ ./src2make.pl \
  -        --prefix=/cw \
  -        --user=cw \
  -        --group=cw \
  -        --srcdir=$HOME/work/openpkg/PKG/SRC \
  -        --tmpdir=$TMPDIR \
  -        --outdir=. \
  -        --verbose
  -
  -  # BEGIN of parallel jobs
  -
  -  # generate binary RPMs for FreeBSD 4.x (can be done in parallel)
  -  $ ssh dv1.dev.de.cw.net
  -  $ cd ~/openpkg/RE
  -  $ make erase build-latest
  -  $ exit
  -
  -  # generate binary RPMs for RedHat GNU/Linux 7.2 (can be done in parallel)
  -  $ ssh dv4.dev.de.cw.net
  -  $ cd ~/openpkg/RE
  -  $ make erase build-latest
  -  $ exit
  -
  -  # generate binary RPMs for Debian GNU/Linux 2.2 (can be done in parallel)
  -  $ ssh dv5.dev.de.cw.net
  -  $ cd ~/openpkg/RE
  -  $ make erase build-latest
  -  $ exit
  -  
  -  # generate binary RPMs for Debian GNU/Linux 3.0 (can be done in parallel)
  -  $ ssh dv6.dev.de.cw.net
  -  $ cd ~/openpkg/RE
  -  $ make erase build-latest
  -  $ exit
  -
  -  # generate binary RPMs for Solaris 8 (can be done in parallel)
  -  $ ssh dv8.dev.de.cw.net
  -  $ cd ~/openpkg/RE
  -  $ make erase build-latest
  -  $ exit
  -
  -  # generate binary RPMs for Solaris 9 (can be done in parallel)
  -  $ ssh dv9.dev.de.cw.net
  -  $ cd ~/openpkg/RE
  -  $ make erase build-latest
  -  $ exit
  -
  -  # END of parallel jobs
  -
  -  # prepare master server
     $ ssh [EMAIL PROTECTED]
     $ cd /e/openpkg/ftp/release
     $ mkdir N.M
     $ mkdir N.M/SRC
     $ mkdir N.M/SRC/PLUS
     $ mkdir N.M/UPD
  -  $ mkdir N.M/BIN/freebsd-4.6
  -  $ mkdir N.M/BIN/redhat-7.2
  -  $ mkdir N.M/BIN/debian-2.2
  -  $ mkdir N.M/BIN/debian-3.0
  -  $ mkdir N.M/BIN/solaris-8
  -  $ mkdir N.M/BIN/solaris-9
  +  $ mkdir N.M/BIN
     $ mkdir N.M/ISO
  -  $ exit
  -
  -  # move distribution files to master server
  -  $ cd ~/openpkg/PKG
  -  $ FIXME scp -rp SRC/* [EMAIL PROTECTED]:/e/openpkg/ftp/release/N.M/SRC/
  -  $ FIXME mv ... PLUS/
  -  $ FIXME scp -rp BIN/* [EMAIL PROTECTED]:/e/openpkg/ftp/release/N.M/SRC/
   
     # copy text files to master server
     $ cd ~/openpkg/RE
  @@ -207,29 +76,11 @@
     $ sed -e "s;N\.M;N.M;g" -e "s;XX-XXX-200X;`date '+%d-%b-%Y'`;g" 
<readme-iso.txt >/tmp/00README
     $ scp /tmp/00README [EMAIL PROTECTED]:/e/openpkg/ftp/release/N.M/ISO/
   
  -  # copy Makefiles to master server
  -  $ cd ~/openpkg/RE
  -  $ scp Makefile Makefile.rules [EMAIL 
PROTECTED]:/e/openpkg/ftp/release/N.M/SRC/
  -
     # post-processing on master server
  -  $ ssh [EMAIL PROTECTED]
  -  $ cd tmp
  -  $ cvs -d [EMAIL PROTECTED]:/e/openpkg/cvs co openpkg-re
  -  $ cd openpkg-re
  -  $ ./buildrdf.pl -v --rpm=/e/openpkg/sw/bin/rpm -r 00INDEX.rdf -c \
  -     OpenPKG-N.M/Binary/:/e/openpkg/ftp/release/N.M/BIN/
  -  $ ./buildrdf.pl -v --rpm=/e/openpkg/sw/bin/rpm -r 00INDEX.rdf -c \
  -     OpenPKG-N.M/Source/:/e/openpkg/ftp/release/N.M/SRC/
  -  $ ./buildrdf.pl -v --rpm=/e/openpkg/sw/bin/rpm -r 00INDEX.rdf -c
  -    OpenPKG-N.M/Updates/:/e/openpkg/ftp/release/N.M/UPD/
  -  $ ./buildrdf.pl -v --rpm=/e/openpkg/sw/bin/rpm -r 00INDEX.rdf \
  -    OpenPKG-N.M/:/e/openpkg/ftp/release/N.M/
  -  $ ./buildrdf.pl -v --rpm=/e/openpkg/sw/bin/rpm -r 00INDEX.rdf \
  -    OpenPKG/:/e/openpkg/ftp/
  -  $ exit
   
     # distribution file signing
     $ ssh [EMAIL PROTECTED]
  +  $ chown -R openpkg-ftp:openpkg-ftp /v/openpkg/ftp/release/2.5; chmod -R 
go-w /v/openpkg/ftp/release/2.5
     $ vi ~/.rpmmacros
     | %_gpg_name OpenPKG <[EMAIL PROTECTED]>
     | %_gpg_path /e/openpkg/.gnupg
  @@ -237,104 +88,39 @@
     | %_tmppath  /e/openpkg/tmp
     $ cd ftp/release/N.M/
     $ rpm --resign SRC/*.rpm BIN/*.rpm
  -  $ rpm --checksig SRC/*.rpm BIN/*.rpm | grep "NOT OK"
  +  $ rpm --checksig SRC/*.rpm BIN/*/*.rpm | grep "NOT OK"
   
     # create indices
  -   echo "generating XML/RDF indices for OpenPKG 2.1"
  +  $ ssh [EMAIL PROTECTED]
  +  $ cd ~/etc
  +  o create linking 00INDEX.rdf files in . ./SRC/ ./SRC/PLUS/ ./UPD/ ./BIN/
  +  o edit and run ./do.re-mkidx
   
  -   echo "generating XML/RDF index OpenPKG-2.1/Source/PLUS/"
  -   /e/openpkg/sw/bin/openpkg index \
  -       -C /e/openpkg/tmp/index.21.cache \
  -       -i -r "OpenPKG-2.1/Source/PLUS/" \
  -       -c -o /e/openpkg/ftp/release/2.1/SRC/PLUS/00INDEX.rdf.bz2 \
  -       /e/openpkg/ftp/release/2.1/SRC/PLUS/
  -
  -   echo "generating XML/RDF index OpenPKG-2.1/Source/ (with link to PLUS)"
  -   /e/openpkg/sw/bin/openpkg index \
  -       -C /e/openpkg/tmp/index.21.cache \
  -       -i -r "OpenPKG-2.1/Source/" \
  -       -c -o /e/openpkg/ftp/release/2.1/SRC/00INDEX.rdf.bz2 \
  -       /e/openpkg/ftp/release/2.1/SRC/
  -
  -   echo "generating XML/RDF index OpenPKG-2.1/Update/"
  -   /e/openpkg/sw/bin/openpkg index \
  -       -C /e/openpkg/tmp/index.21.cache \
  -       -i -r "OpenPKG-2.1/Update/" \
  -       -c -o /e/openpkg/ftp/release/2.1/UPD/00INDEX.rdf.bz2 \
  -       /e/openpkg/ftp/release/2.1/UPD/
  -
  -   for p in \
  -       alpha-freebsd5.2 \
  -       hppa-hpux11.11 \
  -       ix86-debian3.0 \
  -       ix86-debian3.1 \
  -       ix86-fedora2 \
  -       ix86-freebsd4.10 \
  -       ix86-freebsd5.2 \
  -       ix86-gentoo1.4.16 \
  -       ix86-mandrake10.0 \
  -       ix86-netbsd1.6.2 \
  -       ix86-rhel3 \
  -       ix86-rhl9 \
  -       ix86-solaris10 \
  -       ix86-solaris9 \
  -       ix86-suse9.0 \
  -       ix86-suse9.1 \
  -       sparc64-netbsd1.6.2 \
  -       sparc64-solaris10 \
  -       sparc64-solaris2.6 \
  -       sparc64-solaris8 \
  -       sparc64-solaris9 \
  -       ;do
  -       echo "generating XML/RDF index OpenPKG-2.1/Binary/$p/"
  -       /e/openpkg/sw/bin/openpkg index \
  -           -C /e/openpkg/tmp/index.21.cache \
  -           -i -r "OpenPKG-2.1/Binary/$p/" \
  -           -c -o /e/openpkg/ftp/release/2.1/BIN/$p/00INDEX.rdf.bz2 \
  -           -p $p \
  -           /e/openpkg/ftp/release/2.1/BIN/$p/
  -       done
  +  #==== finish and clean filesystem
  +  $ ssh [EMAIL PROTECTED]
  +  # chown -R openpkg:openpkg /v/openpkg/ftp/release/2.5
  +  # find /v/openpkg/ftp/release/2.5/ -type f | xargs chmod 644
  +  # find /v/openpkg/ftp/release/2.5/ -type d | xargs chmod 755
  +  # chown openpkg-ftp:openpkg-ftp /v/openpkg/ftp/release/2.5/UPD/00UPLOAD
  +  # chmod 664 /v/openpkg/ftp/release/2.5/UPD/00UPLOAD
  +  # find /v/openpkg/ftp/release/2.5/ -depth | xargs touch -t 200510190205
   
     # create CDROM ISO-images
     $ ssh [EMAIL PROTECTED]
  -  $ mkisofs \
  -        -v -r -J \
  -        -A "OpenPKG N.M-RELEASE (Source)" \
  -        -V "OpenPKG N.M-RELEASE (Source)" \
  -        -P "The OpenPKG Project <[EMAIL PROTECTED]>" \
  -        -p "The OpenPKG Project <[EMAIL PROTECTED]>" \
  -        -o /e/openpkg/ftp/release/N.M/ISO/OpenPKG-N.M-RELEASE-SRC.iso \
  -        /e/openpkg/ftp/release/N.M/SRC
  -  $ mkisofs \
  -        -v -r -J \
  -        -A "OpenPKG N.M-RELEASE (Binary)" \
  -        -V "OpenPKG N.M-RELEASE (Binary)" \
  -        -P "The OpenPKG Project <[EMAIL PROTECTED]>" \
  -        -p "The OpenPKG Project <[EMAIL PROTECTED]>" \
  -        -o /e/openpkg/ftp/release/N.M/ISO/OpenPKG-N.M-RELEASE-BIN.iso \
  -        /e/openpkg/ftp/release/N.M/BIN
  +  o create 00READMEs before ISOs
  +  o edit and run ./do.re-mkiso
  +  o edit ISO/00README and add MD5 checksums
  +  # chown -R openpkg:openpkg /v/openpkg/ftp/release/2.5/ISO
  +  # chmod -R 644 /v/openpkg/ftp/release/2.5/ISO
  +  # touch -t 200510190205 /v/openpkg/ftp/release/2.5/ISO/*
  +  # find /v/openpkg/ftp/release/2.5/ -depth | xargs touch -t 200510190205
  +
  +  # check CDROM ISO images
     $ ssh [EMAIL PROTECTED]
  -  # vnconfig /dev/vn0c 
/e/openpkg/ftp/release/N.M/ISO/OpenPKG-N.M-RELEASE-SRC.iso
  -  # mount -t cd9660 /dev/vn0c /mnt
  -  # umount /mnt
  -  # ls -l /mnt
  -  # vnconfig -d /dev/vn0c
  -  # vnconfig -u /dev/vn0c
  -  # vnconfig /dev/vn0c 
/e/openpkg/ftp/release/N.M/ISO/OpenPKG-N.M-RELEASE-BIN.iso
  -  # mount -t cd9660 /dev/vn0c /mnt
  -  # umount /mnt
  -  # ls -l /mnt
  -  # vnconfig -d /dev/vn0c
  -  # vnconfig -u /dev/vn0c
  -  # exit
  +  # cd /v/openpkg/ftp/release/2.5/ISO/
  +  # /v/openpkg/etc/do.re-ckiso
   
     Drop beta download restrictions from ftp.openpkg.org
     Drop beta download restrictions from rsync.openpkg.org
  -  create 00READMEs before ISOs
  -  Time stamp all release files before creating ISOs
  -  Check SHA1/MD5 and signature of all RPMs
  -  Make sure CORE and BASE do not include "nameversioned" packages (e.g. 
mysql41 in 2.2 and postgresql7 in 2.3)
  -  Keep Buildfarm status (db.sqlite + matrix.html), logs and "rpm -qplv"
  -  aux.prepreq
  -
  +  Keep Buildfarm status (db.sqlite + matrix.html), logs and create a "rpm 
-qplv" list
   
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     openpkg-cvs@openpkg.org

Reply via email to