From c2eec54544ad7d9ef5cfd7cc05811af0c0ef0f84 Mon Sep 17 00:00:00 2001 From: Emily Samp Date: Mon, 2 Dec 2024 16:13:07 -0600 Subject: [PATCH] GitHub Action that uploads builds as release artifacts This GitHub Action builds Prism for Linux and MacOS and then uploads the builds to the latest release to be used by clients such as Sorbet --- .github/workflows/build-artifacts.yml | 39 +++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/build-artifacts.yml diff --git a/.github/workflows/build-artifacts.yml b/.github/workflows/build-artifacts.yml new file mode 100644 index 0000000000..6e6c245a57 --- /dev/null +++ b/.github/workflows/build-artifacts.yml @@ -0,0 +1,39 @@ +name: Build Library Artifacts + +concurrency: + group: "${{github.workflow}}-${{github.ref}}" + cancel-in-progress: true + +on: + release: + types: [created] + workflow_dispatch: + +jobs: + build: + strategy: + matrix: + os: [ubuntu-latest, macos-latest] + runs-on: ${{ matrix.os }} + + steps: + - uses: actions/checkout@v3 + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.3' + bundler-cache: true + + - name: Build library + run: bundle exec rake compile + + - name: Upload to release + if: github.event_name == 'release' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + uses: softprops/action-gh-release@v1 + with: + files: | + build/libprism.so + build/libprism.dylib