mirror of
https://github.com/dart-lang/sdk
synced 2024-09-05 16:41:07 +00:00
![Jonas Termansen](/assets/img/avatar_default.png)
Change-Id: I43346ff69e6b82f700a06b52bdff891122d38572 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128551 Reviewed-by: Alexander Thomas <athom@google.com>
68 lines
1.9 KiB
Bash
Executable file
68 lines
1.9 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.
|
|
EOF
|