name: Fdroid version file generation on: workflow_dispatch: push: tags: - 'v[0-9]+.[0-9]+.[0-9]+' - '[0-9]+.[0-9]+.[0-9]+' - 'v[0-9]+.[0-9]+.[0-9]+-[0-9]+' - '[0-9]+.[0-9]+.[0-9]+-[0-9]+' jobs: # https://gitlab.com/fdroid/fdroiddata/-/blob/master/metadata/com.carriez.flutter_hbb.yml # Finds latest release and transforms F-Droid version code from version as follows: # X.Y.Z-A => X * 1e6 + Y * 1e4 + Z * 1e2 + A update-fdroid-version-file: name: Publish RustDesk version file for F-Droid updater runs-on: ubuntu-latest steps: - name: Generate RustDesk version file run: | if [ "${GITHUB_REF_TYPE}" = "tag" ]; then UPSTREAM_VERNAME="${GITHUB_REF##refs/tags/}" UPSTREAM_VERNAME="${UPSTREAM_VERNAME##v}" else UPSTREAM_VERNAME="$(curl https://api.github.com/repos/rustdesk/rustdesk/releases/latest | jq -r .tag_name | sed 's/^v//')" fi UPSTREAM_VERCODE="$(echo "$UPSTREAM_VERNAME" | tr '.' ' ' | tr '-' ' ' | while read -r MAJOR MINOR PATCH REV; do [ -z "$MAJOR" ] && MAJOR=0; [ -z "$MINOR" ] && MINOR=0; [ -z "$PATCH" ] && PATCH=0; [ -z "$REV" ] && REV=0; echo "$(( 1000000 * $MAJOR + 10000 * $MINOR + 100 * $PATCH + $REV ))"; done)" echo "versionName=$UPSTREAM_VERNAME" > rustdesk-version.txt echo "versionCode=$UPSTREAM_VERCODE" >> rustdesk-version.txt shell: bash - name: Publish RustDesk version file uses: softprops/action-gh-release@v1 with: prerelease: true tag_name: "fdroid-version" files: | ./rustdesk-version.txt