Fix Publish Workflow (#162)
diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml
index dc03636..fcec958 100644
--- a/.github/workflows/publish.yaml
+++ b/.github/workflows/publish.yaml
@@ -94,7 +94,7 @@
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ISSUE_NUMBER: ${{ github.event.number }}
PR_LABELS: "${{ join(github.event.pull_request.labels.*.name) }}"
- run: dart pub global run firehose --validate --use-flutter ${{ inputs.use-flutter }}
+ run: dart pub global run firehose --validate ${{ inputs.use-flutter && '--use-flutter' || '--no-use-flutter' }}
publish:
if: ${{ github.event_name == 'push' }}
@@ -124,4 +124,4 @@
run: dart pub global activate firehose
- name: Publish packages
- run: dart pub global run firehose --publish --use-flutter ${{ inputs.use-flutter }}
+ run: dart pub global run firehose --publish ${{ inputs.use-flutter && '--use-flutter' || '--no-use-flutter' }}
diff --git a/pkgs/firehose/CHANGELOG.md b/pkgs/firehose/CHANGELOG.md
index db78347..6ebed0d 100644
--- a/pkgs/firehose/CHANGELOG.md
+++ b/pkgs/firehose/CHANGELOG.md
@@ -1,9 +1,11 @@
## 0.3.27
- Fix Flutter support.
+
## 0.3.26
- Add support for Flutter package auto-publishing, fixing [#154](https://github.com/dart-lang/ecosystem/issues/154).
+
## 0.3.25
- Switch to pub.dev API in `package:firehose`.
diff --git a/pkgs/firehose/bin/firehose.dart b/pkgs/firehose/bin/firehose.dart
index 645c8b6..089648c 100644
--- a/pkgs/firehose/bin/firehose.dart
+++ b/pkgs/firehose/bin/firehose.dart
@@ -8,23 +8,24 @@
import 'package:firehose/firehose.dart';
import 'package:firehose/src/github.dart';
-const validateOption = 'validate';
-const publishOption = 'publish';
-const useFlutterOption = 'use-flutter';
+const helpFlag = 'help';
+const validateFlag = 'validate';
+const publishFlag = 'publish';
+const useFlutterFlag = 'use-flutter';
void main(List<String> arguments) async {
var argParser = _createArgs();
try {
- var argResults = argParser.parse(arguments);
+ final argResults = argParser.parse(arguments);
- if (argResults['help'] == true) {
+ if (argResults[helpFlag] as bool) {
_usage(argParser);
exit(0);
}
- var validate = argResults[validateOption] == true;
- var publish = argResults[publishOption] == true;
- var useFlutter = argResults[useFlutterOption] == true;
+ final validate = argResults[validateFlag] as bool;
+ final publish = argResults[publishFlag] as bool;
+ final useFlutter = argResults[useFlutterFlag] as bool;
if (!validate && !publish) {
_usage(argParser,
@@ -32,7 +33,7 @@
exit(1);
}
- var github = Github();
+ final github = Github();
if (publish && !github.inGithubContext) {
_usage(argParser,
error: 'Error: --publish can only be executed from within a GitHub '
@@ -40,7 +41,7 @@
exit(1);
}
- var firehose = Firehose(Directory.current, useFlutter);
+ final firehose = Firehose(Directory.current, useFlutter);
if (validate) {
await firehose.validate();
@@ -67,24 +68,24 @@
ArgParser _createArgs() {
return ArgParser()
..addFlag(
- 'help',
+ helpFlag,
abbr: 'h',
negatable: false,
help: 'Print tool help.',
)
..addFlag(
- validateOption,
+ validateFlag,
negatable: false,
help: 'Validate packages and indicate whether --publish would publish '
'anything.',
)
..addFlag(
- publishOption,
+ publishFlag,
negatable: false,
help: 'Publish any changed packages.',
)
..addFlag(
- useFlutterOption,
+ useFlutterFlag,
negatable: true,
help: 'Whether this is a Flutter project.',
);