mirror of
https://github.com/netchx/netch.git
synced 2026-03-14 17:43:18 +08:00
111 lines
3.7 KiB
YAML
111 lines
3.7 KiB
YAML
name: Netch Release CI
|
|
on:
|
|
push:
|
|
tags:
|
|
- '*.*.*'
|
|
|
|
jobs:
|
|
build:
|
|
name: Build
|
|
runs-on: windows-2022
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
fetch-depth: 1
|
|
|
|
- name: Checksum
|
|
shell: pwsh
|
|
run: |
|
|
$otherHash=$(.\Other\sha256.ps1)
|
|
$redirHash=$(.\Redirector\sha256.ps1)
|
|
$routeHash=$(.\RouteHelper\sha256.ps1)
|
|
|
|
echo "OTHER_SHA256=$otherHash" | Out-File -Append -Encoding UTF8 -FilePath $Env:GITHUB_ENV
|
|
echo "REDIR_SHA256=$redirHash" | Out-File -Append -Encoding UTF8 -FilePath $Env:GITHUB_ENV
|
|
echo "ROUTE_SHA256=$routeHash" | Out-File -Append -Encoding UTF8 -FilePath $Env:GITHUB_ENV
|
|
|
|
- name: Cache Other
|
|
uses: actions/cache@v2
|
|
with:
|
|
key: Netch-${{ runner.os }}-Other-${{ env.OTHER_SHA256 }}
|
|
path: .\Other\release
|
|
|
|
- name: Cache Redirector
|
|
uses: actions/cache@v2
|
|
with:
|
|
key: Netch-${{ runner.os }}-Redirector-${{ env.REDIR_SHA256 }}
|
|
path: .\Redirector\bin
|
|
|
|
- name: Cache RouteHelper
|
|
uses: actions/cache@v2
|
|
with:
|
|
key: Netch-${{ runner.os }}-RouteHelper-${{ env.ROUTE_SHA256 }}
|
|
path: .\RouteHelper\bin
|
|
|
|
- name: Check Other
|
|
id: check_other
|
|
uses: andstor/file-existence-action@v1
|
|
with:
|
|
files: .\other\release\aiodns.bin
|
|
|
|
- name: Setup Go
|
|
uses: actions/setup-go@v2
|
|
if: steps.check_other.outputs.files_exists == 'false'
|
|
with:
|
|
go-version: 1.17.2
|
|
|
|
- name: Setup C++
|
|
uses: msys2/setup-msys2@v2
|
|
if: steps.check_other.outputs.files_exists == 'false'
|
|
with:
|
|
update: true
|
|
release: true
|
|
install: base-devel git mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-libevent mingw-w64-x86_64-pcre2 mingw-w64-x86_64-freetype mingw-w64-x86_64-libpng mingw-w64-x86_64-bzip2 mingw-w64-x86_64-openssl mingw-w64-x86_64-mbedtls mingw-w64-x86_64-libsodium mingw-w64-x86_64-c-ares mingw-w64-x86_64-boost mingw-w64-x86_64-libmariadbclient unzip p7zip
|
|
|
|
- name: Setup Rust
|
|
uses: actions-rs/toolchain@v1
|
|
if: steps.check_other.outputs.files_exists == 'false'
|
|
with:
|
|
toolchain: nightly
|
|
profile: minimal
|
|
|
|
- name: Build
|
|
shell: pwsh
|
|
run: |
|
|
.\build.ps1 -Configuration Release -OutputPath release
|
|
|
|
- name: Package
|
|
shell: pwsh
|
|
run: |
|
|
7z a -mx9 Netch.7z release
|
|
7z rn Netch.7z release Netch
|
|
|
|
- name: Checksum
|
|
shell: pwsh
|
|
run: |
|
|
$hash=(Get-FileHash Netch.7z -Algorithm SHA256).Hash.ToLower()
|
|
echo "NETCH_SHA256=$hash" | Out-File -Append -Encoding UTF8 -FilePath $Env:GITHUB_ENV
|
|
|
|
- name: Release
|
|
uses: softprops/action-gh-release@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
prerelease: ${{ contains(github.ref, '-') }}
|
|
draft: false
|
|
files: |
|
|
Netch.7z
|
|
body: |
|
|
[](https://t.me/netch_channel) [](https://t.me/netch_group)
|
|
## Changelogs
|
|
* This is an automated deployment of GitHub Actions, the change log should be updated manually soon
|
|
|
|
## 更新日志
|
|
* 这是 GitHub Actions 自动化部署,更新日志应该很快会手动更新
|
|
|
|
## 校验和
|
|
| 文件名 | SHA256 |
|
|
| :- | :- |
|
|
| Netch.7z | ${{ env.Netch_SHA256 }} |
|