Skip to content

GL.iNet_GL-MT6000_lede-精简版 #10

GL.iNet_GL-MT6000_lede-精简版

GL.iNet_GL-MT6000_lede-精简版 #10

Workflow file for this run

#=================================================
# https://github.com/P3TERX/Actions-OpenWrt
# Description: Build OpenWrt using GitHub Actions
# Lisence: MIT
# Author: P3TERX
# Blog: https://p3terx.com
#=================================================
name: GL.iNet_GL-MT6000_lede-精简版
on:
repository_dispatch:
workflow_dispatch:
#schedule:
#- cron: 0 17 * * *
# watch:
# types: started
env:
REPO_URL: git@github.com:DHDAXCW/GL.iNet_GL-MT6000.git
REPO_BRANCH: master
CONFIG_FILE: configs/lean/lean-slim.config
DIY_SH: scripts/lean.sh
KMODS_IN_FIRMWARE: true
UPLOAD_RELEASE: true
TZ: Asia/Shanghai
jobs:
Build:
runs-on: self-hosted
outputs:
OPENWRTROOT: ${{ steps.update.outputs.OPENWRTROOT }}
PLATFORM: ${{ steps.compile.outputs.PLATFORM }}
TARGET: ${{ steps.compile.outputs.TARGET }}
SUBTARGET: ${{ steps.compile.outputs.SUBTARGET }}
FIRMWARE: ${{ steps.compile.outputs.FIRMWARE }}
GENERATE_STATUS: ${{ steps.generate.outputs.GENERATE_STATUS }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Initialization Environment
env:
DEBIAN_FRONTEND: noninteractive
run: |
echo -e "Total CPU cores\t: $(nproc)"
cat /proc/cpuinfo | grep 'model name'
free -h
uname -a
[ -f /proc/version ] && cat /proc/version
[ -f /etc/issue.net ] && cat /etc/issue.net
[ -f /etc/issue ] && cat /etc/issue
ulimit -a
- name: Clone Source Code
run: |
df -hT $PWD
git clone $REPO_URL -b $REPO_BRANCH openwrt
cd openwrt
- name: Update Feeds
id: update
run: |
cd openwrt
echo "OPENWRTROOT=$PWD" >> $GITHUB_ENV
echo "OPENWRTROOT=$PWD" >> $GITHUB_OUTPUT
mkdir customfeeds
git clone --depth=1 https://github.com/coolsnowwolf/packages customfeeds/packages
git clone --depth=1 https://github.com/coolsnowwolf/luci customfeeds/luci
chmod +x ../scripts/*.sh
../scripts/hook-feeds.sh
- name: Install Feeds
run: |
cd $OPENWRTROOT
./scripts/feeds install -a
- name: Load Custom Configuration
run: |
[ -e files ] && mv files $OPENWRTROOT/files
[ -e $CONFIG_FILE ] && mv $CONFIG_FILE $OPENWRTROOT/.config
chmod +x scripts/*.sh
cd $OPENWRTROOT
../$DIY_SH
../scripts/preset-clash-core.sh arm64
../scripts/preset-terminal-tools.sh
make defconfig
- name: Download Package
id: package
run: |
cd $OPENWRTROOT
cat .config
make download -j8
find dl -size -1024c -exec ls -l {} \;
find dl -size -1024c -exec rm -f {} \;
- name: Compile Packages
id: compile
run: |
cd $OPENWRTROOT
echo -e "$(nproc) thread compile"
make tools/compile -j$(nproc) || make tools/compile -j$(nproc)
make toolchain/compile -j$(nproc) || make toolchain/compile -j$(nproc)
make target/compile -j$(nproc) || make target/compile -j$(nproc) IGNORE_ERRORS=1
make diffconfig
make package/compile -j$(nproc) IGNORE_ERRORS=1 || make package/compile -j$(nproc) IGNORE_ERRORS=1
make package/index
cd $OPENWRTROOT/bin/packages/*
PLATFORM=$(basename `pwd`)
echo "PLATFORM=$PLATFORM" >> $GITHUB_ENV
echo "PLATFORM=$PLATFORM" >> $GITHUB_OUTPUT
cd $OPENWRTROOT/bin/targets/*
TARGET=$(basename `pwd`)
echo "TARGET=$TARGET" >> $GITHUB_ENV
echo "TARGET=$TARGET" >> $GITHUB_OUTPUT
cd *
SUBTARGET=$(basename `pwd`)
echo "SUBTARGET=$SUBTARGET" >> $GITHUB_ENV
echo "SUBTARGET=$SUBTARGET" >> $GITHUB_OUTPUT
echo "FIRMWARE=$PWD" >> $GITHUB_ENV
echo "FIRMWARE=$PWD" >> $GITHUB_OUTPUT
echo "COMPILE_STATUS=success" >> $GITHUB_OUTPUT
- name: Generate Firmware
if: steps.compile.outputs.COMPILE_STATUS == 'success'
id: generate
run: |
cd $OPENWRTROOT
make package/install -j$(nproc) || make package/install -j1 V=s
make target/install -j$(nproc) || make target/install -j1 V=s
pushd bin/targets/mediatek/filogic
rm -rf openwrt-mediatek-filogic-glinet_gl-mt6000.manifest
rm -rf openwrt-mediatek-filogic-glinet_gl-mt6000-bl31-uboot.fip
tar -zcvf $(date +"%Y.%m.%d")-slim-openwrtglinet_gl-mt6000.tar.gz openwrt-mediatek-filogic-glinet_gl-mt6000-squashfs-sysupgrade.bin
rm -rf *.bin
popd
make checksum
echo "GENERATE_STATUS=success" >> $GITHUB_OUTPUT
- name: Generate release tag
id: tag
if: env.UPLOAD_RELEASE == 'true' && !cancelled()
run: |
echo "release_tag=$(date +"%Y.%m.%d")-Lean1" >> $GITHUB_OUTPUT
echo "release_date=$(date +"%Y.%m.%d")" >> $GITHUB_OUTPUT
touch release.txt
echo "后台地址:192.168.11.1"
echo "status=success" >> $GITHUB_OUTPUT
- name: Upload firmware to release
uses: softprops/action-gh-release@v1
if: steps.tag.outputs.status == 'success' && !cancelled()
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
name: ${{ steps.tag.outputs.release_date }} GL.iNet_GL-MT6000_lede.linux_5.15_固件下载
tag_name: ${{ steps.tag.outputs.release_tag }}
body_path: release.txt
files: ${{ env.FIRMWARE }}/*
- name: Delete workflow runs
uses: Mattraks/delete-workflow-runs@v2
with:
retain_days: 1
keep_minimum_runs: 1
- name: Remove old Releases
uses: dev-drprasad/delete-older-releases@v0.2.1
if: env.UPLOAD_RELEASE == 'true' && !cancelled()
with:
keep_latest: 20
delete_tags: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Delete Artifacts
uses: geekyeggo/delete-artifact@v2
with:
name: |
bin-archive