Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 366123 - Fix "symlink script" on poseidon for multiple variants
Summary: Fix "symlink script" on poseidon for multiple variants
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Release Media
Classification: Unclassified
Component: Stages (show other bugs)
Hardware: All Linux
: Normal major (vote)
Assignee: Gentoo Release Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-05-05 17:43 UTC by Jeremy Olexa (darkside) (RETIRED)
Modified: 2012-08-18 16:41 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2011-05-05 17:43:23 UTC
darkside@poseidon /release/weekly/arm $ ls -l current-stage3-armv7*
lrwxrwxrwx 1 root root 39 May  5 12:30 current-stage3-armv7a -> 20110503/armv7a-hardfloat-linux-gnueabi
lrwxrwxrwx 1 root root 39 May  5 12:30 current-stage3-armv7a_hardfp -> 20110503/armv7a-hardfloat-linux-gnueabi

darkside@poseidon /release/weekly/arm $ ls 20110*/armv7*/*.bz2
20110408/armv7a-hardfloat-linux-gnueabi/stage3-armv7a_hardfp-20110408.tar.bz2
20110408/armv7a-unknown-linux-gnueabi/stage3-armv7a-20110408.tar.bz2
20110419/armv7a-unknown-linux-gnueabi/stage3-armv7a-20110419.tar.bz2
20110426/armv7a-hardfloat-linux-gnueabi/stage3-armv7a_hardfp-20110426.tar.bz2
20110503/armv7a-hardfloat-linux-gnueabi/stage3-armv7a_hardfp-20110503.tar.bz2

This is bad for two reasons:
1) It could cause the only variant to fall off the mirrors if no current* symlink references it.
2) It is wrong info.
Comment 1 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2011-05-19 18:23:50 UTC
The critical line is:

variant_path=$(find 20* -iname "${v}*" \( -name '*.tar.bz2' -o -
iname '*.iso' \) -print | sed -e "s,.*/$a/autobuilds/,,g" | sort -k1,1 -t/ | tail -n1 )

Note that the ${v}* matches both stage3-armv7a & stage3-armv7a_hardfp !!

These are the "$v" values:
darkside@poseidon /release/weekly/arm $ find 20* \( -iname '*.iso' -o -iname '*.tar.bz2' \) -printf '%f\n' |sed  -e 's,-20[012][0-9]\{5\}.*,,g' -r | sort | uniqstage3-armv4tl
stage3-armv5tel
stage3-armv6j
stage3-armv7a
stage3-armv7a_hardfp

which results in something like:

darkside@poseidon /release/weekly/arm $ find 20* -iname "stage3-armv7a*" \( -name '*.tar.bz2' -o -iname '*.iso' \) -print | sed -e "s,.*/$a/autobuilds/,,g" | sort -k1,1 -t/ | tail -n1
20110503/armv7a-hardfloat-linux-gnueabi/stage3-armv7a_hardfp-20110503.tar.bz2
Comment 2 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2011-05-23 14:30:42 UTC
I really can't see why we would need to match $v* instead of just $v, here are all the $v values. Can someone comment?

darkside@poseidon /release/weekly $ for i in *; do cd $i; echo -n "PWD: " ;pwd; find 20* \( -iname '*.iso' -o -iname '*.tar.bz2' \) -printf '%f\n' |sed  -e 's,-20[012][0-9]\{5\}.*,,g' -r | sort | uniq; cd ../;echo;done
PWD: /release/weekly/alpha
install-alpha-minimal
stage3-alpha

PWD: /release/weekly/amd64
install-amd64-minimal
stage3-amd64
stage3-amd64-hardened
stage3-amd64-hardened+nomultilib

PWD: /release/weekly/arm
stage3-armv4tl
stage3-armv5tel
stage3-armv6j
stage3-armv7a
stage3-armv7a_hardfp

PWD: /release/weekly/hppa
stage3-hppa1.1
stage3-hppa2.0

PWD: /release/weekly/ia64
install-ia64-minimal
stage3-ia64

PWD: /release/weekly/ppc
install-powerpc-minimal
stage3-ppc
stage3-ppc64-32ul
stage3-ppc64-64ul

PWD: /release/weekly/s390
stage3-s390
stage3-s390x

PWD: /release/weekly/sh
stage3-sh4
stage3-sh4a

PWD: /release/weekly/sparc
install-sparc64-minimal
stage3-sparc64
stage3-sparc64-multilib

PWD: /release/weekly/x86
install-x86-minimal
stage3-i486
stage3-i686
stage3-i686-hardened
Comment 3 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2011-11-23 18:14:18 UTC
So, I think this is a one character change to the script.

Here is what I'll do:
1) make a backup copy of /release/weekly
2) edit script
3) verify the "fix" didn't remove the wrong files
4) report back

Yey or nay on that plan?
Comment 4 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2011-11-28 17:09:17 UTC
FYI, jmbsvicetto told me to go ahead with this and I did, but it didn't go well. I'll try more testing in my sandbox. =/
Comment 5 Raúl Porcel (RETIRED) gentoo-dev 2012-07-02 17:33:33 UTC
What about:

variant_path=$(find 20* -iname "${v}-*" \( -name '*.tar.bz2' -o -
iname '*.iso' \) -print | sed -e "s,.*/$a/autobuilds/,,g" | sort -k1,1 -t/ | tail -n1 )

The only change is adding '-' between ${v} and *
Comment 6 Raúl Porcel (RETIRED) gentoo-dev 2012-07-22 17:39:33 UTC
I've applied my fix since it seems to work, i'm leaving this open to confirm it
Comment 7 Raúl Porcel (RETIRED) gentoo-dev 2012-08-18 16:41:09 UTC
Seems to work well