diff --git a/lib/oto/commands/build/build_dart.dart b/lib/oto/commands/build/build_dart.dart index 988e377..48a3dbe 100644 --- a/lib/oto/commands/build/build_dart.dart +++ b/lib/oto/commands/build/build_dart.dart @@ -20,10 +20,10 @@ class BuildDart extends Command { var workspace = getWorkspace(data.workspace); var shell = StringBuffer('cd $workspace'); - shell.write('&& flutter clean'); - shell.write('&& flutter pub upgrade --major-versions'); - shell.write('&& flutter packages upgrade'); - shell.write('&& flutter pub get'); + shell.write(' && flutter clean'); + shell.write(' && flutter pub upgrade --major-versions'); + shell.write(' && flutter packages upgrade'); + shell.write(' && flutter pub get'); if (data.executeBuildRunner == null ? true : data.executeBuildRunner!) { shell.write( ' && flutter pub run build_runner build --delete-conflicting-outputs'); diff --git a/lib/oto/commands/build/build_ios.dart b/lib/oto/commands/build/build_ios.dart index ba6334e..6b1d27f 100644 --- a/lib/oto/commands/build/build_ios.dart +++ b/lib/oto/commands/build/build_ios.dart @@ -1,10 +1,8 @@ import 'dart:async'; -import 'package:oto_cli/oto/application.dart'; import 'package:oto_cli/oto/commands/command.dart'; import 'package:oto_cli/oto/data/command_data.dart'; import 'package:dart_framework/platform/process.dart'; -import 'package:dart_framework/utils/path.dart'; class BuildiOS extends Command { Function? get error => null; diff --git a/lib/oto/commands/command.dart b/lib/oto/commands/command.dart index 0438fbe..5dba552 100644 --- a/lib/oto/commands/command.dart +++ b/lib/oto/commands/command.dart @@ -1,6 +1,6 @@ // ignore_for_file: constant_identifier_names -import 'dart:async'; +import 'dart:io'; import 'package:dart_framework/utils/path.dart'; import 'package:dart_framework/utils/system_util.dart'; import 'package:oto_cli/oto/application.dart'; @@ -22,6 +22,7 @@ import 'package:oto_cli/oto/commands/util/publish_ios.dart'; import 'package:oto_cli/oto/commands/util/slack.dart'; import 'package:oto_cli/oto/commands/util/zip.dart'; import 'package:oto_cli/oto/commands/uploader/uploader.dart'; +import 'package:path/path.dart' as pathlib; enum CommandType { SimpleCommand, @@ -134,7 +135,11 @@ abstract class Command { } String getWorkspace(String? dataWorkspace) { - return getPathNormal(dataWorkspace ?? jenkinsData!.workspace); + var path = getPathNormal(dataWorkspace ?? jenkinsData!.workspace); + if (path == '.' || path.startsWith('./')) { + path = path.replaceFirst('.', getPathNormal(pathlib.current)); + } + return path; } String getPathNormal(String path) { diff --git a/lib/oto/commands/git/git.dart b/lib/oto/commands/git/git.dart index b562e07..77db7b2 100644 --- a/lib/oto/commands/git/git.dart +++ b/lib/oto/commands/git/git.dart @@ -1,4 +1,4 @@ -import 'dart:async'; +import 'dart:io'; import 'package:oto_cli/oto/commands/command.dart'; import 'package:oto_cli/oto/data/command_data.dart'; @@ -10,10 +10,16 @@ class Git extends Command { var data = DataGit.fromJson(command.param); var workspace = getWorkspace(data.workspace); - var shell = StringBuffer('cd $workspace\n'); + String drive = ''; + if (Platform.isWindows) { + drive = '${workspace[0]}: && '; + } + + var shell = StringBuffer(drive); + shell.write('cd $workspace'); var commands = data.commands; for (var item in commands) { - shell.writeln('git ${getPathNormal(item)}'); + shell.write(' && git ${getPathNormal(item)}'); } var process = await ProcessExecutor.start(shell);