Compare commits

...

2 Commits

3 changed files with 41 additions and 1 deletions

View File

@ -16,10 +16,22 @@
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin
install --mode 555 src/flutter-build.sh $out/bin/flutter-build install --mode 555 src/flutter/build.sh $out/bin/flutter-build
''; '';
}; };
flutter-build-raw = pkgs.callPackage flutterBuildRaw {}; flutter-build-raw = pkgs.callPackage flutterBuildRaw {};
checkPr = {stdenv}: stdenv.mkDerivation {
pname = "check-pr";
version = "0.1.0";
src = ./.;
installPhase = ''
mkdir -p $out/bin
install --mode 555 src/flutter/check-pr.sh $out/bin/check-pr
'';
};
in { in {
packages = { packages = {
# The raw flutter-build script # The raw flutter-build script
@ -31,6 +43,9 @@
--notify-send ${pkgs.libnotify}/bin/notify-send \ --notify-send ${pkgs.libnotify}/bin/notify-send \
$@ $@
''; '';
# A script for checking if a PR is okay
checkPr = pkgs.callPackage checkPr {};
}; };
}); });
} }

25
src/flutter/check-pr.sh Normal file
View File

@ -0,0 +1,25 @@
#!/bin/bash
# Run before merging a PR. Checks if the formatting is correct.
# Check if there are any formatting issues
echo "Checking formatting..."
dart_format_result=$(dart format --output none --set-exit-if-changed .)
if [[ ! "$?" = "0" ]]; then
echo "Error: dart format indicates that format the code is not formatted properly"
echo
echo "dart format output:"
echo "$dart_format_result"
exit 1
fi
# Check if the linter has any issues
echo "Checking linter..."
flutter_analyze_result=$(flutter analyze)
if [[ ! "$?" = "0" ]]; then
echo "Error: flutter analyze indicates that there are lint issues"
echo
echo "flutter analyze output:"
echo "${flutter_analyze_result}"
exit 1
fi
echo "PR looks good!"