summaryrefslogtreecommitdiff
path: root/mut/neovim/pack/plugins/start/blink.cmp/.github/workflows/release.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'mut/neovim/pack/plugins/start/blink.cmp/.github/workflows/release.yaml')
-rw-r--r--mut/neovim/pack/plugins/start/blink.cmp/.github/workflows/release.yaml130
1 files changed, 130 insertions, 0 deletions
diff --git a/mut/neovim/pack/plugins/start/blink.cmp/.github/workflows/release.yaml b/mut/neovim/pack/plugins/start/blink.cmp/.github/workflows/release.yaml
new file mode 100644
index 0000000..b2d643d
--- /dev/null
+++ b/mut/neovim/pack/plugins/start/blink.cmp/.github/workflows/release.yaml
@@ -0,0 +1,130 @@
+name: Release
+
+on:
+ push:
+ tags:
+ - "v*"
+
+jobs:
+ build:
+ name: Build ${{ matrix.target }}
+ runs-on: ${{ matrix.os }}
+ permissions:
+ contents: read
+ strategy:
+ matrix:
+ include:
+ ## Linux builds
+ # Glibc 2.31
+ - os: ubuntu-20.04
+ target: x86_64-unknown-linux-gnu
+ artifact_name: target/x86_64-unknown-linux-gnu/release/libblink_cmp_fuzzy.so
+ - os: ubuntu-20.04
+ target: aarch64-unknown-linux-gnu
+ artifact_name: target/aarch64-unknown-linux-gnu/release/libblink_cmp_fuzzy.so
+ # Musl 1.2.3
+ - os: ubuntu-latest
+ target: x86_64-unknown-linux-musl
+ artifact_name: target/x86_64-unknown-linux-musl/release/libblink_cmp_fuzzy.so
+ - os: ubuntu-latest
+ target: aarch64-unknown-linux-musl
+ artifact_name: target/aarch64-unknown-linux-musl/release/libblink_cmp_fuzzy.so
+ # Android(Termux)
+ - os: ubuntu-latest
+ target: aarch64-linux-android
+ artifact_name: target/aarch64-linux-android/release/libblink_cmp_fuzzy.so
+
+ ## macOS builds
+ - os: macos-latest
+ target: x86_64-apple-darwin
+ artifact_name: target/x86_64-apple-darwin/release/libblink_cmp_fuzzy.dylib
+ - os: macos-latest
+ target: aarch64-apple-darwin
+ artifact_name: target/aarch64-apple-darwin/release/libblink_cmp_fuzzy.dylib
+
+ ## Windows builds
+ - os: windows-latest
+ target: x86_64-pc-windows-msvc
+ artifact_name: target/x86_64-pc-windows-msvc/release/blink_cmp_fuzzy.dll
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Install Rust
+ run: |
+ rustup toolchain install nightly
+ rustup default nightly
+ rustup target add ${{ matrix.target }}
+
+ - name: Build for Linux
+ if: contains(matrix.os, 'ubuntu')
+ run: |
+ cargo install cross --git https://github.com/cross-rs/cross
+ cross build --release --target ${{ matrix.target }}
+ mv "${{ matrix.artifact_name }}" "${{ matrix.target }}.so"
+
+ - name: Build for macOS
+ if: contains(matrix.os, 'macos')
+ run: |
+ # Ventura (https://en.wikipedia.org/wiki/MacOS_version_history#Releases)
+ MACOSX_DEPLOYMENT_TARGET="13" cargo build --release --target ${{ matrix.target }}
+ mv "${{ matrix.artifact_name }}" "${{ matrix.target }}.dylib"
+
+ - name: Build for Windows
+ if: contains(matrix.os, 'windows')
+ run: |
+ cargo build --release --target ${{ matrix.target }}
+ mv "${{ matrix.artifact_name }}" "${{ matrix.target }}.dll"
+
+ - name: Upload artifacts
+ uses: actions/upload-artifact@v4
+ with:
+ name: ${{ matrix.target }}
+ path: ${{ matrix.target }}.*
+
+ release:
+ name: Release
+ needs: build
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+ steps:
+ - name: Download artifacts
+ uses: actions/download-artifact@v4
+
+ - name: Generate checksums
+ run: |
+ for file in ./**/*; do
+ sha256sum "$file" > "${file}.sha256"
+ done
+
+ - name: Upload Release Assets
+ uses: softprops/action-gh-release@v2
+ with:
+ name: ${{ github.ref_name }}
+ tag_name: ${{ github.ref_name }}
+ token: ${{ github.token }}
+ files: ./**/*
+ draft: false
+ prerelease: false
+ generate_release_notes: true
+
+ deploy-docs:
+ name: Deploy docs
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+ steps:
+ - uses: actions/checkout@v4
+ - uses: actions/setup-node@v4
+
+ - name: Build
+ run: npm ci && npm run build:release
+ working-directory: docs
+
+ - name: Deploy
+ uses: cloudflare/wrangler-action@v3
+ with:
+ apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
+ accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
+ command: pages deploy docs/.vitepress/dist --project-name=blink-cmp