From d1d0b294d74add9fd870b7c5df29e126c6713fc8 Mon Sep 17 00:00:00 2001 From: Emil Lerch Date: Mon, 22 Jan 2024 15:28:12 -0800 Subject: [PATCH] seperate github workflows --- .github/workflows/build.yaml | 35 +++++++++++++++++++++++++++ .github/workflows/zig-mach.yaml | 38 ++++++++++++++++++++++++++++++ .github/workflows/zig-nightly.yaml | 36 ++++++++++++++++++++++++++++ 3 files changed, 109 insertions(+) create mode 100644 .github/workflows/build.yaml create mode 100644 .github/workflows/zig-mach.yaml create mode 100644 .github/workflows/zig-nightly.yaml diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..a3c7550 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,35 @@ +name: AWS-Zig Build +run-name: ${{ github.actor }} building AWS Zig SDK +on: + push: + branches: + - '*' + - '!zig-develop*' +jobs: + build-zig-0.11.0-amd64-host: + runs-on: ubuntu-latest + # Need to use the default container with node and all that, so we can + # use JS-based actions like actions/checkout@v3... + # container: + # image: alpine:3.15.0 + env: + ZIG_VERSION: 0.11.0 + ARCH: x86_64 + if: ${{ env.GITEA_ACTIONS != 'true' }} + steps: + - name: Check out repository code + uses: actions/checkout@v3 + # ARCH is fine, but we can't substitute directly because zig + # uses x86_64 instead of amd64. They also use aarch64 instead of arm64. + # + # However, arm64/linux isn't quite fully tier 1 yet, so this is more of a + # TODO: https://github.com/ziglang/zig/issues/2443 + - name: Install zig + run: | + wget -q https://ziglang.org/download/${ZIG_VERSION}/zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz + tar x -C /usr/local -f zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz + ln -s /usr/local/zig-linux-${ARCH}-${ZIG_VERSION}/zig /usr/local/bin/zig + - name: Run tests + run: zig build test --verbose + - name: Build example + run: ( cd example && zig build ) # Make sure example builds diff --git a/.github/workflows/zig-mach.yaml b/.github/workflows/zig-mach.yaml new file mode 100644 index 0000000..81bd89c --- /dev/null +++ b/.github/workflows/zig-mach.yaml @@ -0,0 +1,38 @@ +name: aws-zig mach nominated build +run-name: ${{ github.actor }} building AWS Zig SDK +on: + schedule: + - cron: '0 12 * * *' # noon UTC, 4AM Pacific + push: + branches: + - 'zig-develop*' +jobs: + build-zig-nightly: + runs-on: ubuntu-latest + # Need to use the default container with node and all that, so we can + # use JS-based actions like actions/checkout@v3... + # container: + # image: alpine:3.15.0 + env: + ZIG_VERSION: mach-latest + ARCH: x86_64 + if: ${{ env.GITEA_ACTIONS != 'true' }} + steps: + - name: Check out repository code + uses: actions/checkout@v3 + # ARCH is fine, but we can't substitute directly because zig + # uses x86_64 instead of amd64. They also use aarch64 instead of arm64. + # + # However, arm64/linux isn't quite fully tier 1 yet, so this is more of a + # TODO: https://github.com/ziglang/zig/issues/2443 + - name: Install zig + run: | + apt-get update && apt-get install -y jq + file="$(curl -Osw '%{filename_effective}' "$(curl -s https://machengine.org/zig/index.json |jq -r '."'${ZIG_VERSION}'"."x86_64-linux".tarball')")" + tar x -C /usr/local -f "${file}" + ln -s /usr/local/"${file%%.tar.xz}"/zig /usr/local/bin/zig + zig version + - name: Run tests + run: zig build test --verbose + - name: Build example + run: ( cd example && zig build ) # Make sure example builds diff --git a/.github/workflows/zig-nightly.yaml b/.github/workflows/zig-nightly.yaml new file mode 100644 index 0000000..b532675 --- /dev/null +++ b/.github/workflows/zig-nightly.yaml @@ -0,0 +1,36 @@ +name: aws-zig nightly build +run-name: ${{ github.actor }} building AWS Zig SDK +on: + push: + branches: + - 'zig-develop*' +jobs: + build-zig-nightly: + runs-on: ubuntu-latest + # Need to use the default container with node and all that, so we can + # use JS-based actions like actions/checkout@v3... + # container: + # image: alpine:3.15.0 + env: + ZIG_VERSION: master + ARCH: x86_64 + if: ${{ env.GITEA_ACTIONS != 'true' }} + steps: + - name: Check out repository code + uses: actions/checkout@v3 + # ARCH is fine, but we can't substitute directly because zig + # uses x86_64 instead of amd64. They also use aarch64 instead of arm64. + # + # However, arm64/linux isn't quite fully tier 1 yet, so this is more of a + # TODO: https://github.com/ziglang/zig/issues/2443 + - name: Install zig + run: | + apt-get update && apt-get install -y jq + file="$(curl -Osw '%{filename_effective}' "$(curl -s https://ziglang.org/download/index.json |jq -r '."'${ZIG_VERSION}'"."x86_64-linux".tarball')")" + tar x -C /usr/local -f "${file}" + ln -s /usr/local/"${file%%.tar.xz}"/zig /usr/local/bin/zig + zig version + - name: Run tests + run: zig build test --verbose + - name: Build example + run: ( cd example && zig build ) # Make sure example builds