redpill-tool-chain/.github/workflows/test.yml
2022-03-04 15:40:42 +08:00

98 lines
3.4 KiB
YAML

name: 测试构建
on:
push:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
name: 编译 "${{matrix.platform}} ${{matrix.version}}"
strategy:
fail-fast: false
matrix:
include:
# 两行一组,删除不需要的版本
- platform: bromolow
version: 6.2.4-25556
- platform: bromolow
version: 7.0-41222
- platform: bromolow
version: 7.0.1-42218
- platform: apollolake
version: 6.2.4-25556
- platform: apollolake
version: 7.0-41890
- platform: apollolake
version: 7.0.1-42218
- platform: broadwell
version: 7.0.1-42218
- platform: broadwellnk
version: 7.0.1-42218
- platform: geminilake
version: 7.0.1-42218
steps:
- name: 检出项目文件
uses: actions/checkout@v2
- name: 缓存加速
uses: actions/cache@v2
with:
path: |
cache/*.pat
docker/downloads/*.txz
key: ${{matrix.platform}}-${{matrix.version}}-${{ hashFiles('global_config.json') }}
- name: 准备构建环境
run: |
./redpill_tool_chain.sh build ${{matrix.platform}}-${{matrix.version}}
- name: 配置引导镜像
run: |
cp sample_user_config.json ${{matrix.platform}}_user_config.json
# 调整VID和PID
sed -i -e 's\0x0001\0x0002\g' -e 's\0x46f4\0x0002\g' ${{matrix.platform}}_user_config.json
# 调整SN和MAC 最好使用 actions secrets 引入
sed -i -e 's\1234XXX123\0123456789\g' -e 's\XXYYXXYYXXYY\00AAAAAAAAAA\g' ${{matrix.platform}}_user_config.json
# 添加第二张网卡mac并设置网卡数量
sed -i -e 's/00AAAAAAAAAA"/&,\n\t"mac2": "00BBBBBBBBBB",\n\t"netif_num": 2/' ${{matrix.platform}}_user_config.json
# 调整synoinfo
sed -i -e 's/"synoinfo": {},/"synoinfo": {\n\t"maxlanport": "2"\n },/' ${{matrix.platform}}_user_config.json
# 添加扩展驱动
./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-acpid/rpext-index.json
./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-virtio/rpext-index.json
if [ "7.0.1-42218"="${{matrix.version}}" ];then
./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-misc/rpext-index.json
fi
if [ "geminilake"="${{matrix.platform}}" ];then
./redpill_tool_chain.sh add https://github.com/jumkey/redpill-load/raw/develop/redpill-dtb/rpext-index.json
echo '!!!Create your own device tree binary.!!!'
echo 'see https://github.com/jumkey/redpill-load/blob/develop/redpill-dtb/README.md'
fi
- name: 编译引导镜像
run: ./redpill_tool_chain.sh auto ${{matrix.platform}}-${{matrix.version}}
- name: 上传引导镜像到 github actions
uses: actions/upload-artifact@v2
with:
name: dsm-${{matrix.platform}}-${{matrix.version}}
path: images/redpill-DS[39]*.img
if-no-files-found: error
- name: 删除旧的工作流
uses: Mattraks/delete-workflow-runs@v2
with:
token: ${{ github.token }}
repository: ${{ github.repository }}
retain_days: 3
keep_minimum_runs: 6