CI: circle.yml source of truth for Sauce build name Before the same algorithm was duplicated in shell form in circle.yml as well as in JS form in script/screenshots.js. Now it's in shell form twice, in two different places in circle.yml, but at least it's only in one file.
diff --git a/circle.yml b/circle.yml index ce28761..5718fb8 100644 --- a/circle.yml +++ b/circle.yml
@@ -102,6 +102,16 @@ # Start taking screenshots in the background while the unit tests are running - ? |- { + build_name="CircleCI build #$CIRCLE_BUILD_NUM" + if [ $CIRCLE_PR_NUMBER ]; then + build_name="$build_name: PR #$CIRCLE_PR_NUMBER" + [ "$CIRCLE_BRANCH" ] && build_name="$build_name ($CIRCLE_BRANCH)" + else + build_name="$build_name: $CIRCLE_BRANCH" + fi + build_name="$build_name @ ${CIRCLE_SHA1:0:7}" + export MQ_CI_BUILD_NAME="$build_name" + time { test -d node_modules/wd || npm install wd; } time node script/screenshots.js http://localhost:8000/test/visual.html \ && touch ~/screenshots_are_ready || echo EXIT STATUS $? | tee /dev/stderr > ~/screenshots_are_ready:
diff --git a/script/screenshots.js b/script/screenshots.js index 86f490a..6ac4efc 100644 --- a/script/screenshots.js +++ b/script/screenshots.js
@@ -19,14 +19,7 @@ var baseDir = process.env['CIRCLE_ARTIFACTS'] || '/tmp'; var url = process.argv[2]; var allImgsDir = baseDir+'/imgs'; -var build_name = 'CircleCI build #' + process.env.CIRCLE_BUILD_NUM; -if (process.env.CIRCLE_PR_NUMBER) { - build_name += ': PR #' + process.env.CIRCLE_PR_NUMBER; - if (process.env.CIRCLE_BRANCH) build_name += ' (' + process.env.CIRCLE_BRANCH + ')'; -} else { - build_name += ': ' + process.env.CIRCLE_BRANCH; -} -build_name += ' @ ' + process.env.CIRCLE_SHA1.slice(0, 7); +var build_name = process.env.MQ_CI_BUILD_NAME; fs.mkdirSync(allImgsDir);