centos: avoid head pipe failure
I just saw in the trace output of a failure > grep -o 'CentOS-.[^>]*GenericCloud-.[^>]*.qcow2' > sort -r > head -1 sort: fflush failed: 'standard output': Broken pipe sort: write error i.e. the "head -1" has exited after reading one line, but "sort -r" still wants to write and thus has hit a pipe failure, and because we run with "-o pipefail" this has halted the script. This seems like it has been there more or less forever, maybe we just got lucky hitting it now? Anyway, we can work around this by using a process substitution and passing the output of this into head, this way we won't hit a pipe failure. I also updated the fedora path as it does the same thing. Change-Id: I44d97e5bb31702aacf396e0229329a2ef9c64f2f
This commit is contained in:
parent
adc40db9e9
commit
5bc9e87da1
@ -61,7 +61,7 @@ else
|
|||||||
else
|
else
|
||||||
dib_release_path=${DIB_RELEASE}
|
dib_release_path=${DIB_RELEASE}
|
||||||
fi
|
fi
|
||||||
BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-$(curl -s https://cloud.centos.org/centos/${dib_release_path}/${ARCH}/images/ | grep -o "CentOS-.[^>]*${DIB_FLAVOR}-.[^>]*.qcow2" | sort -r | head -1)}
|
BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-$(head -1 < <(curl -s https://cloud.centos.org/centos/${dib_release_path}/${ARCH}/images/ | grep -o "CentOS-.[^>]*${DIB_FLAVOR}-.[^>]*.qcow2" | sort -r))}
|
||||||
fi
|
fi
|
||||||
BASE_IMAGE_TAR=$BASE_IMAGE_FILE.tgz
|
BASE_IMAGE_TAR=$BASE_IMAGE_FILE.tgz
|
||||||
IMAGE_LOCATION=$DIB_CLOUD_IMAGES/$BASE_IMAGE_FILE
|
IMAGE_LOCATION=$DIB_CLOUD_IMAGES/$BASE_IMAGE_FILE
|
||||||
|
@ -44,7 +44,7 @@ else
|
|||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
SUBRELEASE=$(curl -Ls $DIB_CLOUD_IMAGES/ | grep -o -P '(?<=Fedora-Cloud-Base-'${DIB_RELEASE}'-).*?(?=.'${ARCH}'.qcow2")' | sort -r | head -1)
|
SUBRELEASE=$(head -1 < <(curl -Ls $DIB_CLOUD_IMAGES/ | grep -o -P '(?<=Fedora-Cloud-Base-'${DIB_RELEASE}'-).*?(?=.'${ARCH}'.qcow2")' | sort -r))
|
||||||
BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-Fedora-Cloud-Base-$DIB_RELEASE-$SUBRELEASE.$ARCH.qcow2}
|
BASE_IMAGE_FILE=${BASE_IMAGE_FILE:-Fedora-Cloud-Base-$DIB_RELEASE-$SUBRELEASE.$ARCH.qcow2}
|
||||||
BASE_IMAGE_TAR=Fedora-Cloud-Base-$DIB_RELEASE-$SUBRELEASE.$ARCH.tgz
|
BASE_IMAGE_TAR=Fedora-Cloud-Base-$DIB_RELEASE-$SUBRELEASE.$ARCH.tgz
|
||||||
IMAGE_LOCATION=$DIB_CLOUD_IMAGES/$BASE_IMAGE_FILE
|
IMAGE_LOCATION=$DIB_CLOUD_IMAGES/$BASE_IMAGE_FILE
|
||||||
|
Loading…
Reference in New Issue
Block a user