mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
Run non-perf sensitive tests on Cirrus (#27971)
* Run non-perf sensisitive tests on Cirrus
This commit is contained in:
parent
11ede46846
commit
2a644f301e
41
.cirrus.yml
41
.cirrus.yml
@ -69,6 +69,9 @@ task:
|
||||
- name: build_tests-linux
|
||||
env:
|
||||
SHARD: build_tests
|
||||
- name: integration_tests-linux
|
||||
env:
|
||||
SHARD: integration_tests
|
||||
test_script:
|
||||
# Unsetting CIRRUS_CHANGE_MESSAGE and CIRRUS_COMMIT_MESSAGE as they
|
||||
# might include non-ASCII characters which makes Gradle crash.
|
||||
@ -86,16 +89,12 @@ task:
|
||||
container:
|
||||
cpu: 4
|
||||
memory: 12G
|
||||
- name: codelabs-build-test
|
||||
env:
|
||||
SHARD: codelabs-build-test
|
||||
build_test_script: ./dev/bots/codelabs_build_test.sh
|
||||
|
||||
|
||||
task:
|
||||
use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true' && $CIRRUS_PR == ''
|
||||
use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true' # && $CIRRUS_PR == ''
|
||||
windows_container:
|
||||
image: cirrusci/windowsservercore:2016
|
||||
image: cirrusci/android-sdk:28-windowsservercore-ltsc2016
|
||||
os_version: 2016
|
||||
cpu: 4
|
||||
env:
|
||||
@ -135,6 +134,12 @@ task:
|
||||
container:
|
||||
cpu: 4
|
||||
memory: 12G
|
||||
- name: integration_tests-windows
|
||||
env:
|
||||
SHARD: integration_tests
|
||||
container:
|
||||
cpu: 4
|
||||
memory: 12G
|
||||
|
||||
task:
|
||||
use_compute_credits: $CIRRUS_USER_COLLABORATOR == 'true'
|
||||
@ -186,6 +191,13 @@ task:
|
||||
env:
|
||||
CIRRUS_WORKING_DIR: "/tmp/flutter sdk"
|
||||
COCOAPODS_DISABLE_STATS: true
|
||||
ANDROID_SDK_TOOLS_URL: https://dl.google.com/android/repository/sdk-tools-darwin-4333796.zip
|
||||
ANDROID_SDK_ROOT: $HOME/Android
|
||||
ANDROID_HOME: $HOME/Android
|
||||
OPEN_JDK_URL: https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u202-b08/OpenJDK8U-jdk_x64_mac_hotspot_8u202b08.tar.gz
|
||||
OPEN_JDK_REVISION: jdk8u202-b08
|
||||
JAVA_HOME: $HOME/Java/$OPEN_JDK_REVISION/Contents/Home
|
||||
PATH: "$PATH:$JAVA_HOME/bin:$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/tools/bin:$ANDROID_SDK_ROOT/platform-tools"
|
||||
# occasionally the clock on these machines is out of sync
|
||||
# with the actual time - this should help to verify
|
||||
print_date_script:
|
||||
@ -205,6 +217,16 @@ task:
|
||||
artifacts_cache:
|
||||
folder: bin/cache/artifacts
|
||||
fingerprint_script: echo $OS; cat bin/internal/engine.version
|
||||
# TODO(dnfield): If the OSX image starts including this, we can remove it. https://github.com/cirruslabs/osx-images/issues/3
|
||||
open_jdk_cache:
|
||||
folder: $HOME/Java
|
||||
fingerprint_script: echo $OPEN_JDK_URL; cat dev/bots/download_open_jdk.sh
|
||||
populate_script: dev/bots/download_open_jdk.sh
|
||||
# TODO(dnfield): If the OSX image starts including this, we can remove it. https://github.com/cirruslabs/osx-images/issues/3
|
||||
android_sdk_cache:
|
||||
folder: $ANDROID_SDK_ROOT
|
||||
fingerprint_script: echo $ANDROID_SDK_TOOLS_URL; cat dev/bots/download_android_sdk.sh
|
||||
populate_script: dev/bots/download_android_sdk.sh
|
||||
setup_script:
|
||||
- bin/flutter config --no-analytics
|
||||
- bin/flutter update-packages
|
||||
@ -228,6 +250,12 @@ task:
|
||||
container:
|
||||
cpu: 4
|
||||
memory: 12G
|
||||
- name: integration_tests-macos
|
||||
env:
|
||||
SHARD: integration_tests
|
||||
container:
|
||||
cpu: 4
|
||||
memory: 12G
|
||||
- name: add2app-macos
|
||||
env:
|
||||
SHARD: add2app_test
|
||||
@ -243,6 +271,7 @@ docker_builder:
|
||||
- tests-linux
|
||||
- tool_tests-linux
|
||||
- build_tests-linux
|
||||
- integration_tests-linux
|
||||
build_script: "$CIRRUS_WORKING_DIR/dev/ci/docker_linux/docker_build.sh"
|
||||
login_script: "$CIRRUS_WORKING_DIR/dev/ci/docker_linux/docker_login.sh"
|
||||
push_script: "$CIRRUS_WORKING_DIR/dev/ci/docker_linux/docker_push.sh"
|
||||
|
@ -47,7 +47,7 @@ dependencies:
|
||||
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
@ -76,4 +76,4 @@ dependencies:
|
||||
flutter:
|
||||
uses-material-design: true
|
||||
|
||||
# PUBSPEC CHECKSUM: 1baf
|
||||
# PUBSPEC CHECKSUM: a9b0
|
||||
|
27
dev/bots/download_android_sdk.sh
Executable file
27
dev/bots/download_android_sdk.sh
Executable file
@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ -z $ANDROID_SDK_TOOLS_URL || -z $ANDROID_HOME || -z $ANDROID_SDK_ROOT ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
curl -L $ANDROID_SDK_TOOLS_URL --output android_sdk_tools.zip
|
||||
|
||||
mkdir -p $ANDROID_SDK_ROOT
|
||||
unzip android_sdk_tools.zip -d $ANDROID_SDK_ROOT
|
||||
rm android_sdk_tools.zip
|
||||
|
||||
yes | $ANDROID_SDK_ROOT/tools/bin/sdkmanager --licenses
|
||||
$ANDROID_SDK_ROOT/tools/bin/sdkmanager tools
|
||||
$ANDROID_SDK_ROOT/tools/bin/sdkmanager platform-tools
|
||||
# this is large and we don't need it just yet
|
||||
# $ANDROID_SDK_ROOT/tools/bin/sdkmanager emulator
|
||||
$ANDROID_SDK_ROOT/tools/bin/sdkmanager "platforms;android-28" \
|
||||
"build-tools;28.0.3" \
|
||||
"platforms;android-27" \
|
||||
"build-tools;27.0.3" \
|
||||
"extras;google;m2repository" \
|
||||
"extras;android;m2repository"
|
||||
|
||||
|
14
dev/bots/download_open_jdk.sh
Executable file
14
dev/bots/download_open_jdk.sh
Executable file
@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ -z $OPEN_JDK_URL ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
mkdir -p $HOME/Java
|
||||
pushd $HOME/Java
|
||||
curl -L $OPEN_JDK_URL --output open_jdk.tar.gz
|
||||
tar -xvf open_jdk.tar.gz
|
||||
rm open_jdk.tar.gz
|
||||
popd
|
@ -27,6 +27,7 @@ const Map<String, ShardRunner> _kShards = <String, ShardRunner>{
|
||||
'tool_tests': _runToolTests,
|
||||
'build_tests': _runBuildTests,
|
||||
'coverage': _runCoverage,
|
||||
'integration_tests': _runIntegrationTests,
|
||||
'add2app_test': _runAdd2AppTest,
|
||||
};
|
||||
|
||||
@ -615,3 +616,51 @@ Future<void> _verifyVersion(String filename) async {
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> _runIntegrationTests() async {
|
||||
print('Platform env vars:');
|
||||
|
||||
await _runDevicelabTest('dartdocs');
|
||||
|
||||
if (Platform.isLinux) {
|
||||
await _runDevicelabTest('flutter_create_offline_test_linux');
|
||||
} else if (Platform.isWindows) {
|
||||
await _runDevicelabTest('flutter_create_offline_test_windows');
|
||||
} else if (Platform.isMacOS) {
|
||||
await _runDevicelabTest('flutter_create_offline_test_mac');
|
||||
await _runDevicelabTest('module_test_ios');
|
||||
}
|
||||
await _integrationTestsAndroidSdk();
|
||||
}
|
||||
|
||||
Future<void> _runDevicelabTest(String testName, {Map<String, String> env}) async {
|
||||
await runCommand(
|
||||
dart,
|
||||
<String>['bin/run.dart', '-t', testName],
|
||||
workingDirectory: path.join(flutterRoot, 'dev', 'devicelab'),
|
||||
environment: env,
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> _integrationTestsAndroidSdk() async {
|
||||
final String androidSdkRoot = (Platform.environment['ANDROID_HOME']?.isEmpty ?? true)
|
||||
? Platform.environment['ANDROID_SDK_ROOT']
|
||||
: Platform.environment['ANDROID_HOME'];
|
||||
if (androidSdkRoot == null || androidSdkRoot.isEmpty) {
|
||||
print('No Android SDK detected, skipping Android Integration Tests');
|
||||
return;
|
||||
}
|
||||
|
||||
final Map<String, String> env = <String, String> {
|
||||
'ANDROID_HOME': androidSdkRoot,
|
||||
'ANDROID_SDK_ROOT': androidSdkRoot,
|
||||
};
|
||||
|
||||
// TODO(dnfield): gradlew is crashing on the cirrus image and it's not clear why.
|
||||
if (!Platform.isWindows) {
|
||||
await _runDevicelabTest('gradle_plugin_test', env: env);
|
||||
await _runDevicelabTest('module_test', env: env);
|
||||
}
|
||||
// note: this also covers plugin_test_win as long as Windows has an Android SDK available.
|
||||
await _runDevicelabTest('plugin_test', env: env);
|
||||
}
|
@ -272,8 +272,11 @@ Future<ProcessResult> _resultOfGradleTask({String workingDirectory, String task,
|
||||
if (options != null) {
|
||||
args.addAll(options);
|
||||
}
|
||||
final String gradle = Platform.isWindows ? 'gradlew.bat' : './gradlew';
|
||||
print('Running Gradle: ${path.join(workingDirectory, gradle)} ${args.join(' ')}');
|
||||
print(File(path.join(workingDirectory, gradle)).readAsStringSync());
|
||||
return Process.run(
|
||||
'./gradlew',
|
||||
gradle,
|
||||
args,
|
||||
workingDirectory: workingDirectory,
|
||||
environment: <String, String>{ 'JAVA_HOME': javaHome },
|
||||
|
@ -9,6 +9,9 @@ import 'package:flutter_devicelab/framework/framework.dart';
|
||||
import 'package:flutter_devicelab/framework/utils.dart';
|
||||
import 'package:path/path.dart' as path;
|
||||
|
||||
final String gradlew = Platform.isWindows ? 'gradlew.bat' : 'gradlew';
|
||||
final String gradlewExecutable = Platform.isWindows ? gradlew : './$gradlew';
|
||||
|
||||
/// Tests that the Flutter module project template works and supports
|
||||
/// adding Flutter to an existing Android app.
|
||||
Future<void> main() async {
|
||||
@ -53,7 +56,7 @@ Future<void> main() async {
|
||||
|
||||
await inDirectory(Directory(path.join(projectDir.path, '.android')), () async {
|
||||
await exec(
|
||||
'./gradlew',
|
||||
gradlewExecutable,
|
||||
<String>['flutter:assembleDebug'],
|
||||
environment: <String, String>{ 'JAVA_HOME': javaHome },
|
||||
);
|
||||
@ -143,7 +146,7 @@ Future<void> main() async {
|
||||
hostApp,
|
||||
);
|
||||
copy(
|
||||
File(path.join(projectDir.path, '.android', 'gradlew')),
|
||||
File(path.join(projectDir.path, '.android', gradlew)),
|
||||
hostApp,
|
||||
);
|
||||
copy(
|
||||
@ -152,8 +155,10 @@ Future<void> main() async {
|
||||
);
|
||||
|
||||
await inDirectory(hostApp, () async {
|
||||
await exec('chmod', <String>['+x', 'gradlew']);
|
||||
await exec('./gradlew',
|
||||
if (!Platform.isWindows) {
|
||||
await exec('chmod', <String>['+x', 'gradlew']);
|
||||
}
|
||||
await exec(gradlewExecutable,
|
||||
<String>['app:assembleDebug'],
|
||||
environment: <String, String>{ 'JAVA_HOME': javaHome },
|
||||
);
|
||||
|
@ -37,7 +37,7 @@ Future<void> main() async {
|
||||
await inDirectory(projectDir, () async {
|
||||
await flutter(
|
||||
'build',
|
||||
options: <String>['ios'],
|
||||
options: <String>['ios', '--no-codesign'],
|
||||
);
|
||||
});
|
||||
|
||||
@ -80,7 +80,7 @@ Future<void> main() async {
|
||||
await inDirectory(projectDir, () async {
|
||||
await flutter(
|
||||
'build',
|
||||
options: <String>['ios'],
|
||||
options: <String>['ios', '--no-codesign'],
|
||||
);
|
||||
});
|
||||
|
||||
@ -116,7 +116,7 @@ Future<void> main() async {
|
||||
await inDirectory(projectDir, () async {
|
||||
await flutter(
|
||||
'build',
|
||||
options: <String>['ios'],
|
||||
options: <String>['ios', '--no-codesign'],
|
||||
);
|
||||
});
|
||||
|
||||
|
@ -295,23 +295,24 @@ tasks:
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
|
||||
gradle_plugin_test:
|
||||
description: >
|
||||
Verifies that the Flutter Gradle plugin supports standard and custom Android build types.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
# TODO(dnfield): Remove these once we're confident it's all working on cirrus
|
||||
# gradle_plugin_test:
|
||||
# description: >
|
||||
# Verifies that the Flutter Gradle plugin supports standard and custom Android build types.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["linux/android"]
|
||||
|
||||
plugin_test:
|
||||
description: >
|
||||
Checks that the project template works and supports plugins.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
# plugin_test:
|
||||
# description: >
|
||||
# Checks that the project template works and supports plugins.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["linux/android"]
|
||||
|
||||
module_test:
|
||||
description: >
|
||||
Checks that the module project template works and supports add2app on Android.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
# module_test:
|
||||
# description: >
|
||||
# Checks that the module project template works and supports add2app on Android.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["linux/android"]
|
||||
|
||||
flutter_gallery_instrumentation_test:
|
||||
description: >
|
||||
@ -333,23 +334,24 @@ tasks:
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
|
||||
flutter_create_offline_test_linux:
|
||||
description: >
|
||||
Tests the `flutter create --offline` command.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
# TODO(dnfield): Remove these once we're confident it's all working on cirrus
|
||||
# flutter_create_offline_test_linux:
|
||||
# description: >
|
||||
# Tests the `flutter create --offline` command.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["linux/android"]
|
||||
|
||||
flutter_create_offline_test_windows:
|
||||
description: >
|
||||
Tests the `flutter create --offline` command.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["windows/android"]
|
||||
# flutter_create_offline_test_windows:
|
||||
# description: >
|
||||
# Tests the `flutter create --offline` command.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["windows/android"]
|
||||
|
||||
flutter_create_offline_test_mac:
|
||||
description: >
|
||||
Tests the `flutter create --offline` command.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["mac/android"]
|
||||
# flutter_create_offline_test_mac:
|
||||
# description: >
|
||||
# Tests the `flutter create --offline` command.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["mac/android"]
|
||||
|
||||
# iOS on-device tests
|
||||
|
||||
@ -359,17 +361,18 @@ tasks:
|
||||
stage: devicelab_ios
|
||||
required_agent_capabilities: ["mac/ios"]
|
||||
|
||||
plugin_test_ios:
|
||||
description: >
|
||||
Checks that the project template works and supports plugins on iOS.
|
||||
stage: devicelab_ios
|
||||
required_agent_capabilities: ["mac/ios"]
|
||||
# TODO(dnfield): Remove these once we're confident it's all working on cirrus
|
||||
# plugin_test_ios:
|
||||
# description: >
|
||||
# Checks that the project template works and supports plugins on iOS.
|
||||
# stage: devicelab_ios
|
||||
# required_agent_capabilities: ["mac/ios"]
|
||||
|
||||
module_test_ios:
|
||||
description: >
|
||||
Checks that the module project template works and supports add2app on iOS.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["mac/ios"]
|
||||
# module_test_ios:
|
||||
# description: >
|
||||
# Checks that the module project template works and supports add2app on iOS.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["mac/ios"]
|
||||
|
||||
external_ui_integration_test_ios:
|
||||
description: >
|
||||
@ -494,11 +497,12 @@ tasks:
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
|
||||
dartdocs:
|
||||
description: >
|
||||
Tracks how many members are still lacking documentation.
|
||||
stage: devicelab
|
||||
required_agent_capabilities: ["linux/android"]
|
||||
# TODO(dnfield): Remove these once we're confident it's all working on cirrus
|
||||
# dartdocs:
|
||||
# description: >
|
||||
# Tracks how many members are still lacking documentation.
|
||||
# stage: devicelab
|
||||
# required_agent_capabilities: ["linux/android"]
|
||||
|
||||
flutter_test_performance:
|
||||
description: >
|
||||
|
@ -26,14 +26,14 @@ dependencies:
|
||||
crypto: 2.0.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
intl: 0.15.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
json_rpc_2: 2.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
source_span: 1.5.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
stream_channel: 1.6.8 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
term_glyph: 1.1.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
typed_data: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
xml: 3.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
xml: 3.4.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
|
||||
dev_dependencies:
|
||||
# See packages/flutter_test/pubspec.yaml for why we're pinning this version.
|
||||
@ -74,4 +74,4 @@ dev_dependencies:
|
||||
watcher: 0.9.7+10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
yaml: 2.1.15 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
|
||||
# PUBSPEC CHECKSUM: 20e4
|
||||
# PUBSPEC CHECKSUM: d7e6
|
||||
|
69
dev/integration_tests/android_views/ios/Podfile
Normal file
69
dev/integration_tests/android_views/ios/Podfile
Normal file
@ -0,0 +1,69 @@
|
||||
# Uncomment this line to define a global platform for your project
|
||||
# platform :ios, '9.0'
|
||||
|
||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||
|
||||
project 'Runner', {
|
||||
'Debug' => :debug,
|
||||
'Profile' => :release,
|
||||
'Release' => :release,
|
||||
}
|
||||
|
||||
def parse_KV_file(file, separator='=')
|
||||
file_abs_path = File.expand_path(file)
|
||||
if !File.exists? file_abs_path
|
||||
return [];
|
||||
end
|
||||
pods_ary = []
|
||||
skip_line_start_symbols = ["#", "/"]
|
||||
File.foreach(file_abs_path) { |line|
|
||||
next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
|
||||
plugin = line.split(pattern=separator)
|
||||
if plugin.length == 2
|
||||
podname = plugin[0].strip()
|
||||
path = plugin[1].strip()
|
||||
podpath = File.expand_path("#{path}", file_abs_path)
|
||||
pods_ary.push({:name => podname, :path => podpath});
|
||||
else
|
||||
puts "Invalid plugin specification: #{line}"
|
||||
end
|
||||
}
|
||||
return pods_ary
|
||||
end
|
||||
|
||||
target 'Runner' do
|
||||
# Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
|
||||
# referring to absolute paths on developers' machines.
|
||||
system('rm -rf .symlinks')
|
||||
system('mkdir -p .symlinks/plugins')
|
||||
|
||||
# Flutter Pods
|
||||
generated_xcode_build_settings = parse_KV_file('./Flutter/Generated.xcconfig')
|
||||
if generated_xcode_build_settings.empty?
|
||||
puts "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter packages get is executed first."
|
||||
end
|
||||
generated_xcode_build_settings.map { |p|
|
||||
if p[:name] == 'FLUTTER_FRAMEWORK_DIR'
|
||||
symlink = File.join('.symlinks', 'flutter')
|
||||
File.symlink(File.dirname(p[:path]), symlink)
|
||||
pod 'Flutter', :path => File.join(symlink, File.basename(p[:path]))
|
||||
end
|
||||
}
|
||||
|
||||
# Plugin Pods
|
||||
plugin_pods = parse_KV_file('../.flutter-plugins')
|
||||
plugin_pods.map { |p|
|
||||
symlink = File.join('.symlinks', 'plugins', p[:name])
|
||||
File.symlink(p[:path], symlink)
|
||||
pod p[:name], :path => File.join(symlink, 'ios')
|
||||
}
|
||||
end
|
||||
|
||||
post_install do |installer|
|
||||
installer.pods_project.targets.each do |target|
|
||||
target.build_configurations.each do |config|
|
||||
config.build_settings['ENABLE_BITCODE'] = 'NO'
|
||||
end
|
||||
end
|
||||
end
|
@ -45,7 +45,7 @@ dependencies:
|
||||
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
@ -67,7 +67,7 @@ dependencies:
|
||||
vm_service_client: 0.2.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
watcher: 0.9.7+10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
xml: 3.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
xml: 3.4.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
yaml: 2.1.15 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
|
||||
dev_dependencies:
|
||||
@ -80,4 +80,4 @@ dev_dependencies:
|
||||
flutter:
|
||||
uses-material-design: true
|
||||
|
||||
# PUBSPEC CHECKSUM: f2b6
|
||||
# PUBSPEC CHECKSUM: aeb8
|
||||
|
@ -11,12 +11,12 @@ environment:
|
||||
dependencies:
|
||||
args: 1.5.1
|
||||
vector_math: 2.0.8
|
||||
xml: 3.4.0
|
||||
xml: 3.4.1
|
||||
|
||||
charcode: 1.1.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
collection: 1.14.11 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
convert: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
typed_data: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
|
||||
dev_dependencies:
|
||||
@ -37,4 +37,4 @@ dev_dependencies:
|
||||
term_glyph: 1.1.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
test_api: 0.2.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
|
||||
# PUBSPEC CHECKSUM: 94b1
|
||||
# PUBSPEC CHECKSUM: e7b3
|
||||
|
@ -32,7 +32,7 @@ dependencies:
|
||||
meta: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
package_config: 1.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
source_span: 1.5.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
@ -65,4 +65,4 @@ dev_dependencies:
|
||||
flutter:
|
||||
uses-material-design: true
|
||||
|
||||
# PUBSPEC CHECKSUM: 358c
|
||||
# PUBSPEC CHECKSUM: 688d
|
||||
|
@ -34,7 +34,7 @@ dependencies:
|
||||
usage: 3.4.1
|
||||
vm_service_client: 0.2.6
|
||||
web_socket_channel: 1.0.9
|
||||
xml: 3.4.0
|
||||
xml: 3.4.1
|
||||
yaml: 2.1.15
|
||||
flutter_goldens_client:
|
||||
path: ../flutter_goldens_client
|
||||
@ -77,7 +77,7 @@ dependencies:
|
||||
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
petitparser: 2.2.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
protobuf: 0.13.4 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||
@ -118,4 +118,4 @@ dartdoc:
|
||||
# Exclude this package from the hosted API docs.
|
||||
nodoc: true
|
||||
|
||||
# PUBSPEC CHECKSUM: 222d
|
||||
# PUBSPEC CHECKSUM: fa2f
|
||||
|
Loading…
Reference in New Issue
Block a user