name: CI on: [push, pull_request] jobs: build: name: Build & test runs-on: ubuntu-latest container: image: httptoolkit/act-build-base:v3.0.0 steps: - uses: actions/checkout@v4 - name: Build a single-file Android script run: | mkdir -p ./build/ paste -sd'\n' ./config.js \ ./native-connect-hook.js \ ./android/android-proxy-override.js \ ./android/android-system-certificate-injection.js \ ./android/android-certificate-unpinning.js \ ./android/android-certificate-unpinning-fallback.js \ > ./build/android-frida-interception-script.js - uses: actions/upload-artifact@v4 with: name: android-frida-interception-script.js path: ./build/android-frida-interception-script.js if-no-files-found: error - name: Publish the combined script to GitHub Releases uses: svenstaro/upload-release-action@v2 if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') with: body: | The pre-combined scripts for the ${{ github.ref_name }} release. This contains the same content as the repo, but pre-combined into a single script for convenient usage. This script still requires configuration: you'll need to provide the `CERT_PEM` and typically `PROXY_HOST` and `PROXY_PORT` variables in the first section of the file. asset_name: android-frida-interception-script-${{ github.ref }}.js file: ./build/android-frida-interception-script.js tag: ${{ github.ref }} repo_token: ${{ secrets.GITHUB_TOKEN }}