mirror of
https://github.com/dart-lang/sdk
synced 2024-09-15 23:49:47 +00:00
c7b933a832
Previously, the script would look for an argument that is matches "co19" exactly. NNBD builders currently use "co19/LanguageFeatures/nnbd" as a test selector. This change will make the update script recognize both the raw suite, as well as "suite with selectors". Change-Id: I22d3274b7e99e4bfd96859bdb2ad47f4ff5acc37 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128721 Reviewed-by: William Hesse <whesse@google.com>
71 lines
2 KiB
Bash
Executable file
71 lines
2 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
# Uploads a new version of the co19 CIPD package.
|
|
# This script requires access to the dart-build-access group, which EngProd has.
|
|
|
|
set -e
|
|
set -x
|
|
|
|
if [ ! -e tests/co19 ]; then
|
|
echo "$0: error: Run this script at the root of the Dart SDK" >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Find the latest co19 commit.
|
|
rm -rf tests/co19/src.git
|
|
git clone https://dart.googlesource.com/co19 tests/co19/src.git
|
|
CO19=tests/co19/src.git
|
|
OLD=$(gclient getdep --var=co19_rev)
|
|
NEW=$(cd $CO19 && git fetch origin && git rev-parse origin/master)
|
|
|
|
git fetch origin
|
|
git branch cl-co19-roll-co19-to-$NEW origin/master
|
|
git checkout cl-co19-roll-co19-to-$NEW
|
|
|
|
# Build a cipd package of the commit.
|
|
BUILD_ID=$(bb add \
|
|
-commit https://dart.googlesource.com/co19/+/$NEW \
|
|
-json \
|
|
dart/ci/co19-roller \
|
|
| jq -r '.id')
|
|
bb collect -interval 10s $BUILD_ID
|
|
|
|
# Update DEPS:
|
|
gclient setdep --var=co19_rev=$NEW
|
|
|
|
# Make a nice commit. Don't include the '#' character to avoid referencing Dart
|
|
# SDK issues.
|
|
git commit DEPS -m \
|
|
"$(printf "[co19] Roll co19 to $NEW\n\n" &&
|
|
cd $CO19 &&
|
|
git log --date='format:%Y-%m-%d' --pretty='format:%ad %ae %s' \
|
|
$OLD..$NEW | tr -d '#')"
|
|
|
|
rm -rf tests/co19/src.git
|
|
|
|
GIT_EDITOR=true git cl upload
|
|
ISSUE=$(git config --get branch.cl-co19-roll-co19-to-$NEW.gerritissue)
|
|
|
|
BUILDERS=$(jq '.builder_configurations|
|
|
map(select(.steps|
|
|
any(.arguments|
|
|
select(.!=null)|
|
|
any(test("co19($|(/.*))")))))|
|
|
map(.builders)|
|
|
flatten|
|
|
sort' \
|
|
tools/bots/test_matrix.json \
|
|
| tr -d '[",]')
|
|
|
|
git cl try -B dart/try $(for BUILDER in $BUILDERS; do echo -b $BUILDER-try; done)
|
|
|
|
git cl web
|
|
|
|
set +x
|
|
cat << EOF
|
|
|
|
Wait for the builders to finish. If any failed, pre-approve them:
|
|
|
|
tools/sdks/dart-sdk/bin/dart tools/approve_results.dart \
|
|
-p https://dart-review.googlesource.com/c/sdk/+/$ISSUE
|
|
EOF
|