From 75735cd8d56502aaebbecc851c9ad9952fe796d7 Mon Sep 17 00:00:00 2001 From: Kynan Ware <47394200+BagToad@users.noreply.github.com> Date: Thu, 29 Aug 2024 12:04:49 -0600 Subject: [PATCH 01/15] Fix android/amd64 requires external (cgo) linking, but cgo is not enabled --- build_and_release.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/build_and_release.sh b/build_and_release.sh index e4c9cf6..64b4dbd 100755 --- a/build_and_release.sh +++ b/build_and_release.sh @@ -45,6 +45,16 @@ else if [ "$goos" = "windows" ]; then ext=".exe" fi + cc="" + if [ "$goos" = "android" ]; then + if [ "$goarch" = "amd64" ]; then + cc=${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/x86_64-linux-android30-clang + elif [ "$goarch" = "arm64" ]; then + cc=${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android30-clang + fi + GOOS="$goos" GOARCH="$goarch" CGO_ENABLED=1 CC="$cc" go build -trimpath -ldflags="-s -w" -o "dist/${p}${ext}" + continue + fi GOOS="$goos" GOARCH="$goarch" CGO_ENABLED="${CGO_ENABLED:-0}" go build -trimpath -ldflags="-s -w" -o "dist/${p}${ext}" done fi From 228083260950d5fbc8f7731e74ab1d319d69b606 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Fri, 30 Aug 2024 14:35:30 -0600 Subject: [PATCH 02/15] Change android build targets to opt-in Extension authors will now need to opt-in to building for android targets. When opted-in to building on android, extension authors will also be required to define at least the Android SDK build-tools version. If opted-in to building for android targets, we will attempt to build assuming Go 1.22 or newer. Previous action versions will be required to build for android using Go 1.22 and older. --- action.yml | 24 +++++++++++++++++++++++- build_and_release.sh | 18 +++++++++++------- 2 files changed, 34 insertions(+), 8 deletions(-) diff --git a/action.yml b/action.yml index 199adc8..9abe7fe 100644 --- a/action.yml +++ b/action.yml @@ -20,6 +20,13 @@ inputs: generate_attestations: description: "Whether to generate artifact attestations for release binaries to establish build provenance, defaults to `false` if unspecified" default: false + release_android: + description: "Whether to release android binaries, defaults to `false` if unspecified" + default: false + android_ndk_home: + description: "Path to the Android NDK for android-amd64 and android-arm64 builds, required for Go 1.22 or newer, defaults to `ANDROID_NDK_HOME` environment variable if unspecified" + android_sdk_version: + description: "Android SDK build-tools version" branding: color: purple icon: box @@ -77,6 +84,18 @@ runs: INPUT_TITLE: ${{ inputs.release_title_prefix }} shell: bash + - id: determine_android_ndk_home + run: | + if [ -n "$INPUT_ANDROID_NDK_HOME" ]; then + android_ndk_home="$INPUT_ANDROID_NDK_HOME" + else + android_ndk_home="$ANDROID_NDK_HOME" + fi + echo "ANDROID_NDK_HOME=$android_ndk_home" >> "$GITHUB_OUTPUT" + env: + INPUT_ANDROID_NDK_HOME: ${{ inputs.android_ndk_home }} + shell: bash + - run: ${GITHUB_ACTION_PATH//\\//}/build_and_release.sh env: GITHUB_REPOSITORY: ${{ github.repository }} @@ -86,9 +105,12 @@ runs: GH_RELEASE_TAG: ${{ steps.determine_release_tag.outputs.TAG }} GH_RELEASE_TITLE_PREFIX: ${{ steps.determine_release_title_prefix.outputs.PREFIX }} DRAFT_RELEASE: ${{ inputs.draft_release }} + ANDROID_NDK_HOME: ${{ steps.determine_android_ndk_home.outputs.ANDROID_NDK_HOME }} + ANDROID_SDK_VERSION: ${{ inputs.android_sdk_version }} + RELEASE_ANDROID: ${{ inputs.release_android }} shell: bash - if: ${{ inputs.generate_attestations == 'true' }} uses: actions/attest-build-provenance@v1 with: - subject-path: '${{ github.workspace }}/dist/*' + subject-path: "${{ github.workspace }}/dist/*" diff --git a/build_and_release.sh b/build_and_release.sh index 64b4dbd..4275c9f 100755 --- a/build_and_release.sh +++ b/build_and_release.sh @@ -2,8 +2,6 @@ set -e platforms=( - android-amd64 - android-arm64 darwin-amd64 darwin-arm64 freebsd-386 @@ -18,6 +16,11 @@ platforms=( windows-arm64 ) +if [[ "$RELEASE_ANDROID" == "true" ]]; then + platforms+=("android-amd64") + platforms+=("android-arm64") +fi + prerelease="" if [[ $GH_RELEASE_TAG = *-* ]]; then prerelease="--prerelease" @@ -46,16 +49,17 @@ else ext=".exe" fi cc="" + cgo_enabled="${CGO_ENABLED:-0}" if [ "$goos" = "android" ]; then if [ "$goarch" = "amd64" ]; then - cc=${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/x86_64-linux-android30-clang + cc="${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/x86_64-linux-android${ANDROID_SDK_VERSION}-clang" + cgo_enabled="1" elif [ "$goarch" = "arm64" ]; then - cc=${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android30-clang + cc="${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android${ANDROID_SDK_VERSION}-clang" + cgo_enabled="1" fi - GOOS="$goos" GOARCH="$goarch" CGO_ENABLED=1 CC="$cc" go build -trimpath -ldflags="-s -w" -o "dist/${p}${ext}" - continue fi - GOOS="$goos" GOARCH="$goarch" CGO_ENABLED="${CGO_ENABLED:-0}" go build -trimpath -ldflags="-s -w" -o "dist/${p}${ext}" + GOOS="$goos" GOARCH="$goarch" CGO_ENABLED="$cgo_enabled" CC="$cc" go build -trimpath -ldflags="-s -w" -o "dist/${p}${ext}" done fi From a696f356b3e08117922ba53adfc5e87c7086b13a Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Tue, 3 Sep 2024 13:49:39 -0600 Subject: [PATCH 03/15] Exit if release android is enabled, but android SDK version is not set --- build_and_release.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/build_and_release.sh b/build_and_release.sh index 4275c9f..c8922c5 100755 --- a/build_and_release.sh +++ b/build_and_release.sh @@ -21,6 +21,12 @@ if [[ "$RELEASE_ANDROID" == "true" ]]; then platforms+=("android-arm64") fi +# We must know the android sdk version to build for android. +if [[ "$RELEASE_ANDROID" == "true" && -z "$ANDROID_SDK_VERSION" ]]; then + echo "error: Cannot build for android without android_sdk_version." >&2 + exit 1 +fi + prerelease="" if [[ $GH_RELEASE_TAG = *-* ]]; then prerelease="--prerelease" From 0ad591f2f93b3aa2d8540ebd8311cdc97432aa78 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:44:26 -0600 Subject: [PATCH 04/15] Add new details for building Go extensions on Android --- README.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0a478db..aa4ce15 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ When the `release` workflow finishes running, compiled binaries will be uploaded You can safely test out release automation by creating tags that have a `-` in them; for example: `v2.0.0-rc.1`. Such Releases will be published as _prereleases_ and will not count as a stable release of your extension. -To maximize portability of built products, this action builds Go binaries with [cgo](https://pkg.go.dev/cmd/cgo) disabled. To override that, set the `CGO_ENABLED` environment variable: +To maximize portability of built products, this action builds Go binaries with [cgo](https://pkg.go.dev/cmd/cgo) disabled unless you enable building for Android targets. To override cgo for all build targets, set the `CGO_ENABLED` environment variable: ```yaml - uses: cli/gh-extension-precompile@v1 @@ -44,6 +44,29 @@ To maximize portability of built products, this action builds Go binaries with [ CGO_ENABLED: 1 ``` +### Building for Android + +As of `gh-extension-precompile@2`, building for Android targets like `android-arm64` and `android-amd64` is disabled by default. To enable building for Android targets, set at least the `release_android` and `android_sdk_version` action inputs: + +```yaml +- uses: cli/gh-extension-precompile@v2 + with: + release_android: true + android_sdk_version: 34 +``` + +If you are running the workflow on a GitHub hosted runner, you do not need to set the `android_ndk_home` input. The Android SDK Build-tools and environment variables required to build for Android targets are [pre-installed and configured on GitHub hosted runners](https://github.com/actions/runner-images/blob/8cdc506384655ceaaa62d3f800e15b844e06bea4/images/ubuntu/Ubuntu2404-Readme.md?plain=1#L214-L233). + +However, if you are running the workflow on a self-hosted runner, you need to also configure the `android_ndk_home` action input to the installation path of the Android NDK on the runner: + +```yaml +- uses: cli/gh-extension-precompile@v2 + with: + release_android: true + android_sdk_version: 34 + android_ndk_home: /path/to/android-ndk +``` + ## Extensions written in other compiled languages If you aren't using Go for your compiled extension, you'll need to provide your own script for compiling your extension: From c6fd9fd1439651d815f6bbbf39c81b778474bac4 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:46:24 -0600 Subject: [PATCH 05/15] Bump gh-extension-precompile to v2 in examples --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index aa4ce15..dee958a 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - uses: cli/gh-extension-precompile@v1 + - uses: cli/gh-extension-precompile@v2 with: go_version: "1.16" ``` @@ -39,14 +39,14 @@ You can safely test out release automation by creating tags that have a `-` in t To maximize portability of built products, this action builds Go binaries with [cgo](https://pkg.go.dev/cmd/cgo) disabled unless you enable building for Android targets. To override cgo for all build targets, set the `CGO_ENABLED` environment variable: ```yaml -- uses: cli/gh-extension-precompile@v1 +- uses: cli/gh-extension-precompile@v2 env: CGO_ENABLED: 1 ``` ### Building for Android -As of `gh-extension-precompile@2`, building for Android targets like `android-arm64` and `android-amd64` is disabled by default. To enable building for Android targets, set at least the `release_android` and `android_sdk_version` action inputs: +As of `gh-extension-precompile@v2`, building for Android targets like `android-arm64` and `android-amd64` is disabled by default. To enable building for Android targets, set at least the `release_android` and `android_sdk_version` action inputs: ```yaml - uses: cli/gh-extension-precompile@v2 @@ -72,7 +72,7 @@ However, if you are running the workflow on a self-hosted runner, you need to al If you aren't using Go for your compiled extension, you'll need to provide your own script for compiling your extension: ```yaml -- uses: cli/gh-extension-precompile@v1 +- uses: cli/gh-extension-precompile@v2 with: build_script_override: "script/build.sh" ``` @@ -117,7 +117,7 @@ jobs: with: gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} passphrase: ${{ secrets.GPG_PASSPHRASE }} - - uses: cli/gh-extension-precompile@v1 + - uses: cli/gh-extension-precompile@v2 with: gpg_fingerprint: ${{ steps.import_gpg.outputs.fingerprint }} ``` @@ -147,7 +147,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - uses: cli/gh-extension-precompile@v1 + - uses: cli/gh-extension-precompile@v2 with: generate_attestations: true ``` From c914101cec6d3e46e834a9c57ab1da1dd230da3b Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:53:21 -0600 Subject: [PATCH 06/15] doc: custom build process for Go extensions Add heading to readme for customizing the build process for Go extensions that refers users to "extensions written in other compiled languages" section. This removes duplicating information that is the same for either case. --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index dee958a..ab9773c 100644 --- a/README.md +++ b/README.md @@ -67,9 +67,13 @@ However, if you are running the workflow on a self-hosted runner, you need to al android_ndk_home: /path/to/android-ndk ``` +### Customizing the build process for Go extensions + +If you need to customize the build process for your Go extension, you can provide a custom build script. See [Extensions written in other compiled languages](#extensions-written-in-other-compiled-languages) below for instructions. + ## Extensions written in other compiled languages -If you aren't using Go for your compiled extension, you'll need to provide your own script for compiling your extension: +If you aren't using Go for your compiled extension, or your Go extension requires customizations to the build script, you'll need to provide your own script for compiling your extension: ```yaml - uses: cli/gh-extension-precompile@v2 From 6c0db9792ace200f9ea9bf242211aba0ad5bcd10 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:53:51 -0600 Subject: [PATCH 07/15] Slim action input description Slim down the action input description. Lean on the readme to document this in more depth instead. --- action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.yml b/action.yml index 9abe7fe..ec9f171 100644 --- a/action.yml +++ b/action.yml @@ -24,7 +24,7 @@ inputs: description: "Whether to release android binaries, defaults to `false` if unspecified" default: false android_ndk_home: - description: "Path to the Android NDK for android-amd64 and android-arm64 builds, required for Go 1.22 or newer, defaults to `ANDROID_NDK_HOME` environment variable if unspecified" + description: "Path to the Android NDK for android-amd64 and android-arm64 builds" android_sdk_version: description: "Android SDK build-tools version" branding: From 232e0b2319f2e5be1942f3d148b9029c3f160906 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:57:41 -0600 Subject: [PATCH 08/15] include go version file in android build examples --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index ab9773c..6644e34 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,7 @@ As of `gh-extension-precompile@v2`, building for Android targets like `android-a ```yaml - uses: cli/gh-extension-precompile@v2 with: + go_version_file: go.mod release_android: true android_sdk_version: 34 ``` @@ -62,6 +63,7 @@ However, if you are running the workflow on a self-hosted runner, you need to al ```yaml - uses: cli/gh-extension-precompile@v2 with: + go_version_file: go.mod release_android: true android_sdk_version: 34 android_ndk_home: /path/to/android-ndk From 9e8f0e0d75297c74fbc337ba18d16a59d0cab9df Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:58:17 -0600 Subject: [PATCH 09/15] Link to building for android heading --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6644e34..9a88251 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ When the `release` workflow finishes running, compiled binaries will be uploaded You can safely test out release automation by creating tags that have a `-` in them; for example: `v2.0.0-rc.1`. Such Releases will be published as _prereleases_ and will not count as a stable release of your extension. -To maximize portability of built products, this action builds Go binaries with [cgo](https://pkg.go.dev/cmd/cgo) disabled unless you enable building for Android targets. To override cgo for all build targets, set the `CGO_ENABLED` environment variable: +To maximize portability of built products, this action builds Go binaries with [cgo](https://pkg.go.dev/cmd/cgo) disabled unless you [enable building for Android targets](#building-for-android). To override cgo for all build targets, set the `CGO_ENABLED` environment variable: ```yaml - uses: cli/gh-extension-precompile@v2 From 8a0829e37dfd7e0cd844510f5fc82a7394a8ec41 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:58:46 -0600 Subject: [PATCH 10/15] Use go_version_file instead of gh_version --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9a88251..44ff5c2 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ jobs: - uses: actions/checkout@v3 - uses: cli/gh-extension-precompile@v2 with: - go_version: "1.16" + go_version_file: go.mod ``` Then, either push a new git tag like `v1.0.0` to your repository, or create a new Release and have it initialize the associated git tag. From 53167908c96913659e7b5c4c97b0f5ef60a82d64 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:59:27 -0600 Subject: [PATCH 11/15] Update actions/checkout to v4 in readme examples --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 44ff5c2..2a8757f 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ jobs: release: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: cli/gh-extension-precompile@v2 with: go_version_file: go.mod @@ -117,7 +117,7 @@ jobs: release: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - id: import_gpg uses: crazy-max/ghaction-import-gpg@v5 with: From 790d7b40017baf6280533ca19feeb7db9726ae75 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 17:00:05 -0600 Subject: [PATCH 12/15] Remove extra newlines --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 2a8757f..d2a3fb0 100644 --- a/README.md +++ b/README.md @@ -128,7 +128,6 @@ jobs: gpg_fingerprint: ${{ steps.import_gpg.outputs.fingerprint }} ``` - ## Support for Artifact Attestations This action can optionally generate signed build provenance attestations for all published executables within `${{ github.workspace }}/dist/*`. @@ -158,7 +157,6 @@ jobs: generate_attestations: true ``` - ## Authors - nate smith From 343cbd682ff0cf287cfdfcebe55530d17165e1f6 Mon Sep 17 00:00:00 2001 From: bagtoad <47394200+BagToad@users.noreply.github.com> Date: Mon, 9 Sep 2024 17:10:48 -0600 Subject: [PATCH 13/15] Check that ANDROID_NDK_HOME is set --- build_and_release.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/build_and_release.sh b/build_and_release.sh index c8922c5..a438d2b 100755 --- a/build_and_release.sh +++ b/build_and_release.sh @@ -27,6 +27,13 @@ if [[ "$RELEASE_ANDROID" == "true" && -z "$ANDROID_SDK_VERSION" ]]; then exit 1 fi +# We must have `ANDROID_NDK_HOME` set to build for android. +# This will be available by default on GitHub hosted runners. +if [[ "$RELEASE_ANDROID" == "true" && ! -d "$ANDROID_NDK_HOME" ]]; then + echo "error: Cannot build for android without android_ndk_home." >&2 + exit 1 +fi + prerelease="" if [[ $GH_RELEASE_TAG = *-* ]]; then prerelease="--prerelease" From a1f599bb10e228228dc5cdc5bc1e983f13fc6310 Mon Sep 17 00:00:00 2001 From: Kynan Ware <47394200+BagToad@users.noreply.github.com> Date: Tue, 10 Sep 2024 12:40:44 -0600 Subject: [PATCH 14/15] Apply suggestions from code review Co-authored-by: Andy Feller --- README.md | 27 ++++++++------------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index d2a3fb0..72b251b 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ When the `release` workflow finishes running, compiled binaries will be uploaded You can safely test out release automation by creating tags that have a `-` in them; for example: `v2.0.0-rc.1`. Such Releases will be published as _prereleases_ and will not count as a stable release of your extension. -To maximize portability of built products, this action builds Go binaries with [cgo](https://pkg.go.dev/cmd/cgo) disabled unless you [enable building for Android targets](#building-for-android). To override cgo for all build targets, set the `CGO_ENABLED` environment variable: +To maximize portability of built products, this action builds Go binaries with [cgo](https://pkg.go.dev/cmd/cgo) disabled with the exception of [Android build targets](#building-for-android). To override cgo for all build targets, set the `CGO_ENABLED` environment variable: ```yaml - uses: cli/gh-extension-precompile@v2 @@ -46,28 +46,17 @@ To maximize portability of built products, this action builds Go binaries with [ ### Building for Android -As of `gh-extension-precompile@v2`, building for Android targets like `android-arm64` and `android-amd64` is disabled by default. To enable building for Android targets, set at least the `release_android` and `android_sdk_version` action inputs: +`gh-extension-precompile@v2` introduces a breaking change by disabling `android-arm64` and `android-amd64` build targets by default due to [Go external linking requirements](https://github.com/cli/gh-extension-precompile/issues/50#issuecomment-2078086299). -```yaml -- uses: cli/gh-extension-precompile@v2 - with: - go_version_file: go.mod - release_android: true - android_sdk_version: 34 -``` +To enable Android build targets: -If you are running the workflow on a GitHub hosted runner, you do not need to set the `android_ndk_home` input. The Android SDK Build-tools and environment variables required to build for Android targets are [pre-installed and configured on GitHub hosted runners](https://github.com/actions/runner-images/blob/8cdc506384655ceaaa62d3f800e15b844e06bea4/images/ubuntu/Ubuntu2404-Readme.md?plain=1#L214-L233). +1. `release_android` must be set to `true` +2. `android_sdk_version` must be set to a targeted [Android API level](https://developer.android.com/tools/releases/platforms) +3. `android_ndk_home` must be set to the path to Android NDK installed on Actions runner -However, if you are running the workflow on a self-hosted runner, you need to also configure the `android_ndk_home` action input to the installation path of the Android NDK on the runner: + `cli/gh-extension-precompile` will use pre-installed Android tools on GitHub-managed runners by default; self-hosted runners will need to install and configure this input. -```yaml -- uses: cli/gh-extension-precompile@v2 - with: - go_version_file: go.mod - release_android: true - android_sdk_version: 34 - android_ndk_home: /path/to/android-ndk -``` + _For more information on Android NDK installed on GitHub-managed runners, see [`actions/runner-images`](https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md#android) ### Customizing the build process for Go extensions From 1900d4e8780d44a0c38594e7a3d8be276c704fa1 Mon Sep 17 00:00:00 2001 From: Kynan Ware <47394200+BagToad@users.noreply.github.com> Date: Tue, 10 Sep 2024 12:52:53 -0600 Subject: [PATCH 15/15] fix missing underscore in readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 72b251b..5b90db7 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,7 @@ To enable Android build targets: `cli/gh-extension-precompile` will use pre-installed Android tools on GitHub-managed runners by default; self-hosted runners will need to install and configure this input. - _For more information on Android NDK installed on GitHub-managed runners, see [`actions/runner-images`](https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md#android) + _For more information on Android NDK installed on GitHub-managed runners, see [`actions/runner-images`](https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md#android)_ ### Customizing the build process for Go extensions