feat: resolve qol gh issues (#216) #139
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
name: Create Beta Build | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: macos-14 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- uses: actions/checkout@v3 | |
with: | |
repository: ${{ secrets.B_BR }} | |
path: "Bbuild" | |
token: ${{ secrets.B_GH_TOKEN }} | |
- name: Install dependencies (packages) | |
run: | | |
curl -LO https://github.com/ProcursusTeam/ldid/releases/download/v2.1.5-procursus7/ldid_macosx_x86_64 | |
sudo install -m755 ldid_macosx_x86_64 /usr/local/bin/ldid | |
brew install 7zip gnu-sed | |
- name: Select Xcode 16 | |
run: | | |
sudo xcode-select -s /Applications/Xcode_16.app/Contents/Developer | |
mkdir upload | |
sed -i '' '/func application(/a\ | |
Preferences.beta = true | |
' iOS/Delegates/AppDelegate.swift | |
- name: Compile f | |
run: | | |
$GITHUB_WORKSPACE/Bbuild/prep.sh | |
make package SCHEME="'feather (Release)'" | |
mv packages/* upload/ | |
- name: Install pyupload | |
run: | | |
pip install pyupload | |
- name: Upload file to Catbox | |
id: upload_catbox | |
run: | | |
UPLOAD_OUTPUT=$(pyupload upload/feather.ipa --host=catbox) | |
echo "Upload Output: $UPLOAD_OUTPUT" | |
LINK=$(echo "$UPLOAD_OUTPUT" | sed -n 's/.*Your link : //p') | |
echo "Uploaded file link: $LINK" | |
echo "catbox_link=$LINK" >> $GITHUB_ENV | |
- name: Update Bbuild | |
run: | | |
updated_at=$(date -u +"%Y-%m-%dT%H:%M:%SZ") | |
size=12375230 | |
version=${{ github.run_number }} | |
download_url=${{ env.catbox_link }} | |
if [ -n "$download_url" ]; then | |
echo "Download URL for .ipa file: $download_url" | |
echo "Updated at: $updated_at" | |
echo "Size: $size bytes" | |
echo "Version: $version" | |
jq --arg version "$version" \ | |
--arg date "$updated_at" \ | |
--argjson size "$size" \ | |
--arg url "$download_url" \ | |
'.apps[0].size = $size | | |
.apps[0].version = $version | | |
.apps[0].versionDate = $date | | |
.apps[0].downloadURL = $url | | |
.apps[0].versions = ( | |
[{ | |
version: $version, | |
date: $date, | |
size: $size, | |
downloadURL: $url | |
}] + .apps[0].versions | |
) | .apps[0].versions |= unique_by(.version)' $GITHUB_WORKSPACE/Bbuild/b.json > $GITHUB_WORKSPACE/Bbuild/updated_b.json | |
mv $GITHUB_WORKSPACE/Bbuild/updated_b.json $GITHUB_WORKSPACE/Bbuild/b.json | |
else | |
echo "missing information." | |
echo "Updated at: $updated_at" | |
echo "Version: $version" | |
fi | |
- name: Push builds | |
run: | | |
cd $GITHUB_WORKSPACE/Bbuild | |
git config --local user.email "actions@github.com" | |
git config --local user.name "GitHub Actions" | |
git add . | |
git commit -m "Build $GITHUB_SHA" || exit 0 | |
git push | |
- name: Send Discord build message | |
run: | | |
COMMIT_HASH=$(git log -1 --pretty=format:'%h') && | |
COMMIT_MESSAGE=$(git log -1 --pretty=format:'%s') && | |
( | |
curl "${{ secrets.B_WEBHOOK }}" -sS -H "Content-Type:application/json" -X POST -d '{ | |
"content":null, | |
"embeds":[ | |
{ | |
"title":"${{ github.repository }} [Build ${{ github.run_number }}]", | |
"description":"[`'"$COMMIT_HASH"'`](https://github.com/${{ github.repository }}/commit/'"$COMMIT_HASH"') '"$COMMIT_MESSAGE"'", | |
"url":"https://github.com/${{ github.repository }}/actions/runs/${GITHUB_RUN_ID}", | |
"color":6648790, | |
"author":{ | |
"name":"${{ github.actor }}", | |
"icon_url":"https://github.com/${{ github.actor }}.png" | |
} | |
} | |
], | |
"attachments":[], | |
"components":[ | |
{ | |
"type":1, | |
"components":[ | |
{ | |
"type":2, | |
"url":"${{ env.catbox_link }}", | |
"label":"Download", | |
"style":5 | |
} | |
] | |
} | |
] | |
}' || true | |
) |