name: "Build release" on: push: tags: - app/v*.*.* jobs: build: name: Build runs-on: ubuntu-latest env: ACTIONS_ALLOW_UNSECURE_COMMANDS: true steps: - name: Check out uses: actions/checkout@v4 - name: Get version id: get_version run: echo "version=$(git describe --tags --always --match 'app/v*' | sed -n 's|app/\([^/-]*\)\(-.*\)\{0,1\}|\1|p')" >> $GITHUB_OUTPUT - name: Setup Go uses: actions/setup-go@v5 with: go-version: "1.23" - name: Setup Python # This is for the build script uses: actions/setup-python@v5 with: python-version: "3.11" - uses: nttld/setup-ndk@v1 id: setup-ndk with: ndk-version: r26b add-to-path: false - name: Run build script env: ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }} run: | export HY_APP_PLATFORMS=$(sed 's/\r$//' platforms.txt | awk '!/^#/ && !/^$/' | paste -sd ",") python hyperbole.py build -r - name: Generate hashes run: | for file in build/*; do sha256sum $file >> build/hashes.txt done - name: Upload GitHub uses: softprops/action-gh-release@v2 with: files: build/* - name: Upload CF bucket uses: shallwefootball/upload-s3-action@v1.3.3 with: aws_key_id: ${{ secrets.CF_KEY_ID }} aws_secret_access_key: ${{ secrets.CF_KEY }} aws_bucket: "hydownload" endpoint: "https://bea223c61d5a41250d127bd67f51dfec.r2.cloudflarestorage.com/" source_dir: "build" destination_dir: "app/${{ steps.get_version.outputs.version }}" - name: Publish to API run: | export HY_API_POST_KEY=${{ secrets.HY2_API_POST_KEY }} pip install requests python hyperbole.py publish