small-packages/luci-app-easytier/.github/workflows/build.yml
2026-05-10 09:48:30 +08:00

145 lines
4.3 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: Build-OpenWrt-EasyTier
on:
#push:
workflow_dispatch:
inputs:
tag:
description: '请填写发布Releases的版本号留空不发布'
required: false
default: ''
text:
description: '请填写发布的说明'
required: false
default: ''
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
TAG: "${{ github.event.inputs.tag }}"
TZ: Asia/Shanghai
permissions:
contents: write
jobs:
build:
name: Build ${{ matrix.arch }}-${{ matrix.sdk }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
arch:
- aarch64_cortex-a53
- aarch64_cortex-a72
- aarch64_generic
- arm_arm1176jzf-s_vfp
- arm_arm926ej-s
- arm_cortex-a15_neon-vfpv4
- arm_cortex-a5_vfpv4
- arm_cortex-a7
- arm_cortex-a7_neon-vfpv4
- arm_cortex-a8_vfpv3
- arm_cortex-a9
- arm_cortex-a9_neon
- arm_cortex-a9_vfpv3-d16
- arm_fa526
#- arm_mpcore
- arm_xscale
- mips_24kc
#- mips_4kec
- mips_mips32
- mipsel_24kc
- mipsel_24kc_24kf
- mipsel_74kc
- mipsel_mips32
- x86_64
sdk:
- 22.03.7
- SNAPSHOT
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Cache OpenWrt SDK
uses: actions/cache@v5
with:
path: |
/opt/openwrt-sdk-${{ matrix.arch }}-${{ matrix.sdk }}
dl
key: sdk-${{ matrix.arch }}-${{ matrix.sdk }}
- name: Create i18n uci-defaults file
run: |
mkdir -p luci-app-easytier/root/etc/uci-defaults
cat > luci-app-easytier/root/etc/uci-defaults/luci-i18n-easytier-zh-cn << 'EOF'
#!/bin/sh
uci -q batch << EOI
set luci.languages.zh_cn='简体中文 (Simplified Chinese)'
commit luci
EOI
rm -f /tmp/luci-indexcache /tmp/luci-modulecache/*
exit 0
EOF
chmod +x luci-app-easytier/root/etc/uci-defaults/luci-i18n-easytier-zh-cn
- name: Building packages
uses: openwrt/gh-action-sdk@main
env:
ARCH: ${{ matrix.arch }}-${{ matrix.sdk }}
FEEDNAME: packages_ci
PACKAGES: easytier easytier-noweb luci-app-easytier
#NO_DEFAULT_FEEDS: 1
NO_REFRESH_CHECK: 1
NO_SHFMT_CHECK: 1
MAKEFLAGS: -j$(nproc)
V: s
- name: Upload artifacts
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.arch }}-${{ matrix.sdk }}
path: bin/packages/${{ matrix.arch }}/packages_ci/*
release:
name: Publish Release
runs-on: ubuntu-latest
needs: build
if: ${{ github.event.inputs.tag != '' }}
steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Prepare release info
run: |
sudo timedatectl set-timezone "Asia/Shanghai"
mkdir -p release
for dir in artifacts/*; do
name=$(basename "$dir")
zip -j "release/EasyTier-${{ env.TAG }}-${name}.zip" "$dir"/*.ipk "$dir"/*.apk 2>/dev/null || true
done
echo "build_time=$(TZ=UTC-8 date '+%Y年%m月%d日%H:%M:%S' | jq -sRr @uri)" >> $GITHUB_ENV
- name: Release
uses: softprops/action-gh-release@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
body: |
> ### ![](https://img.shields.io/badge/%E7%BC%96%E8%AF%91%E6%97%B6%E9%97%B4-${{ env.build_time }}-easytier?logo=github&labelColor=%E9%A1%BB)![](https://img.shields.io/github/downloads/${{ github.repository }}/${{ env.TAG }}/total?label=%E4%B8%8B%E8%BD%BD%E6%AC%A1%E6%95%B0&logo=github)
- 其中 **`22.03.7`** 里面是ipk安装包 **`SNAPSHOT`** 里面是apk安装包
- **`*.apk` 是OpenWrt新版的APK包** 对于apk包跳过证书命令
`apk add --allow-untrusted luci-app-easytier.apk`
${{ github.event.inputs.text }}
tag_name: ${{ env.TAG }}
files: release/*.zip