diff --git a/bricks/dart_frog_prod_server/hooks/pre_gen.dart b/bricks/dart_frog_prod_server/hooks/pre_gen.dart index cfaacf51e..6a7e230ec 100644 --- a/bricks/dart_frog_prod_server/hooks/pre_gen.dart +++ b/bricks/dart_frog_prod_server/hooks/pre_gen.dart @@ -1,6 +1,7 @@ import 'dart:io'; import 'package:dart_frog_gen/dart_frog_gen.dart'; +import 'package:io/io.dart'; import 'package:mason/mason.dart'; import 'package:path/path.dart' as path; import 'package:pubspec_parse/pubspec_parse.dart'; @@ -36,17 +37,13 @@ Future run(HookContext context) async { } final tempDirectory = await Directory.systemTemp.createTemp(); - final result = await Process.run( - 'cp', - ['-rf', '.', '${tempDirectory.path}${path.separator}'], - workingDirectory: projectDirectory.path, - runInShell: true, - ); - bundlingDone(); - - if (result.exitCode != 0) { - context.logger.err('${result.stderr}'); - exit(result.exitCode); + try { + await copyPath('.', '${tempDirectory.path}${path.separator}'); + bundlingDone(); + } catch (error) { + bundlingDone(); + context.logger.err('$error'); + exit(1); } await tempDirectory.rename(buildDirectoryPath); diff --git a/bricks/dart_frog_prod_server/hooks/pubspec.lock b/bricks/dart_frog_prod_server/hooks/pubspec.lock index 69470142e..5fb25891a 100644 --- a/bricks/dart_frog_prod_server/hooks/pubspec.lock +++ b/bricks/dart_frog_prod_server/hooks/pubspec.lock @@ -64,6 +64,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.0.0" + io: + dependency: "direct main" + description: + name: io + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.3" json_annotation: dependency: transitive description: diff --git a/bricks/dart_frog_prod_server/hooks/pubspec.yaml b/bricks/dart_frog_prod_server/hooks/pubspec.yaml index 3c40ef305..86fbc850b 100644 --- a/bricks/dart_frog_prod_server/hooks/pubspec.yaml +++ b/bricks/dart_frog_prod_server/hooks/pubspec.yaml @@ -6,6 +6,7 @@ environment: dependencies: dart_frog_gen: ^0.0.2-dev.1 + io: ^1.0.3 mason: ">=0.1.0-dev <0.1.0" path: ^1.8.1 pubspec_parse: ^1.2.0