-
-
Save avioli/b32c949020b4e547e3600260dd9c924b to your computer and use it in GitHub Desktop.
Flutter Release Script with Fastlane
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
echo "App Release Automator by @rodydavis" | |
action="$1" | |
red=`tput setaf 1` | |
green=`tput setaf 2` | |
reset=`tput sgr0` | |
if [ ${action} = "build" ]; then | |
echo "${green}Generating built files.. ${reset}" | |
flutter packages pub run build_runner clean | |
flutter packages pub run build_runner build --delete-conflicting-outputs | |
pub global activate pubspec_version | |
git commit -a -m "Build $(pubver bump patch)" | |
echo "${green}Building Project...${reset}" | |
find . -name "*-e" -type f -delete | |
flutter format . | |
flutter clean | |
echo "${green}Project Size: $(find . -name "*.dart" | xargs cat | wc -c)${reset}" | |
echo "${green}Building APK...${reset}" | |
flutter build apk | |
echo "${green}Builing IPA..${reset}" | |
cd ./ios && pod install && pod repo update && cd .. | |
flutter build ios | |
git commit -a -m "Project Rebuilt" | |
elif [ ${action} = "beta" ]; then | |
echo "${green}Generating built files..${reset}" | |
flutter packages pub run build_runner clean | |
flutter packages pub run build_runner build --delete-conflicting-outputs | |
pub global activate pubspec_version | |
git commit -a -m "Beta $(pubver bump patch)" | |
echo "${green}Building Project...${reset}" | |
find . -name "*-e" -type f -delete | |
flutter format . | |
flutter clean | |
echo "${green}Project Size: $(find . -name "*.dart" | xargs cat | wc -c)${reset}" | |
echo "${green}Building APK...${reset}" | |
flutter build apk | |
echo "${green}Sending Android to Beta...${reset}" | |
cd ./android && fastlane beta && cd .. | |
echo "${green}Builing IPA..${reset}" | |
flutter build ios | |
echo "${green}Sending iOS to Beta..${reset}" | |
cd ./ios && fastlane beta && cd .. | |
git commit -a -m "Sent to Beta" | |
elif [ ${action} = "release" ]; then | |
echo "${green}Generating built files..${reset}" | |
flutter packages pub run build_runner clean | |
flutter packages pub run build_runner build --delete-conflicting-outputs | |
pub global activate pubspec_version | |
git commit -a -m "Production $(pubver bump minor)" | |
echo "${green}Building Project...${reset}" | |
find . -name "*-e" -type f -delete | |
flutter format . | |
flutter clean | |
echo "${green}Project Size: $(find . -name "*.dart" | xargs cat | wc -c)${reset}" | |
echo "${green}Building APK...${reset}" | |
flutter build apk | |
echo "${green}Sending Android to Production...${reset}" | |
cd ./android && fastlane release && cd .. | |
echo "${green}Builing IPA..${reset}" | |
flutter build ios | |
echo "${green}Sending iOS to Production...${reset}" | |
cd ./ios && fastlane release && cd .. | |
git commit -a -m "Sent to Production" | |
fi | |
echo "${green}Successfully completed${reset}" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment