44 lines
1.6 KiB
Bash
44 lines
1.6 KiB
Bash
#!/bin/sh
|
|
set -e
|
|
|
|
cd /build
|
|
|
|
if [ -d Infinity-For-Reddit ]
|
|
then
|
|
cd Infinity-For-Reddit
|
|
git reset --hard master
|
|
git fetch
|
|
git pull origin master
|
|
else
|
|
git clone https://github.com/Docile-Alligator/Infinity-For-Reddit.git
|
|
cd Infinity-For-Reddit
|
|
fi
|
|
|
|
touch /build/previous_tag
|
|
previous_tag=$(cat /build/previous_tag)
|
|
latest_tag=$(git describe --tag --abbrev=0)
|
|
|
|
[ "$previous_tag" = "$latest_tag" ] && exit 0
|
|
|
|
echo -n $latest_tag > /build/previous_tag
|
|
git reset --hard $latest_tag
|
|
|
|
api_file=app/src/main/java/ml/docilealligator/infinityforreddit/utils/APIUtils.java
|
|
sed -i "s|NOe2iKrPPzwscA|$API_TOKEN|" $api_file
|
|
sed -i "s|infinity://localhost|$REDIRECT_URI|" $api_file
|
|
sed -i -r "s|public static final String USER_AGENT = \".*?\";|public static final String USER_AGENT = \"android:personal-app:0.0.1 (by /u/$REDDIT_USERNAME)\";|g" $api_file
|
|
|
|
gradle_file=app/build.gradle
|
|
sed -i "s| buildTypes {| signingConfigs {\n release {\n storeFile file(\"/files/Infinity.jks\")\n storePassword \"Infinity\"\n keyAlias \"Infinity\"\n keyPassword \"Infinity\"\n }\n }\n buildTypes {|" $gradle_file
|
|
sed -i "s| minifyEnabled false| signingConfig signingConfigs.release\n minifyEnabled false|" $gradle_file
|
|
|
|
./gradlew assembleRelease
|
|
|
|
output_file=/build/Infinity-$latest_tag.apk
|
|
mv app/build/outputs/apk/release/app-release.apk $output_file
|
|
|
|
curl \
|
|
-F "payload_json={\"content\": \"A new version of Infinity is available ! ($previous_tag => $latest_tag)\"}" \
|
|
-F "file=@$output_file" \
|
|
$WEBHOOK_URL
|