blob: 11769ab009a88183160b7c3358ad7af9aa15685e [file] [log] [blame]
#!/bin/bash
# Copyright 2020 The Flutter Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Fetches corresponding dart sdk from CIPD for different platforms, builds
# an executable binary of bin/generate_jspb.dart to `build` folder.
#
# This only supports Linux, but can be generalized for Windows and Mac.
set -e
command -v cipd > /dev/null || {
echo "Please install CIPD (available from depot_tools) and add to path first.";
exit -1;
}
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd)"
cipd ensure -ensure-file $DIR/ensure_file -root $DIR
pushd $DIR/..
if [[ -d "build" ]]; then
echo "Please remove the build directory before proceeding"
exit -1
fi
mkdir -p build
tool/dart-sdk/bin/dart pub get
tool/dart-sdk/bin/dart compile exe bin/generate_jspb.dart -o build/ci_yaml_jspb
# Definitions related to uploading packages to CIPD
echo "# This file was auto-generated by Cocoon
# For more information, see https://github.com/flutter/cocoon
#
# This file defines information related to CIPD for distribution of generate_jspb.
package: flutter/ci_yaml/generate_jspb/linux-amd64
description: Binary to convert a ci.yaml to a JSON proto, which is readable by flutter.googlesource.com/infra.
data:
- file: ci_yaml_jspb
" > build/cipd.yaml
popd