Difference between revisions of "Pidora SOP"
(→Example Livemedia-Creator Command) |
(→Mash Command Line Details) |
||
Line 26: | Line 26: | ||
== Mash Config Files == | == Mash Config Files == | ||
* config file here | * config file here | ||
+ | == Mash File Configuration Details == | ||
+ | <pre>/usr/local/bin/mashrun-pidora-18</pre> | ||
+ | |||
+ | <pre> | ||
+ | #!/bin/bash | ||
+ | # | ||
+ | # mashrun-pidora18 :: Compose a Pidora 18 repository | ||
+ | # | ||
+ | |||
+ | DISTNAME=pidora | ||
+ | RELEASE=18 | ||
+ | |||
+ | # Default mash output dir is unique by dates (YYYYMMDD) | ||
+ | BASEDIR=/mnt/koji/mash | ||
+ | MASHDIR=${BASEDIR}/${DISTNAME}-${RELEASE}-$(date +%Y%m%d) | ||
+ | |||
+ | # If there is already a compose output directory for today, | ||
+ | # append -HHMMSS | ||
+ | if [ -d ${MASHDIR} ] # If YYYYMMDD exists, add -HHMMSS | ||
+ | then | ||
+ | MASHDIR=${MASHDIR}-$(date +%H%M%S) | ||
+ | fi | ||
+ | mkdir -p ${MASHDIR} | ||
+ | |||
+ | { | ||
+ | |||
+ | exec 2>&1 | ||
+ | |||
+ | echo "Composing to ${MASHDIR}..." | ||
+ | |||
+ | time mash -o ${MASHDIR} ${DISTNAME}-${RELEASE} -f /usr/local/mash/comps-${DISTNAME}-${RELEASE}.xml.gz | ||
+ | |||
+ | rm ${BASEDIR}/${DISTNAME}-${RELEASE}-latest | ||
+ | ln -s ${MASHDIR} ${BASEDIR}/${DISTNAME}-${RELEASE}-latest | ||
+ | |||
+ | echo | ||
+ | echo "Warnings about unsigned packages are temporarily suppressed from email." | ||
+ | echo "Refer to ${MASHDIR}/mash.log for warnings." | ||
+ | |||
+ | }| cat -v | tee ${MASHDIR}/mash.log | fgrep -v '(signed with no key)' | mail -s "${DISTNAME}-${RELEASE} Mash Run" mashrun-alert | ||
+ | |||
+ | # The 'cat -v' above is there to prevent an unprintable code from throwing off the | ||
+ | # mail command. | ||
+ | </pre> | ||
+ | |||
== Mash Command Line Details == | == Mash Command Line Details == | ||
− | |||
= Composing Images = | = Composing Images = |
Revision as of 11:53, 9 April 2013
Intro
This page covers how one can manage the various needed parts of a complete release process. This includes the other SOP pages containing file configurations and/or quick command line references for the following procedures:
- Building packages
- Signing packages
- Creating repositories
- Composing images
Building Packages
Koji-Follow Configuration SOPs
How-To-Run
- ssh <your_username>@japan
- sudo kojiadmin
- screen -xr follow
- python ~/koji-follow.py ~/koji-follow.conf > ~/logs/kfo.log 2> ~/logs/kfe.log
Signing Packages
Sigul Configuration SOPs
- http://zenit.senecac.on.ca/wiki/index.php/Sigul_Signing_Server_Setup
- http://zenit.senecac.on.ca/wiki/index.php/Cdot_sigul_sop
- http://fedoraproject.org/wiki/Create_release_signing_key
Creating Repositories
Mash Config Files
- config file here
Mash File Configuration Details
/usr/local/bin/mashrun-pidora-18
#!/bin/bash # # mashrun-pidora18 :: Compose a Pidora 18 repository # DISTNAME=pidora RELEASE=18 # Default mash output dir is unique by dates (YYYYMMDD) BASEDIR=/mnt/koji/mash MASHDIR=${BASEDIR}/${DISTNAME}-${RELEASE}-$(date +%Y%m%d) # If there is already a compose output directory for today, # append -HHMMSS if [ -d ${MASHDIR} ] # If YYYYMMDD exists, add -HHMMSS then MASHDIR=${MASHDIR}-$(date +%H%M%S) fi mkdir -p ${MASHDIR} { exec 2>&1 echo "Composing to ${MASHDIR}..." time mash -o ${MASHDIR} ${DISTNAME}-${RELEASE} -f /usr/local/mash/comps-${DISTNAME}-${RELEASE}.xml.gz rm ${BASEDIR}/${DISTNAME}-${RELEASE}-latest ln -s ${MASHDIR} ${BASEDIR}/${DISTNAME}-${RELEASE}-latest echo echo "Warnings about unsigned packages are temporarily suppressed from email." echo "Refer to ${MASHDIR}/mash.log for warnings." }| cat -v | tee ${MASHDIR}/mash.log | fgrep -v '(signed with no key)' | mail -s "${DISTNAME}-${RELEASE} Mash Run" mashrun-alert # The 'cat -v' above is there to prevent an unprintable code from throwing off the # mail command.
Mash Command Line Details
Composing Images
Example Kickstart File
http://scotland.proximity.on.ca/raspberrypi/test-releases/rpfr18v6/latest/pidora-18.ks
Example Livemedia-Creator Command
livemedia-creator --make-disk --no-virt --image-only --keep-image --ks=rpfr-18.ks
- command details
-h, --help For more info on commands
--make-disk Build a disk image
--no-virt Use Anaconda's image install instead of virt-install
--image-only Exit after creating disk image.
--ks KS Kickstart file defining the install.
Example Post Script Execution
- post script details