Merge "Switch to using $() for subshells, part 2"

This commit is contained in:
Jenkins 2015-06-10 13:00:16 +00:00 committed by Gerrit Code Review
commit f6f0d175bc
17 changed files with 48 additions and 48 deletions

View File

@ -1,9 +1,9 @@
#!/bin/bash -xe #!/bin/bash -xe
WORKSPACE=`pwd` WORKSPACE=$(pwd)
mkdir -p logs mkdir -p logs
rm -f logs/* rm -f logs/*
cd `dirname "$0"` cd $(dirname "$0")
echo "Jenkins: resetting hosts..." echo "Jenkins: resetting hosts..."
for host in $HEAD_HOST ${COMPUTE_HOSTS//,/ }; do for host in $HEAD_HOST ${COMPUTE_HOSTS//,/ }; do
@ -33,8 +33,8 @@ cd ~/devstack
source stackrc source stackrc
for image_url in ${IMAGE_URLS//,/ }; do for image_url in ${IMAGE_URLS//,/ }; do
# Downloads the image (uec ami+aki style), then extracts it. # Downloads the image (uec ami+aki style), then extracts it.
IMAGE_FNAME=`echo "$image_url" | python -c "import sys; print sys.stdin.read().split('/')[-1]"` IMAGE_FNAME=$(echo "$image_url" | python -c "import sys; print sys.stdin.read().split('/')[-1]")
IMAGE_NAME=`echo "$IMAGE_FNAME" | python -c "import sys; print sys.stdin.read().split('.tar.gz')[0].split('.tgz')[0]"` IMAGE_NAME=$(echo "$IMAGE_FNAME" | python -c "import sys; print sys.stdin.read().split('.tar.gz')[0].split('.tgz')[0]")
if [ ! -f files/$IMAGE_FNAME ]; then if [ ! -f files/$IMAGE_FNAME ]; then
wget -c $image_url -O files/$IMAGE_FNAME wget -c $image_url -O files/$IMAGE_FNAME
fi fi

View File

@ -37,7 +37,7 @@ fi
# Normally a branch name will just be a file, but we can have branches # Normally a branch name will just be a file, but we can have branches
# like stable/diablo, so in that case, make the "stable/" directory # like stable/diablo, so in that case, make the "stable/" directory
# if needed: # if needed:
mkdir -p `dirname $BRANCH` mkdir -p $(dirname $BRANCH)
# Read and update the value for the branch # Read and update the value for the branch
if [ -e "$BRANCH" ]; then if [ -e "$BRANCH" ]; then

View File

@ -175,10 +175,10 @@ EOF
# See if there is an open change in the transifex/translations # See if there is an open change in the transifex/translations
# topic. If so, get the change id for the existing change for use # topic. If so, get the change id for the existing change for use
# in the commit msg. # in the commit msg.
change_info=`ssh -p 29418 proposal-bot@review.openstack.org gerrit query --current-patch-set status:open project:$FULL_PROJECT topic:transifex/translations owner:proposal-bot` change_info=$(ssh -p 29418 proposal-bot@review.openstack.org gerrit query --current-patch-set status:open project:$FULL_PROJECT topic:transifex/translations owner:proposal-bot)
previous=`echo "$change_info" | grep "^ number:" | awk '{print $2}'` previous=$(echo "$change_info" | grep "^ number:" | awk '{print $2}')
if [ -n "$previous" ]; then if [ -n "$previous" ]; then
change_id=`echo "$change_info" | grep "^change" | awk '{print $2}'` change_id=$(echo "$change_info" | grep "^change" | awk '{print $2}')
# Read returns a non zero value when it reaches EOF. Because we use a # Read returns a non zero value when it reaches EOF. Because we use a
# heredoc here it will always reach EOF and return a nonzero value. # heredoc here it will always reach EOF and return a nonzero value.
# Disable -e temporarily to get around the read. # Disable -e temporarily to get around the read.
@ -199,7 +199,7 @@ EOF
# run. # run.
if [ -n "$previous" ]; then if [ -n "$previous" ]; then
# Use the JSON format since it is very compact and easy to grep # Use the JSON format since it is very compact and easy to grep
change_info=`ssh -p 29418 proposal-bot@review.openstack.org gerrit query --current-patch-set --format=JSON $change_id` change_info=$(ssh -p 29418 proposal-bot@review.openstack.org gerrit query --current-patch-set --format=JSON $change_id)
# Check for: # Check for:
# 1) Workflow approval (+1) # 1) Workflow approval (+1)
# 2) no -1/-2 by Jenkins # 2) no -1/-2 by Jenkins
@ -228,7 +228,7 @@ function send_patch {
fi fi
# Don't send a review if nothing has changed. # Don't send a review if nothing has changed.
if [ `git diff --cached |wc -l` -gt 0 ]; then if [ $(git diff --cached | wc -l) -gt 0 ]; then
# Commit and review # Commit and review
git commit -F- <<EOF git commit -F- <<EOF
$COMMIT_MSG $COMMIT_MSG
@ -298,7 +298,7 @@ function setup_django_openstack_auth {
# Filter out files that we do not want to commit # Filter out files that we do not want to commit
function filter_commits { function filter_commits {
# Don't add new empty files. # Don't add new empty files.
for f in `git diff --cached --name-only --diff-filter=A`; do for f in $(git diff --cached --name-only --diff-filter=A); do
# Files should have at least one non-empty msgid string. # Files should have at least one non-empty msgid string.
if ! grep -q 'msgid "[^"]' "$f" ; then if ! grep -q 'msgid "[^"]' "$f" ; then
git reset -q "$f" git reset -q "$f"
@ -312,7 +312,7 @@ function filter_commits {
# Also, don't send files if only .pot files would be changed. # Also, don't send files if only .pot files would be changed.
PO_CHANGE=0 PO_CHANGE=0
# Don't iterate over deleted files # Don't iterate over deleted files
for f in `git diff --cached --name-only --diff-filter=AM`; do for f in $(git diff --cached --name-only --diff-filter=AM); do
# It's ok if the grep fails # It's ok if the grep fails
set +e set +e
changed=$(git diff --cached "$f" \ changed=$(git diff --cached "$f" \
@ -337,7 +337,7 @@ function filter_commits {
# and those changes can be ignored as they give no benefit on # and those changes can be ignored as they give no benefit on
# their own. # their own.
if [ $PO_CHANGE -eq 0 ] ; then if [ $PO_CHANGE -eq 0 ] ; then
for f in `git diff --cached --name-only` ; do for f in $(git diff --cached --name-only) ; do
git reset -q "$f" git reset -q "$f"
git checkout -- "$f" git checkout -- "$f"
done done
@ -349,21 +349,21 @@ function filter_commits {
function cleanup_po_files { function cleanup_po_files {
local project=$1 local project=$1
for i in `find $project/locale -name *.po `; do for i in $(find $project/locale -name *.po) ; do
# Output goes to stderr, so redirect to stdout to catch it. # Output goes to stderr, so redirect to stdout to catch it.
trans=`msgfmt --statistics -o /dev/null "$i" 2>&1` trans=$(msgfmt --statistics -o /dev/null "$i" 2>&1)
check="^0 translated messages" check="^0 translated messages"
if [[ $trans =~ $check ]] ; then if [[ $trans =~ $check ]] ; then
# Nothing is translated, remove the file. # Nothing is translated, remove the file.
git rm -f "$i" git rm -f "$i"
else else
if [[ $trans =~ " translated message" ]] ; then if [[ $trans =~ " translated message" ]] ; then
trans_no=`echo $trans|sed -e 's/ translated message.*$//'` trans_no=$(echo $trans|sed -e 's/ translated message.*$//')
else else
trans_no=0 trans_no=0
fi fi
if [[ $trans =~ " untranslated message" ]] ; then if [[ $trans =~ " untranslated message" ]] ; then
untrans_no=`echo $trans|sed -e 's/^.* \([0-9]*\) untranslated message.*/\1/'` untrans_no=$(echo $trans|sed -e 's/^.* \([0-9]*\) untranslated message.*/\1/')
else else
untrans_no=0 untrans_no=0
fi fi
@ -388,7 +388,7 @@ function cleanup_po_files {
function compress_po_files { function compress_po_files {
local directory=$1 local directory=$1
for i in `find $directory -name *.po `; do for i in $(find $directory -name *.po) ; do
msgattrib --translated --no-location --sort-output "$i" \ msgattrib --translated --no-location --sort-output "$i" \
--output="${i}.tmp" --output="${i}.tmp"
mv "${i}.tmp" "$i" mv "${i}.tmp" "$i"
@ -404,7 +404,7 @@ function compress_po_files {
function compress_manual_po_files { function compress_manual_po_files {
local directory=$1 local directory=$1
local glossary=$2 local glossary=$2
for i in `find $directory -name *.po `; do for i in $(find $directory -name *.po) ; do
if [ "$glossary" -eq "0" ] ; then if [ "$glossary" -eq "0" ] ; then
if [[ $i =~ "/glossary/" ]] ; then if [[ $i =~ "/glossary/" ]] ; then
continue continue
@ -425,7 +425,7 @@ function compress_manual_po_files {
function compress_non_en_po_files { function compress_non_en_po_files {
local directory=$1 local directory=$1
for i in `find $directory -name *.po `; do for i in $(find $directory -name *.po); do
if [[ $i =~ "/locale/en/LC_MESSAGES/" ]] ; then if [[ $i =~ "/locale/en/LC_MESSAGES/" ]] ; then
continue continue
fi fi

View File

@ -22,10 +22,10 @@ META_DATA_FILE=$3
PLUGIN_FILE=$4 PLUGIN_FILE=$4
# Strip project name and extension leaving only the version. # Strip project name and extension leaving only the version.
VERSION=`echo ${PLUGIN_FILE} | sed -n "s/${PROJECT}-\(.*\).hpi/\1/p"` VERSION=$(echo ${PLUGIN_FILE} | sed -n "s/${PROJECT}-\(.*\).hpi/\1/p")
# generate pom file with version info # generate pom file with version info
POM_IN_ZIP=`unzip -Z -1 ${PLUGIN_FILE}|grep pom.xml` POM_IN_ZIP=$(unzip -Z -1 ${PLUGIN_FILE}|grep pom.xml)
unzip -o -j ${PLUGIN_FILE} ${POM_IN_ZIP} unzip -o -j ${PLUGIN_FILE} ${POM_IN_ZIP}
sed "s/\${{project-version}}/${VERSION}/g" <pom.xml >${META_DATA_FILE} sed "s/\${{project-version}}/${VERSION}/g" <pom.xml >${META_DATA_FILE}

View File

@ -2,6 +2,6 @@
lvremove -f /dev/main/last_root lvremove -f /dev/main/last_root
lvrename /dev/main/root last_root lvrename /dev/main/root last_root
lvcreate -L20G -s -n root /dev/main/orig_root lvcreate -L20G -s -n root /dev/main/orig_root
APPEND="`cat /proc/cmdline`" APPEND="$(cat /proc/cmdline)"
kexec -l /vmlinuz --initrd=/initrd.img --append="$APPEND" kexec -l /vmlinuz --initrd=/initrd.img --append="$APPEND"
nohup bash -c "sleep 2; kexec -e" </dev/null >/dev/null 2>&1 & nohup bash -c "sleep 2; kexec -e" </dev/null >/dev/null 2>&1 &

View File

@ -22,10 +22,10 @@ META_DATA_FILE=$3
PLUGIN_FILE=$4 PLUGIN_FILE=$4
# Strip project name and extension leaving only the version. # Strip project name and extension leaving only the version.
VERSION=`echo ${PLUGIN_FILE} | sed -n "s/${PROJECT}-\(.*\).jar/\1/p"` VERSION=$(echo ${PLUGIN_FILE} | sed -n "s/${PROJECT}-\(.*\).jar/\1/p")
# generate pom file with version info # generate pom file with version info
POM_IN_ZIP=`unzip -Z -1 ${PLUGIN_FILE}|grep pom.xml` POM_IN_ZIP=$(unzip -Z -1 ${PLUGIN_FILE}|grep pom.xml)
unzip -o -j ${PLUGIN_FILE} ${POM_IN_ZIP} unzip -o -j ${PLUGIN_FILE} ${POM_IN_ZIP}
sed "s/\${{project-version}}/${VERSION}/g" <pom.xml >${META_DATA_FILE} sed "s/\${{project-version}}/${VERSION}/g" <pom.xml >${META_DATA_FILE}

View File

@ -34,8 +34,8 @@ git review -s
git remote update git remote update
git checkout master git checkout master
git reset --hard origin/master git reset --hard origin/master
MASTER_MINOR=`git describe|cut -d. -f-2` MASTER_MINOR=$(git describe|cut -d. -f-2)
TAG_MINOR=`echo $TAG|cut -d. -f-2` TAG_MINOR=$(echo $TAG | cut -d. -f-2)
# If the tag is for an earlier version than master's, skip # If the tag is for an earlier version than master's, skip
if [ "$(echo $(echo -e "$MASTER_MINOR\n$TAG_MINOR"|sort -V))" \ if [ "$(echo $(echo -e "$MASTER_MINOR\n$TAG_MINOR"|sort -V))" \

View File

@ -44,7 +44,7 @@ tx pull -f
extract_messages_log "$PROJECT" extract_messages_log "$PROJECT"
# Update existing translation files with extracted messages. # Update existing translation files with extracted messages.
PO_FILES=`find ${PROJECT}/locale -name "${PROJECT}.po"` PO_FILES=$(find ${PROJECT}/locale -name "${PROJECT}.po")
if [ -n "$PO_FILES" ]; then if [ -n "$PO_FILES" ]; then
# Use updated .pot file to update translations # Use updated .pot file to update translations
python setup.py $QUIET update_catalog \ python setup.py $QUIET update_catalog \
@ -55,7 +55,7 @@ fi
# add the messages with the default keywords. Therefore use msgmerge # add the messages with the default keywords. Therefore use msgmerge
# directly. # directly.
for level in $LEVELS ; do for level in $LEVELS ; do
PO_FILES=`find ${PROJECT}/locale -name "${PROJECT}-log-${level}.po"` PO_FILES=$(find ${PROJECT}/locale -name "${PROJECT}-log-${level}.po")
if [ -n "$PO_FILES" ]; then if [ -n "$PO_FILES" ]; then
for f in $PO_FILES ; do for f in $PO_FILES ; do
echo "Updating $f" echo "Updating $f"

View File

@ -36,7 +36,7 @@ tx pull -f
# Update the .pot file # Update the .pot file
python setup.py extract_messages python setup.py extract_messages
PO_FILES=`find openstack_auth/locale -name '*.po'` PO_FILES=$(find openstack_auth/locale -name '*.po')
if [ -n "$PO_FILES" ]; then if [ -n "$PO_FILES" ]; then
# Use updated .pot file to update translations # Use updated .pot file to update translations
python setup.py update_catalog --no-fuzzy-matching --ignore-obsolete=true python setup.py update_catalog --no-fuzzy-matching --ignore-obsolete=true

View File

@ -79,7 +79,7 @@ for PROJECT in $PROJECTS; do
if git branch -a | grep -q "^ remotes/origin/$ZUUL_REF$" ; then if git branch -a | grep -q "^ remotes/origin/$ZUUL_REF$" ; then
BRANCH=$ZUUL_REF BRANCH=$ZUUL_REF
elif echo $ZUUL_REF | grep -q "^stable/" ; then elif echo $ZUUL_REF | grep -q "^stable/" ; then
FALLBACK=`echo $ZUUL_REF | sed s,^stable/,proposed/,` FALLBACK=$(echo $ZUUL_REF | sed s,^stable/,proposed/,)
if git branch -a | grep -q "^ remotes/origin/$FALLBACK$" ; then if git branch -a | grep -q "^ remotes/origin/$FALLBACK$" ; then
BRANCH=$FALLBACK BRANCH=$FALLBACK
fi fi

View File

@ -19,12 +19,12 @@
PROJECT=$1 PROJECT=$1
TARBALL_SITE=$2 TARBALL_SITE=$2
TAG=`echo $ZUUL_REF | sed 's/^refs.tags.//'` TAG=$(echo $ZUUL_REF | sed 's/^refs.tags.//')
# Look in the setup.cfg to determine if a package name is specified, but # Look in the setup.cfg to determine if a package name is specified, but
# fall back on the project name if necessary # fall back on the project name if necessary
DISTNAME=`/usr/local/jenkins/slave_scripts/pypi-extract-name.py --tarball \ DISTNAME=$(/usr/local/jenkins/slave_scripts/pypi-extract-name.py --tarball \
|| echo $PROJECT` || echo $PROJECT)
FILENAME="$DISTNAME-$TAG.tar.gz" FILENAME="$DISTNAME-$TAG.tar.gz"
rm -rf *tar.gz rm -rf *tar.gz

View File

@ -19,14 +19,14 @@
PROJECT=$1 PROJECT=$1
TARBALL_SITE=$2 TARBALL_SITE=$2
TAG=`echo $ZUUL_REF | sed 's/^refs.tags.//'` TAG=$(echo $ZUUL_REF | sed 's/^refs.tags.//')
# Look in the setup.cfg to determine if a package name is specified, but # Look in the setup.cfg to determine if a package name is specified, but
# fall back on the project name if necessary # fall back on the project name if necessary
DISTNAME=`/usr/local/jenkins/slave_scripts/pypi-extract-name.py --wheel \ DISTNAME=$(/usr/local/jenkins/slave_scripts/pypi-extract-name.py --wheel \
|| echo $PROJECT` || echo $PROJECT)
# Look in the setup.cfg to see if this is a universal wheel or not # Look in the setup.cfg to see if this is a universal wheel or not
WHEELTYPE=`/usr/local/jenkins/slave_scripts/pypi-extract-universal.py` WHEELTYPE=$(/usr/local/jenkins/slave_scripts/pypi-extract-universal.py)
FILENAME="$DISTNAME-$TAG-$WHEELTYPE-none-any.whl" FILENAME="$DISTNAME-$TAG-$WHEELTYPE-none-any.whl"
rm -rf *.whl rm -rf *.whl

View File

@ -29,16 +29,16 @@ elif `echo $ZUUL_REFNAME | grep refs/tags/ >/dev/null` ; then
# at BUILD_DIR remains. When Jenkins copies this file the root developer # at BUILD_DIR remains. When Jenkins copies this file the root developer
# docs are always the latest release with older tags available under the # docs are always the latest release with older tags available under the
# root in the tagname dir. # root in the tagname dir.
TAG=`echo $ZUUL_REFNAME | sed 's/refs.tags.//'` TAG=$(echo $ZUUL_REFNAME | sed 's/refs.tags.//')
if [ ! -z $TAG ] ; then if [ ! -z $TAG ] ; then
if echo $ZUUL_PROJECT | grep 'python-.*client' ; then if echo $ZUUL_PROJECT | grep 'python-.*client' ; then
# This is a hack to ignore the year.release tags in python-*client # This is a hack to ignore the year.release tags in python-*client
# projects. # projects.
LATEST=`git tag | sed -n -e '/^2012\..*$/d' -e '/^\([0-9]\+\.\?\)\+$/p' | sort -V | tail -1` LATEST=$(git tag | sed -n -e '/^2012\..*$/d' -e '/^\([0-9]\+\.\?\)\+$/p' | sort -V | tail -1)
else else
# Take all tags of the form (number.)+, sort them, then take the # Take all tags of the form (number.)+, sort them, then take the
# largest # largest
LATEST=`git tag | sed -n '/^\([0-9]\+\.\?\)\+$/p' | sort -V | tail -1` LATEST=$(git tag | sed -n '/^\([0-9]\+\.\?\)\+$/p' | sort -V | tail -1)
fi fi
if [ "$TAG" = "$LATEST" ] ; then if [ "$TAG" = "$LATEST" ] ; then
# Copy the docs into a subdir if this is a tagged build # Copy the docs into a subdir if this is a tagged build
@ -56,7 +56,7 @@ elif `echo $ZUUL_REFNAME | grep stable/ >/dev/null` ; then
# Put stable release changes in dir named after stable release under the # Put stable release changes in dir named after stable release under the
# build dir. When Jenkins copies these files they will be accessible under # build dir. When Jenkins copies these files they will be accessible under
# the developer docs root using the stable release's name. # the developer docs root using the stable release's name.
BRANCH=`echo $ZUUL_REFNAME | sed 's/stable.//'` BRANCH=$(echo $ZUUL_REFNAME | sed 's/stable.//')
if [ ! -z $BRANCH ] ; then if [ ! -z $BRANCH ] ; then
# Move the docs into a subdir if this is a stable branch build # Move the docs into a subdir if this is a stable branch build
mkdir doc/build/$BRANCH mkdir doc/build/$BRANCH

View File

@ -117,7 +117,7 @@ export PYTHON=$bin_path/python
export NOSE_WITH_XUNIT=1 export NOSE_WITH_XUNIT=1
export NOSE_WITH_HTML_OUTPUT=1 export NOSE_WITH_HTML_OUTPUT=1
export NOSE_HTML_OUT_FILE='nose_results.html' export NOSE_HTML_OUT_FILE='nose_results.html'
export TMPDIR=`/bin/mktemp -d` export TMPDIR=$(/bin/mktemp -d)
trap "rm -rf $TMPDIR" EXIT trap "rm -rf $TMPDIR" EXIT
cat /etc/image-hostname.txt cat /etc/image-hostname.txt

View File

@ -1,4 +1,4 @@
#!/bin/bash -xe #!/bin/bash -xe
mkdir -p target/ mkdir -p target/
/usr/bin/xmllint -noent $1 > target/`basename $1` /usr/bin/xmllint -noent $1 > target/$(basename $1)

View File

@ -37,7 +37,7 @@ setup_horizon
git add ${PROJECT}/locale/en/LC_MESSAGES/* git add ${PROJECT}/locale/en/LC_MESSAGES/*
git add openstack_dashboard/locale/en/LC_MESSAGES/* git add openstack_dashboard/locale/en/LC_MESSAGES/*
if [ `git diff --cached | egrep -v "(POT-Creation-Date|^[\+\-]#|^\+{3}|^\-{3})" | egrep -c "^[\-\+]"` -gt 0 ]; then if [ $(git diff --cached | egrep -v "(POT-Creation-Date|^[\+\-]#|^\+{3}|^\-{3})" | egrep -c "^[\-\+]") -gt 0 ]; then
# Push source file changes to transifex # Push source file changes to transifex
tx --debug --traceback push -s tx --debug --traceback push -s
fi fi

View File

@ -5,11 +5,11 @@
# #
# get version info from scm # get version info from scm
SCM_TAG=`git describe --abbrev=0 --tags` || true SCM_TAG=$(git describe --abbrev=0 --tags) || true
SCM_SHA=`git rev-parse --short HEAD` || true SCM_SHA=$(git rev-parse --short HEAD) || true
# assumes format is like this '0.0.4-2-g135721c' # assumes format is like this '0.0.4-2-g135721c'
COMMITS_SINCE_TAG=`git describe | awk '{split($0,a,"-"); print a[2]}'` || true COMMITS_SINCE_TAG=$(git describe | awk '{split($0,a,"-"); print a[2]}') || true
# just use git sha if there is no tag yet. # just use git sha if there is no tag yet.
if [[ "${SCM_TAG}" == "" ]]; then if [[ "${SCM_TAG}" == "" ]]; then