Skip to content

Build binaries

Build binaries #8

name: Build binaries
on:
workflow_dispatch:
jobs:
macos-x86:
name: macos-x86
runs-on: macos-15-intel
env:
ARCHIVE: git-timeline-macos-x86.tar.gz
defaults:
run:
shell: bash
steps:
- name: Check out repo
uses: actions/checkout@v5
with:
ref: '2.0'
- name: Install SDKMAN! and Java 21 Graal
run: |
curl -s "https://get.sdkman.io" | bash
source "${HOME}/.sdkman/bin/sdkman-init.sh"
sdk install java 21.0.8-graal
java --version
- name: Build binary
env:
JAVA_HOME: ${{ env.HOME }}/.sdkman/candidates/java/current
GRAALVM_HOME: ${{ env.HOME }}/.sdkman/candidates/java/current
run: |
source "${HOME}/.sdkman/bin/sdkman-init.sh"
make bin
- name: Package binary
run: |
cp -v target/git-timeline .
tar czf ${ARCHIVE} git-timeline
- name: Install Wrangler
run: |
npm install -g wrangler@latest
- name: Upload binary
env:
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
run: |
wrangler r2 object put git-timeline-binaries/${ARCHIVE} -f ${ARCHIVE} --remote