mirror of
https://github.com/EasyTier/EasyTier.git
synced 2025-05-19 10:33:45 +00:00
Compare commits
11
Commits
v2.2.2
...
win7_target
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2371e9a13c | ||
|
|
8ccc22a293 | ||
|
|
bcc137b45f | ||
|
|
feccc3ff8d | ||
|
|
314f00700f | ||
|
|
674f6d1374 | ||
|
|
ed6dbed670 | ||
|
|
c350c760f4 | ||
|
|
818a6da8d1 | ||
|
|
52fc9a6aef | ||
|
|
7996f487e8 |
+55
-43
@@ -5,6 +5,12 @@ on:
|
||||
branches: ["develop", "main", "releases/**"]
|
||||
pull_request:
|
||||
branches: ["develop", "main"]
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
tags:
|
||||
description: 'Test scenario tags'
|
||||
required: false
|
||||
type: boolean
|
||||
|
||||
env:
|
||||
CARGO_TERM_COLOR: always
|
||||
@@ -36,50 +42,53 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- TARGET: aarch64-unknown-linux-musl
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-aarch64
|
||||
- TARGET: x86_64-unknown-linux-musl
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-x86_64
|
||||
- TARGET: mips-unknown-linux-musl
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-mips
|
||||
- TARGET: mipsel-unknown-linux-musl
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-mipsel
|
||||
- TARGET: armv7-unknown-linux-musleabihf # raspberry pi 2-3-4, not tested
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-armv7hf
|
||||
- TARGET: armv7-unknown-linux-musleabi # raspberry pi 2-3-4, not tested
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-armv7
|
||||
- TARGET: arm-unknown-linux-musleabihf # raspberry pi 0-1, not tested
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-armhf
|
||||
- TARGET: arm-unknown-linux-musleabi # raspberry pi 0-1, not tested
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: linux-arm
|
||||
# - TARGET: aarch64-unknown-linux-musl
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-aarch64
|
||||
# - TARGET: x86_64-unknown-linux-musl
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-x86_64
|
||||
# - TARGET: mips-unknown-linux-musl
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-mips
|
||||
# - TARGET: mipsel-unknown-linux-musl
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-mipsel
|
||||
# - TARGET: armv7-unknown-linux-musleabihf # raspberry pi 2-3-4, not tested
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-armv7hf
|
||||
# - TARGET: armv7-unknown-linux-musleabi # raspberry pi 2-3-4, not tested
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-armv7
|
||||
# - TARGET: arm-unknown-linux-musleabihf # raspberry pi 0-1, not tested
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-armhf
|
||||
# - TARGET: arm-unknown-linux-musleabi # raspberry pi 0-1, not tested
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-arm
|
||||
|
||||
- TARGET: x86_64-apple-darwin
|
||||
OS: macos-latest
|
||||
ARTIFACT_NAME: macos-x86_64
|
||||
- TARGET: aarch64-apple-darwin
|
||||
OS: macos-latest
|
||||
ARTIFACT_NAME: macos-aarch64
|
||||
# - TARGET: x86_64-apple-darwin
|
||||
# OS: macos-latest
|
||||
# ARTIFACT_NAME: macos-x86_64
|
||||
# - TARGET: aarch64-apple-darwin
|
||||
# OS: macos-latest
|
||||
# ARTIFACT_NAME: macos-aarch64
|
||||
|
||||
- TARGET: x86_64-pc-windows-msvc
|
||||
OS: windows-latest
|
||||
ARTIFACT_NAME: windows-x86_64
|
||||
# - TARGET: x86_64-pc-windows-msvc
|
||||
# OS: windows-latest
|
||||
# ARTIFACT_NAME: windows-x86_64
|
||||
# - TARGET: x86_64-win7-windows-msvc
|
||||
# OS: windows-latest
|
||||
# ARTIFACT_NAME: windows-win7-x86_64
|
||||
|
||||
- TARGET: aarch64-pc-windows-msvc
|
||||
OS: windows-latest
|
||||
ARTIFACT_NAME: windows-arm64
|
||||
# - TARGET: aarch64-pc-windows-msvc
|
||||
# OS: windows-latest
|
||||
# ARTIFACT_NAME: windows-arm64
|
||||
|
||||
- TARGET: x86_64-unknown-freebsd
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: freebsd-13.2-x86_64
|
||||
BSD_VERSION: 13.2
|
||||
# - TARGET: x86_64-unknown-freebsd
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: freebsd-13.2-x86_64
|
||||
# BSD_VERSION: 13.2
|
||||
|
||||
runs-on: ${{ matrix.OS }}
|
||||
env:
|
||||
@@ -114,7 +123,10 @@ jobs:
|
||||
if: ${{ ! endsWith(matrix.TARGET, 'freebsd') }}
|
||||
run: |
|
||||
bash ./.github/workflows/install_rust.sh
|
||||
if [[ $OS =~ ^ubuntu.*$ && $TARGET =~ ^mips.*$ ]]; then
|
||||
|
||||
if [[ $TARGET =~ ^.*win7.*$ ]]; then
|
||||
cargo +nightly build --release -Z build-std=std,panic_abort --target $TARGET
|
||||
elif [[ $OS =~ ^ubuntu.*$ && $TARGET =~ ^mips.*$ ]]; then
|
||||
cargo +nightly build -r --verbose --target $TARGET -Z build-std=std,panic_abort --no-default-features --features mips --package=easytier
|
||||
else
|
||||
cargo build --release --verbose --target $TARGET
|
||||
@@ -148,8 +160,8 @@ jobs:
|
||||
|
||||
rustup set auto-self-update disable
|
||||
|
||||
rustup install 1.77
|
||||
rustup default 1.77
|
||||
rustup install 1.82
|
||||
rustup default 1.82
|
||||
|
||||
export CC=clang
|
||||
export CXX=clang++
|
||||
|
||||
+48
-29
@@ -35,40 +35,37 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- TARGET: aarch64-unknown-linux-musl
|
||||
OS: ubuntu-22.04
|
||||
GUI_TARGET: aarch64-unknown-linux-gnu
|
||||
ARTIFACT_NAME: linux-aarch64
|
||||
# - TARGET: aarch64-unknown-linux-musl
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: linux-aarch64
|
||||
- TARGET: x86_64-unknown-linux-musl
|
||||
OS: ubuntu-22.04
|
||||
GUI_TARGET: x86_64-unknown-linux-gnu
|
||||
ARTIFACT_NAME: linux-x86_64
|
||||
|
||||
- TARGET: x86_64-apple-darwin
|
||||
OS: macos-latest
|
||||
GUI_TARGET: x86_64-apple-darwin
|
||||
ARTIFACT_NAME: macos-x86_64
|
||||
- TARGET: aarch64-apple-darwin
|
||||
OS: macos-latest
|
||||
GUI_TARGET: aarch64-apple-darwin
|
||||
ARTIFACT_NAME: macos-aarch64
|
||||
# - TARGET: x86_64-apple-darwin
|
||||
# OS: macos-latest
|
||||
# ARTIFACT_NAME: macos-x86_64
|
||||
# - TARGET: aarch64-apple-darwin
|
||||
# OS: macos-latest
|
||||
# ARTIFACT_NAME: macos-aarch64
|
||||
|
||||
- TARGET: x86_64-pc-windows-msvc
|
||||
OS: windows-latest
|
||||
GUI_TARGET: x86_64-pc-windows-msvc
|
||||
ARTIFACT_NAME: windows-x86_64
|
||||
# - TARGET: x86_64-pc-windows-msvc
|
||||
# OS: windows-latest
|
||||
# ARTIFACT_NAME: windows-x86_64
|
||||
|
||||
- TARGET: aarch64-pc-windows-msvc
|
||||
# - TARGET: aarch64-pc-windows-msvc
|
||||
# OS: windows-latest
|
||||
# ARTIFACT_NAME: windows-arm64
|
||||
|
||||
- TARGET: x86_64-win7-windows-msvc
|
||||
OS: windows-latest
|
||||
GUI_TARGET: aarch64-pc-windows-msvc
|
||||
ARTIFACT_NAME: windows-arm64
|
||||
ARTIFACT_NAME: windows-win7-x86_64
|
||||
|
||||
runs-on: ${{ matrix.OS }}
|
||||
env:
|
||||
NAME: easytier
|
||||
TARGET: ${{ matrix.TARGET }}
|
||||
OS: ${{ matrix.OS }}
|
||||
GUI_TARGET: ${{ matrix.GUI_TARGET }}
|
||||
OSS_BUCKET: ${{ secrets.ALIYUN_OSS_BUCKET }}
|
||||
needs: pre_job
|
||||
if: needs.pre_job.outputs.should_skip != 'true'
|
||||
@@ -124,6 +121,21 @@ jobs:
|
||||
# GitHub repo token to use to avoid rate limiter
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Install GUI dependencies (x86 only)
|
||||
if: ${{ matrix.TARGET == 'x86_64-unknown-linux-musl' }}
|
||||
run: |
|
||||
sudo apt install -qq libwebkit2gtk-4.1-dev \
|
||||
libsoup3.0-dev \
|
||||
build-essential \
|
||||
curl \
|
||||
wget \
|
||||
file \
|
||||
libgtk-3-dev \
|
||||
librsvg2-dev \
|
||||
libxdo-dev \
|
||||
libssl-dev \
|
||||
patchelf
|
||||
|
||||
- name: Install GUI cross compile (aarch64 only)
|
||||
if: ${{ matrix.TARGET == 'aarch64-unknown-linux-musl' }}
|
||||
run: |
|
||||
@@ -161,19 +173,26 @@ jobs:
|
||||
- name: copy correct DLLs
|
||||
if: ${{ matrix.OS == 'windows-latest' }}
|
||||
run: |
|
||||
if [[ $GUI_TARGET =~ ^aarch64.*$ ]]; then
|
||||
if [[ $TARGET =~ ^aarch64.*$ ]]; then
|
||||
cp ./easytier/third_party/arm64/*.dll ./easytier-gui/src-tauri/
|
||||
else
|
||||
cp ./easytier/third_party/*.dll ./easytier-gui/src-tauri/
|
||||
fi
|
||||
|
||||
- name: Build GUI
|
||||
if: ${{ matrix.GUI_TARGET != '' }}
|
||||
uses: tauri-apps/tauri-action@v0
|
||||
if: ${{ ! contains(matrix.TARGET, 'win7') }}
|
||||
with:
|
||||
projectPath: ./easytier-gui
|
||||
# https://tauri.app/v1/guides/building/linux/#cross-compiling-tauri-applications-for-arm-based-devices
|
||||
args: --verbose --target ${{ matrix.GUI_TARGET }} ${{ matrix.OS == 'ubuntu-22.04' && contains(matrix.TARGET, 'aarch64') && '--bundles deb' || '' }}
|
||||
args: --verbose --target ${{ matrix.TARGET }} ${{ matrix.OS == 'ubuntu-22.04' && contains(matrix.TARGET, 'aarch64') && '--bundles deb' || '' }}
|
||||
|
||||
- name: Build GUI (Windows 7)
|
||||
uses: tauri-apps/tauri-action@v0
|
||||
if: ${{ contains(matrix.TARGET, 'win7') }}
|
||||
with:
|
||||
projectPath: ./easytier-gui
|
||||
args: --verbose -- -Z build-std=std,panic_abort --target ${{ matrix.TARGET }}
|
||||
|
||||
- name: Compress
|
||||
run: |
|
||||
@@ -186,14 +205,14 @@ jobs:
|
||||
fi
|
||||
# copy gui bundle, gui is built without specific target
|
||||
if [[ $OS =~ ^windows.*$ ]]; then
|
||||
mv ./target/$GUI_TARGET/release/bundle/nsis/*.exe ./artifacts/objects/
|
||||
mv ./target/$TARGET/release/bundle/nsis/*.exe ./artifacts/objects/
|
||||
elif [[ $OS =~ ^macos.*$ ]]; then
|
||||
mv ./target/$GUI_TARGET/release/bundle/dmg/*.dmg ./artifacts/objects/
|
||||
mv ./target/$TARGET/release/bundle/dmg/*.dmg ./artifacts/objects/
|
||||
elif [[ $OS =~ ^ubuntu.*$ && ! $TARGET =~ ^mips.*$ ]]; then
|
||||
mv ./target/$GUI_TARGET/release/bundle/deb/*.deb ./artifacts/objects/
|
||||
if [[ $GUI_TARGET =~ ^x86_64.*$ ]]; then
|
||||
mv ./target/$TARGET/release/bundle/deb/*.deb ./artifacts/objects/
|
||||
if [[ $TARGET =~ ^x86_64.*$ ]]; then
|
||||
# currently only x86 appimage is supported
|
||||
mv ./target/$GUI_TARGET/release/bundle/appimage/*.AppImage ./artifacts/objects/
|
||||
mv ./target/$TARGET/release/bundle/appimage/*.AppImage ./artifacts/objects/
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -5,23 +5,23 @@
|
||||
# - GUI_TARGET
|
||||
# - OS
|
||||
|
||||
echo "TARGET: $TARGET"
|
||||
echo "GUI_TARGET: $GUI_TARGET"
|
||||
echo "OS: $OS"
|
||||
|
||||
if [[ $TARGET =~ ^.*win7.*$ ]]; then
|
||||
echo "Install For Win7"
|
||||
rustup set auto-self-update disable
|
||||
rustup toolchain install nightly
|
||||
rustup component add rust-src --toolchain nightly
|
||||
rustup default nightly
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# dependencies are only needed on ubuntu as that's the only place where
|
||||
# we make cross-compilation
|
||||
if [[ $OS =~ ^ubuntu.*$ ]]; then
|
||||
sudo apt-get update && sudo apt-get install -qq crossbuild-essential-arm64 crossbuild-essential-armhf musl-tools libappindicator3-dev
|
||||
# for easytier-gui
|
||||
if [[ $GUI_TARGET != '' && $GUI_TARGET =~ ^x86_64.*$ ]]; then
|
||||
sudo apt install -qq libwebkit2gtk-4.1-dev \
|
||||
build-essential \
|
||||
curl \
|
||||
wget \
|
||||
file \
|
||||
libgtk-3-dev \
|
||||
librsvg2-dev \
|
||||
libxdo-dev \
|
||||
libssl-dev \
|
||||
patchelf
|
||||
fi
|
||||
# curl -s musl.cc | grep mipsel
|
||||
case $TARGET in
|
||||
mipsel-unknown-linux-musl)
|
||||
@@ -57,8 +57,8 @@ fi
|
||||
|
||||
# see https://github.com/rust-lang/rustup/issues/3709
|
||||
rustup set auto-self-update disable
|
||||
rustup install 1.77
|
||||
rustup default 1.77
|
||||
rustup install 1.82
|
||||
rustup default 1.82
|
||||
|
||||
# mips/mipsel cannot add target from rustup, need compile by ourselves
|
||||
if [[ $OS =~ ^ubuntu.*$ && $TARGET =~ ^mips.*$ ]]; then
|
||||
|
||||
+148
-148
@@ -1,170 +1,170 @@
|
||||
name: EasyTier Mobile
|
||||
# name: EasyTier Mobile
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: ["develop", "main", "releases/**"]
|
||||
pull_request:
|
||||
branches: ["develop", "main"]
|
||||
# on:
|
||||
# push:
|
||||
# branches: ["develop", "main", "releases/**"]
|
||||
# pull_request:
|
||||
# branches: ["develop", "main"]
|
||||
|
||||
env:
|
||||
CARGO_TERM_COLOR: always
|
||||
# env:
|
||||
# CARGO_TERM_COLOR: always
|
||||
|
||||
defaults:
|
||||
run:
|
||||
# necessary for windows
|
||||
shell: bash
|
||||
# defaults:
|
||||
# run:
|
||||
# # necessary for windows
|
||||
# shell: bash
|
||||
|
||||
jobs:
|
||||
pre_job:
|
||||
# continue-on-error: true # Uncomment once integration is finished
|
||||
runs-on: ubuntu-latest
|
||||
# Map a step output to a job output
|
||||
outputs:
|
||||
should_skip: ${{ steps.skip_check.outputs.should_skip == 'true' && !startsWith(github.ref_name, 'releases/') }}
|
||||
steps:
|
||||
- id: skip_check
|
||||
uses: fkirc/skip-duplicate-actions@v5
|
||||
with:
|
||||
# All of these options are optional, so you can remove them if you are happy with the defaults
|
||||
concurrent_skipping: 'same_content_newer'
|
||||
skip_after_successful_duplicate: 'true'
|
||||
cancel_others: 'true'
|
||||
paths: '["Cargo.toml", "Cargo.lock", "easytier/**", "easytier-gui/**", "tauri-plugin-vpnservice/**", ".github/workflows/mobile.yml", ".github/workflows/install_rust.sh"]'
|
||||
build-mobile:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- TARGET: android
|
||||
OS: ubuntu-22.04
|
||||
ARTIFACT_NAME: android
|
||||
runs-on: ${{ matrix.OS }}
|
||||
env:
|
||||
NAME: easytier
|
||||
TARGET: ${{ matrix.TARGET }}
|
||||
OS: ${{ matrix.OS }}
|
||||
OSS_BUCKET: ${{ secrets.ALIYUN_OSS_BUCKET }}
|
||||
needs: pre_job
|
||||
if: needs.pre_job.outputs.should_skip != 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
# jobs:
|
||||
# pre_job:
|
||||
# # continue-on-error: true # Uncomment once integration is finished
|
||||
# runs-on: ubuntu-latest
|
||||
# # Map a step output to a job output
|
||||
# outputs:
|
||||
# should_skip: ${{ steps.skip_check.outputs.should_skip == 'true' && !startsWith(github.ref_name, 'releases/') }}
|
||||
# steps:
|
||||
# - id: skip_check
|
||||
# uses: fkirc/skip-duplicate-actions@v5
|
||||
# with:
|
||||
# # All of these options are optional, so you can remove them if you are happy with the defaults
|
||||
# concurrent_skipping: 'same_content_newer'
|
||||
# skip_after_successful_duplicate: 'true'
|
||||
# cancel_others: 'true'
|
||||
# paths: '["Cargo.toml", "Cargo.lock", "easytier/**", "easytier-gui/**", "tauri-plugin-vpnservice/**", ".github/workflows/mobile.yml", ".github/workflows/install_rust.sh"]'
|
||||
# build-mobile:
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# include:
|
||||
# - TARGET: android
|
||||
# OS: ubuntu-22.04
|
||||
# ARTIFACT_NAME: android
|
||||
# runs-on: ${{ matrix.OS }}
|
||||
# env:
|
||||
# NAME: easytier
|
||||
# TARGET: ${{ matrix.TARGET }}
|
||||
# OS: ${{ matrix.OS }}
|
||||
# OSS_BUCKET: ${{ secrets.ALIYUN_OSS_BUCKET }}
|
||||
# needs: pre_job
|
||||
# if: needs.pre_job.outputs.should_skip != 'true'
|
||||
# steps:
|
||||
# - uses: actions/checkout@v3
|
||||
|
||||
- name: Set current ref as env variable
|
||||
run: |
|
||||
echo "GIT_DESC=$(git log -1 --format=%cd.%h --date=format:%Y-%m-%d_%H:%M:%S)" >> $GITHUB_ENV
|
||||
# - name: Set current ref as env variable
|
||||
# run: |
|
||||
# echo "GIT_DESC=$(git log -1 --format=%cd.%h --date=format:%Y-%m-%d_%H:%M:%S)" >> $GITHUB_ENV
|
||||
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: 'oracle'
|
||||
java-version: '20'
|
||||
# - uses: actions/setup-java@v4
|
||||
# with:
|
||||
# distribution: 'oracle'
|
||||
# java-version: '20'
|
||||
|
||||
- name: Setup Android SDK
|
||||
uses: android-actions/setup-android@v3
|
||||
with:
|
||||
cmdline-tools-version: 11076708
|
||||
packages: 'build-tools;34.0.0 ndk;26.0.10792818 tools platform-tools platforms;android-34 '
|
||||
# - name: Setup Android SDK
|
||||
# uses: android-actions/setup-android@v3
|
||||
# with:
|
||||
# cmdline-tools-version: 11076708
|
||||
# packages: 'build-tools;34.0.0 ndk;26.0.10792818 tools platform-tools platforms;android-34 '
|
||||
|
||||
- name: Setup Android Environment
|
||||
run: |
|
||||
echo "$ANDROID_HOME/platform-tools" >> $GITHUB_PATH
|
||||
echo "$ANDROID_HOME/ndk/26.0.10792818/toolchains/llvm/prebuilt/linux-x86_64/bin" >> $GITHUB_PATH
|
||||
echo "NDK_HOME=$ANDROID_HOME/ndk/26.0.10792818/" > $GITHUB_ENV
|
||||
# - name: Setup Android Environment
|
||||
# run: |
|
||||
# echo "$ANDROID_HOME/platform-tools" >> $GITHUB_PATH
|
||||
# echo "$ANDROID_HOME/ndk/26.0.10792818/toolchains/llvm/prebuilt/linux-x86_64/bin" >> $GITHUB_PATH
|
||||
# echo "NDK_HOME=$ANDROID_HOME/ndk/26.0.10792818/" > $GITHUB_ENV
|
||||
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 21
|
||||
# - uses: actions/setup-node@v4
|
||||
# with:
|
||||
# node-version: 21
|
||||
|
||||
- name: Install pnpm
|
||||
uses: pnpm/action-setup@v3
|
||||
with:
|
||||
version: 9
|
||||
run_install: false
|
||||
# - name: Install pnpm
|
||||
# uses: pnpm/action-setup@v3
|
||||
# with:
|
||||
# version: 9
|
||||
# run_install: false
|
||||
|
||||
- name: Get pnpm store directory
|
||||
shell: bash
|
||||
run: |
|
||||
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
|
||||
# - name: Get pnpm store directory
|
||||
# shell: bash
|
||||
# run: |
|
||||
# echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
|
||||
|
||||
- name: Setup pnpm cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: ${{ env.STORE_PATH }}
|
||||
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pnpm-store-
|
||||
# - name: Setup pnpm cache
|
||||
# uses: actions/cache@v4
|
||||
# with:
|
||||
# path: ${{ env.STORE_PATH }}
|
||||
# key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
|
||||
# restore-keys: |
|
||||
# ${{ runner.os }}-pnpm-store-
|
||||
|
||||
- name: Install frontend dependencies
|
||||
run: |
|
||||
pnpm -r install
|
||||
pnpm -r build
|
||||
# - name: Install frontend dependencies
|
||||
# run: |
|
||||
# pnpm -r install
|
||||
# pnpm -r build
|
||||
|
||||
- name: Cargo cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.cargo
|
||||
./target
|
||||
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
||||
# - name: Cargo cache
|
||||
# uses: actions/cache@v4
|
||||
# with:
|
||||
# path: |
|
||||
# ~/.cargo
|
||||
# ./target
|
||||
# key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
||||
|
||||
- name: Install rust target
|
||||
run: |
|
||||
bash ./.github/workflows/install_rust.sh
|
||||
rustup target add aarch64-linux-android
|
||||
rustup target add armv7-linux-androideabi
|
||||
rustup target add i686-linux-android
|
||||
rustup target add x86_64-linux-android
|
||||
# - name: Install rust target
|
||||
# run: |
|
||||
# bash ./.github/workflows/install_rust.sh
|
||||
# rustup target add aarch64-linux-android
|
||||
# rustup target add armv7-linux-androideabi
|
||||
# rustup target add i686-linux-android
|
||||
# rustup target add x86_64-linux-android
|
||||
|
||||
- name: Setup protoc
|
||||
uses: arduino/setup-protoc@v2
|
||||
with:
|
||||
# GitHub repo token to use to avoid rate limiter
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
# - name: Setup protoc
|
||||
# uses: arduino/setup-protoc@v2
|
||||
# with:
|
||||
# # GitHub repo token to use to avoid rate limiter
|
||||
# repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Build Android
|
||||
run: |
|
||||
cd easytier-gui
|
||||
pnpm tauri android build
|
||||
# - name: Build Android
|
||||
# run: |
|
||||
# cd easytier-gui
|
||||
# pnpm tauri android build
|
||||
|
||||
- name: Compress
|
||||
run: |
|
||||
mkdir -p ./artifacts/objects/
|
||||
mv easytier-gui/src-tauri/gen/android/app/build/outputs/apk/universal/release/app-universal-release.apk ./artifacts/objects/
|
||||
# - name: Compress
|
||||
# run: |
|
||||
# mkdir -p ./artifacts/objects/
|
||||
# mv easytier-gui/src-tauri/gen/android/app/build/outputs/apk/universal/release/app-universal-release.apk ./artifacts/objects/
|
||||
|
||||
if [[ $GITHUB_REF_TYPE =~ ^tag$ ]]; then
|
||||
TAG=$GITHUB_REF_NAME
|
||||
else
|
||||
TAG=$GITHUB_SHA
|
||||
fi
|
||||
# if [[ $GITHUB_REF_TYPE =~ ^tag$ ]]; then
|
||||
# TAG=$GITHUB_REF_NAME
|
||||
# else
|
||||
# TAG=$GITHUB_SHA
|
||||
# fi
|
||||
|
||||
mv ./artifacts/objects/* ./artifacts
|
||||
rm -rf ./artifacts/objects/
|
||||
# mv ./artifacts/objects/* ./artifacts
|
||||
# rm -rf ./artifacts/objects/
|
||||
|
||||
- name: Archive artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: easytier-gui-${{ matrix.ARTIFACT_NAME }}
|
||||
path: |
|
||||
./artifacts/*
|
||||
# - name: Archive artifact
|
||||
# uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: easytier-gui-${{ matrix.ARTIFACT_NAME }}
|
||||
# path: |
|
||||
# ./artifacts/*
|
||||
|
||||
- name: Upload OSS
|
||||
if: ${{ env.OSS_BUCKET != '' }}
|
||||
uses: Menci/upload-to-oss@main
|
||||
with:
|
||||
access-key-id: ${{ secrets.ALIYUN_OSS_ACCESS_ID }}
|
||||
access-key-secret: ${{ secrets.ALIYUN_OSS_ACCESS_KEY }}
|
||||
endpoint: ${{ secrets.ALIYUN_OSS_ENDPOINT }}
|
||||
bucket: ${{ secrets.ALIYUN_OSS_BUCKET }}
|
||||
local-path: ./artifacts/
|
||||
remote-path: /easytier-releases/${{env.GIT_DESC}}/easytier-gui-${{ matrix.ARTIFACT_NAME }}
|
||||
no-delete-remote-files: true
|
||||
retry: 5
|
||||
mobile-result:
|
||||
if: needs.pre_job.outputs.should_skip != 'true' && always()
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- pre_job
|
||||
- build-mobile
|
||||
steps:
|
||||
- name: Mark result as failed
|
||||
if: needs.build-mobile.result != 'success'
|
||||
run: exit 1
|
||||
# - name: Upload OSS
|
||||
# if: ${{ env.OSS_BUCKET != '' }}
|
||||
# uses: Menci/upload-to-oss@main
|
||||
# with:
|
||||
# access-key-id: ${{ secrets.ALIYUN_OSS_ACCESS_ID }}
|
||||
# access-key-secret: ${{ secrets.ALIYUN_OSS_ACCESS_KEY }}
|
||||
# endpoint: ${{ secrets.ALIYUN_OSS_ENDPOINT }}
|
||||
# bucket: ${{ secrets.ALIYUN_OSS_BUCKET }}
|
||||
# local-path: ./artifacts/
|
||||
# remote-path: /easytier-releases/${{env.GIT_DESC}}/easytier-gui-${{ matrix.ARTIFACT_NAME }}
|
||||
# no-delete-remote-files: true
|
||||
# retry: 5
|
||||
# mobile-result:
|
||||
# if: needs.pre_job.outputs.should_skip != 'true' && always()
|
||||
# runs-on: ubuntu-latest
|
||||
# needs:
|
||||
# - pre_job
|
||||
# - build-mobile
|
||||
# steps:
|
||||
# - name: Mark result as failed
|
||||
# if: needs.build-mobile.result != 'success'
|
||||
# run: exit 1
|
||||
|
||||
@@ -8,7 +8,7 @@ repository = "https://github.com/EasyTier/EasyTier"
|
||||
authors = ["kkrainbow"]
|
||||
keywords = ["vpn", "p2p", "network", "easytier"]
|
||||
categories = ["network-programming", "command-line-utilities"]
|
||||
rust-version = "1.77.0"
|
||||
rust-version = "1.82.0"
|
||||
license-file = "LICENSE"
|
||||
readme = "README.md"
|
||||
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@ edition = "2021"
|
||||
authors = ["kkrainbow"]
|
||||
keywords = ["vpn", "p2p", "network", "easytier"]
|
||||
categories = ["network-programming", "command-line-utilities"]
|
||||
rust-version = "1.77.0"
|
||||
rust-version = "1.82.0"
|
||||
license-file = "LICENSE"
|
||||
readme = "README.md"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user