Build BCM2711 Minimal OpenWrt-23.05-snapshot #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build BCM2711 Minimal OpenWrt-23.05-snapshot | |
on: | |
repository_dispatch: | |
types: [openwrt] | |
workflow_dispatch: | |
schedule: | |
- cron: 0 9 * * 1-5 | |
env: | |
BUILD_CONFIG_FILE: bcm27xx_bcm2711_23_05_snapshot_minimal | |
TARGET: bcm27xx | |
SUBTARGET: bcm2711 | |
OPENWRT_VERSION: openwrt-23.05 | |
TYPE: minimal | |
jobs: | |
Build: | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
ref: "main" | |
fetch-depth: 2 | |
- name: Setup Environment | |
run: | | |
sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /usr/local/lib/android /opt/ghc | |
sudo -E apt-get -qq update | |
sudo -E apt-get -qq install $(curl -fsSL git.io/depends-ubuntu-2004) tree | |
sudo -E apt-get -qq install jq | |
sudo -E apt-get -qq autoremove --purge | |
sudo -E apt-get -qq clean | |
sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime | |
git config --global user.name "I'm a Code Bot" | |
git config --global user.email "baozhu.zuo@gmail.com" | |
pip3 install -r requirements.txt | |
- name: Create | |
run: | | |
python3 ./scripts/build.py --config configs/${{ env.BUILD_CONFIG_FILE }} --action create | |
- name: Feeds | |
run: | | |
python3 ./scripts/build.py --config configs/${{ env.BUILD_CONFIG_FILE }} --action feeds | |
- name: Config | |
run: | | |
python3 ./scripts/build.py --config configs/${{ env.BUILD_CONFIG_FILE }} --action config | |
- name: Download | |
run: | | |
python3 ./scripts/build.py --config configs/${{ env.BUILD_CONFIG_FILE }} --action download | |
- name: Compile | |
run: | | |
python3 ./scripts/build.py --config configs/${{ env.BUILD_CONFIG_FILE }} --action compile | |
- name: Install | |
run: | | |
python3 ./scripts/build.py --config configs/${{ env.BUILD_CONFIG_FILE }} --action install | |
- name: Upload Image | |
uses: actions/upload-artifact@main | |
with: | |
name: ${{ env.BUILD_CONFIG_FILE }} | |
path: | | |
./build/${{env.OPENWRT_VERSION}}/bin/targets/${{ env.TARGET }}/${{ env.SUBTARGET }}/ | |
retention-days: 7 | |
Upload: | |
needs: [Build] | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
ref: "main" | |
fetch-depth: 2 | |
- name: Setup Environment | |
run: | | |
curl https://rclone.org/install.sh | sudo bash | |
- name: Download Bin Folder | |
uses: actions/download-artifact@main | |
with: | |
name: ${{ env.BUILD_CONFIG_FILE }} | |
path: ./build/bin | |
- name: Upload Image to OneDrive | |
env: | |
RCLONE_PACKAGE: ${{ secrets.ONEDRIVE_NAME }} | |
run: | | |
mkdir -p ~/.config/rclone/ | |
cat << EOF > /tmp/rclone.de | |
${{ secrets.ONEDRIVE_CONF }} | |
EOF | |
base64 -d /tmp/rclone.de > ~/.config/rclone/rclone.conf | |
echo "# Rclone Packages Upload Rule" >> /tmp/upload-rule.txt | |
echo "- openwrt*" >> /tmp/upload-rule.txt | |
echo "- sha256sums" >> /tmp/upload-rule.txt | |
echo "- packages-server.zip" >> /tmp/upload-rule.txt | |
echo "- *.buildinfo" >> /tmp/upload-rule.txt | |
echo "+ openwrt-keyring*" >> /tmp/upload-rule.txt | |
rclone mkdir $RCLONE_PACKAGE:Openwrt/${{env.OPENWRT_VERSION}}/$(date +"%Y-%m-%d")/${{ env.TARGET }}/${{ env.SUBTARGET }}/${{ env.TYPE }} | |
rclone copy ./build/bin $RCLONE_PACKAGE:Openwrt/${{env.OPENWRT_VERSION}}/$(date +"%Y-%m-%d")/${{ env.TARGET }}/${{ env.SUBTARGET }}/${{ env.TYPE }} | |
echo "::notice file=Firmware-OneDrive::Download Link: https://1drv.ms/u/s!AqG2uRmVUhlSh0NHMLMmQKLyASvi?e=mup3cd" | |