refactor: CI

This commit is contained in:
Christian Pauly 2020-11-21 11:36:13 +01:00
commit 8ca6b63e2d
16 changed files with 127 additions and 87 deletions

7
scripts/build-android-apk.sh Executable file
View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
flutter channel stable
flutter upgrade
flutter pub get
flutter build apk --release
mkdir -p build/android
cp build/app/outputs/apk/release/app-release.apk build/android/

View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
flutter channel stable
flutter upgrade
flutter pub get
flutter build appbundle --target-platform android-arm,android-arm64,android-x64
mkdir -p build/android
cp build/app/outputs/bundle/release/app-release.aab build/android/

5
scripts/build-android-debug.sh Executable file
View file

@ -0,0 +1,5 @@
#!/usr/bin/env bash
flutter channel stable
flutter upgrade
truncate -s $(head -n -2 android/app/build.gradle | wc -c) android/app/build.gradle
flutter build apk --debug -v

10
scripts/build-ios.sh Executable file
View file

@ -0,0 +1,10 @@
#!/usr/bin/env bash
flutter channel stable
flutter upgrade
flutter clean
flutter pub get
cd ios
pod install
pod update
cd ..
flutter build ios --release

7
scripts/build-linux.sh Executable file
View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
flutter channel dev
flutter upgrade
flutter config --enable-linux-desktop
flutter clean
flutter pub get
flutter build linux --release -v

11
scripts/build-macos.sh Executable file
View file

@ -0,0 +1,11 @@
#!/usr/bin/env bash
flutter channel dev
flutter upgrade
flutter config --enable-macos-desktop
flutter clean
flutter pub get
cd macos
pod install
pod update
cd ..
flutter build macos --release

8
scripts/build-snap.sh Executable file
View file

@ -0,0 +1,8 @@
#!/usr/bin/env bash
'curl -L $(curl -H "X-Ubuntu-Series: 16" "https://api.snapcraft.io/api/v1/snaps/details/flutter?channel=latest/stable" | jq ".download_url" -r) --output flutter.snap'
sudo mkdir -p /snap/flutter
sudo unsquashfs -d /snap/flutter/current flutter.snap
rm -f flutter.snap
sudo ln -sf /snap/flutter/current/flutter.sh /snap/bin/flutter
sudo ln -sf /snap/flutter/current/env.sh /snap/bin/env.sh
snapcraft

8
scripts/build-web.sh Executable file
View file

@ -0,0 +1,8 @@
#!/usr/bin/env bash
flutter channel beta
flutter upgrade
flutter config --enable-web
/bin/bash ./scripts/prepare-web.sh
flutter clean
flutter pub get
flutter build web --release --verbose

3
scripts/code_analyze.sh Executable file
View file

@ -0,0 +1,3 @@
#!/usr/bin/env bash
flutter format lib/ test/ test_driver/ --set-exit-if-changed
flutter analyze

View file

@ -0,0 +1,8 @@
#!/usr/bin/env bash
/bin/bash ./scripts/prepare-android-release.sh
cd android && echo $FDROID_KEY | base64 --decode --ignore-garbage > key.jks && cd ..
cd android && echo "storePassword=${FDROID_KEY_PASS}" >> key.properties && cd ..
cd android && echo "keyPassword=${FDROID_KEY_PASS}" >> key.properties && cd ..
cd android && echo "keyAlias=key" >> key.properties && cd ..
cd android && echo "storeFile=../key.jks" >> key.properties && cd ..
cd android/app && echo $GOOGLE_SERVICES >> google-services.json && cd ../..

6
scripts/publish-snap-edge.sh Executable file
View file

@ -0,0 +1,6 @@
#!/usr/bin/env bash
/bin/bash ./scripts/build-snap.sh
echo $SNAPCRAFT_LOGIN_FILE | base64 --decode --ignore-garbage > snapcraft.login
snapcraft login --with snapcraft.login
snapcraft push --release=edge *.snap
snapcraft logout

6
scripts/publish-snap-stable.sh Executable file
View file

@ -0,0 +1,6 @@
#!/usr/bin/env bash
/bin/bash ./scripts/build-snap.sh
echo $SNAPCRAFT_LOGIN_FILE | base64 --decode --ignore-garbage > snapcraft.login
snapcraft login --with snapcraft.login
snapcraft push --release=stable *.snap
snapcraft logout

4
scripts/update-changelog.sh Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
flutter pub global activate changelog
export PATH="$PATH":"$HOME/development/flutter/.pub-cache/bin"
changelog -c

4
scripts/update-dependencies.sh Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
flutter pub get
flutter pub pub run dapackages:dapackages.dart ./pubspec.yaml
flutter pub get