From 8e119d6fbd19868f2b43bc760f65c429444ab83f Mon Sep 17 00:00:00 2001 From: Adonis Ling Date: Thu, 30 May 2024 11:37:26 +0800 Subject: [PATCH] Add release workflow --- .github/templates/release.md | 9 +++++ .github/workflows/release.yml | 68 +++++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 .github/templates/release.md create mode 100644 .github/workflows/release.yml diff --git a/.github/templates/release.md b/.github/templates/release.md new file mode 100644 index 0000000..d69b723 --- /dev/null +++ b/.github/templates/release.md @@ -0,0 +1,9 @@ +## MD5 Checksums +``` + +``` + +## SHA256 Checksums +``` + +``` diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..4d4b1fb --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,68 @@ +name: Release + +on: + push: + # tags: + # - '*' + +jobs: + build: + name: Build + strategy: + matrix: + config: + - name: Linux + os: ubuntu-latest + artifact_name: wrapper_c-linux-output + - name: macOS + os: macos-latest + artifact_name: wrapper_c-macos-output + runs-on: ${{ matrix.config.os }} + permissions: + contents: write + steps: + - uses: actions/checkout@v4 + with: + ref: ${{ github.ref_name }} + submodules: true + fetch-depth: 0 + + - uses: actions/setup-python@v5 + with: + python-version: '3.x' + + - run: pip install meson ninja + + - name: Build + run: | + kernel="$(uname -s | awk '{print tolower($0)}')" + arch="$(uname -m)" + meson --prefix="$(pwd)/wrapper_c-${kernel}-${arch}" --buildtype=release build + ninja -C build install + + mkdir -p output + tar -zcvf "output/wrapper_c-${kernel}-${arch}.tgz" "wrapper_c-${kernel}-${arch}" + + - uses: actions/upload-artifact@v4 + with: + name: ${{ matrix.config.artifact_name }} + path: output + + publish: + needs: build + runs-on: ubuntu-latest + steps: + - run: mkdir -p output + + - uses: actions/download-artifact@v4 + with: + name: wrapper_c-linux-output + path: output + + - uses: actions/download-artifact@v4 + with: + name: wrapper_c-macos-output + path: output + + - run: | + ls -R .