mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-15 18:03:30 +00:00
102 lines
3.0 KiB
YAML
102 lines
3.0 KiB
YAML
#
|
|
# This is free software, lisence use MIT.
|
|
#
|
|
# Copyright (C) 2019 P3TERX <https://p3terx.com>
|
|
# Copyright (C) 2019 KFERMercer <KFER.Mercer@gmail.com>
|
|
#
|
|
# <https://github.com/KFERMercer/OpenWrt-CI>
|
|
#
|
|
|
|
name: OpenWrt-CI
|
|
|
|
on:
|
|
schedule:
|
|
- cron: 0 20 * * *
|
|
push:
|
|
tags:
|
|
- '*'
|
|
|
|
jobs:
|
|
|
|
build_openwrt:
|
|
|
|
name: Build OpenWrt and release
|
|
runs-on: ubuntu-18.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
ref: master
|
|
|
|
- name: Space cleanup
|
|
env:
|
|
DEBIAN_FRONTEND: noninteractive
|
|
run: |
|
|
docker rmi `docker images -q`
|
|
sudo rm -rf /usr/share/dotnet /etc/mysql /etc/php /etc/apt/sources.list.d
|
|
sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* mysql* php*
|
|
sudo -E apt-get update
|
|
sudo -E apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs gcc-multilib g++-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler antlr3 gperf
|
|
sudo -E apt-get -y autoremove --purge
|
|
sudo -E apt-get clean
|
|
|
|
df -h
|
|
|
|
- name: Update feeds
|
|
run: |
|
|
sed -i 's/\"#src-git\"/\"src-git\"/g' ./feeds.conf.default
|
|
./scripts/feeds update -a
|
|
./scripts/feeds install -a
|
|
|
|
- name: Generate configuration file
|
|
run: make defconfig
|
|
|
|
- name: Make download
|
|
run: |
|
|
make download -j8
|
|
find dl -size -1024c -exec rm -f {} \;
|
|
|
|
- name: Compile firmware
|
|
run: |
|
|
make -j$(nproc) || make -j1 V=s
|
|
echo "======================="
|
|
echo "Space usage:"
|
|
echo "======================="
|
|
df -h
|
|
echo "======================="
|
|
du -h --max-depth=1 ./ --exclude=build_dir --exclude=bin
|
|
du -h --max-depth=1 ./build_dir
|
|
du -h --max-depth=1 ./bin
|
|
|
|
- name: Prepare artifact
|
|
run: find ./bin/targets/ -type d -name "packages" | xargs rm -rf {}
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@master
|
|
with:
|
|
name: OpenWrt_firmware
|
|
path: ./bin/targets/
|
|
|
|
- name: Create release
|
|
if: github.event == 'push'
|
|
id: create_release
|
|
uses: actions/create-release@v1.0.1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
tag_name: ${{ github.ref }}
|
|
release_name: ${{ github.ref }}
|
|
draft: false
|
|
prerelease: false
|
|
|
|
- name: Upload release asset
|
|
if: github.event == 'push'
|
|
id: upload-release-asset
|
|
uses: actions/upload-release-asset@v1.0.2
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
asset_path: ./bin/targets/*/*/
|